Class SipRequestUtils

java.lang.Object
io.github.lunasaw.sip.common.utils.SipRequestUtils

public class SipRequestUtils extends Object
Author:
luna
  • Constructor Details

    • SipRequestUtils

      public SipRequestUtils()
  • Method Details

    • createRequest

      public static javax.sip.message.Request createRequest(javax.sip.address.URI requestUri, String method, javax.sip.header.CallIdHeader callId, javax.sip.header.CSeqHeader cSeq, javax.sip.header.FromHeader from, javax.sip.header.ToHeader to, List<javax.sip.header.ViaHeader> via, javax.sip.header.MaxForwardsHeader maxForwards, javax.sip.header.ContentTypeHeader contentType, Object content)
      Parameters:
      requestUri - requestURI – 此消息的请求 URI 值的新 URI 对象。
      method - method – 此消息的方法值的新字符串。
      callId - callId – 此消息的 callId 值的新 CallIdHeader 对象。
      cSeq - cSeq – 此消息的 cSeq 值的新 CSeqHeader 对象。
      from - from – 此消息的 from 值的新 FromHeader 对象。
      to - to – 此消息的 to 值的新 ToHeader 对象。
      via - via – 此消息的 ViaHeader 的新列表对象。
      maxForwards - contentType – 此消息的内容类型值的新内容类型标头对象。
      contentType - 响应类型 – 此消息的正文内容值的新对象。
      content - 内容
    • setRequestHeader

      public static void setRequestHeader(javax.sip.message.Request request, List<javax.sip.header.Header> headers)
    • createViaHeader

      public static javax.sip.header.ViaHeader createViaHeader(String ip, int port, String transport, String branch)
      host – 主机的新字符串值。 port – 端口的新整数值。 transport – tcp / udp。 branch – 代理服务器的新字符串值。
      Returns:
      ViaHeader
    • createViaHeader

      public static List<javax.sip.header.ViaHeader> createViaHeader(javax.sip.header.ViaHeader... viaHeaders)
    • createMaxForwardsHeader

      public static javax.sip.header.MaxForwardsHeader createMaxForwardsHeader()
      70 maxForwards – 最大转发的新整数值。
    • createMaxForwardsHeader

      public static javax.sip.header.MaxForwardsHeader createMaxForwardsHeader(int maxForwards)
      Parameters:
      maxForwards - maxForwards – 最大转发的新整数值。
    • createCallIdHeader

      public static javax.sip.header.CallIdHeader createCallIdHeader(String callId)
    • getNewCallId

      public static String getNewCallId()
    • getNewCallIdHeader

      public static javax.sip.header.CallIdHeader getNewCallIdHeader()
    • getNewCallIdHeader

      public static javax.sip.header.CallIdHeader getNewCallIdHeader(String ip, String transport)
    • createSipUri

      public static javax.sip.address.SipURI createSipUri(String user, String host)
      Parameters:
      user - sip用户
      host - 主机地址 ip:port
      Returns:
      SipURI
    • createAddress

      public static javax.sip.address.Address createAddress(String user, String host)
    • createAddress

      public static javax.sip.address.Address createAddress(javax.sip.address.SipURI sipUri)
    • createFromHeader

      public static javax.sip.header.FromHeader createFromHeader(String user, String host, String tag)
      Parameters:
      user - sip用户
      host - 主机地址 ip:port
      tag - 标签
      Returns:
      FromHeader
    • createToHeader

      public static javax.sip.header.ToHeader createToHeader(String user, String host, String tag)
      Parameters:
      user - sip用户
      host - 主机地址 ip:port
      tag - 标签
      Returns:
      FromHeader
    • createFromHeader

      public static javax.sip.header.FromHeader createFromHeader(javax.sip.address.Address address, String tag)
      根据新提供的地址和标记值创建新的 FromHeader。
      Parameters:
      address - – 地址的新地址对象。
      tag - – 标签的新字符串值。
      Returns:
      FromHeader
    • createToHeader

      public static javax.sip.header.ToHeader createToHeader(javax.sip.address.Address address, String tag)
      根据新提供的地址和标记值创建新的 ToHeader。
      Parameters:
      address - – 地址的新地址对象。
      tag - – 标签的新字符串值,此值可能为空。
      Returns:
      ToHeader
    • createCSeqHeader

      public static javax.sip.header.CSeqHeader createCSeqHeader(long sequenceNumber, String method)
      基于新提供的序列号和方法值创建新的 CSeqHeader。
      Parameters:
      sequenceNumber - – 序列号的新长整型值。
      method - – 方法的新字符串值。
    • createContentTypeHeader

      public static javax.sip.header.ContentTypeHeader createContentTypeHeader(String contentType, String contentSubType)
      基于新提供的内容类型和内容子类型值创建新的内容类型标头。
      Parameters:
      contentType - contentType – 新的字符串内容类型值。
      contentSubType - contentSubType – 新的字符串内容子类型值。
      Returns:
      ContentTypeHeader
    • createUserAgentHeader

      public static javax.sip.header.UserAgentHeader createUserAgentHeader()
    • createUserAgentHeader

      public static javax.sip.header.UserAgentHeader createUserAgentHeader(String... agent)
    • getNewFromTag

      public static String getNewFromTag()
    • getNewViaTag

      public static String getNewViaTag()
    • createContactHeader

      public static javax.sip.header.ContactHeader createContactHeader(String user, String host)
      联系人标头
      Parameters:
      user - 用户设备编号
      host - 主机地址 ip:port
      Returns:
      ContactHeader
    • createSubjectHeader

      public static javax.sip.header.SubjectHeader createSubjectHeader(String subject)
    • createExpiresHeader

      public static javax.sip.header.ExpiresHeader createExpiresHeader(int expires)
    • createEventHeader

      public static javax.sip.header.EventHeader createEventHeader(String eventType, String eventId)
    • createEventHeader

      public static javax.sip.header.EventHeader createEventHeader(String eventType)
    • createSubscriptionStateHeader

      public static javax.sip.header.SubscriptionStateHeader createSubscriptionStateHeader(String subscriptionState)
    • createAuthorizationHeader

      public static javax.sip.header.AuthorizationHeader createAuthorizationHeader(String scheme)
      基于新提供的方案值创建新的授权标头。
      Parameters:
      scheme - 方案的新字符串值。
      Returns:
      AuthorizationHeader
    • createAuthorizationHeader

      public static javax.sip.header.AuthorizationHeader createAuthorizationHeader(String scheme, String user, javax.sip.address.URI requestUri, String realm, String nonce, String qop, String cNonce, String response)
    • createHeader

      public static javax.sip.header.Header createHeader(String name, String value)
    • createResponse

      public static javax.sip.message.Response createResponse(int statusCode, javax.sip.message.Request request)
      创建响应
      Parameters:
      statusCode - 状态码
      request - 回复的请求
      Returns:
    • createResponse

      public static javax.sip.message.Response createResponse(int statusCode, javax.sip.header.CallIdHeader callId, javax.sip.header.CSeqHeader cSeq, javax.sip.header.FromHeader from, javax.sip.header.ToHeader to, List<javax.sip.header.ViaHeader> via, javax.sip.header.MaxForwardsHeader maxForwards, javax.sip.header.ContentTypeHeader contentType, Object content)
      Parameters:
      statusCode - statusCode – 状态码 Response
      callId - callId – 此消息的 callId 值的新 CallIdHeader 对象。
      cSeq - cSeq – 此消息的 cSeq 值的新 CSeqHeader 对象。
      from - from – 此消息的 from 值的新 FromHeader 对象。
      to - to – 此消息的 to 值的新 ToHeader 对象。
      via - via – 此消息的 ViaHeader 的新列表对象。
      maxForwards - contentType – 此消息的内容类型值的新内容类型标头对象。
      contentType - 响应类型 – 此消息的正文内容值的新对象。
      content - 内容
    • createResponse

      public static javax.sip.message.Response createResponse(int statusCode, javax.sip.message.Request request, List<javax.sip.header.Header> headers)
    • setResponseHeader

      public static void setResponseHeader(javax.sip.message.Response response, List<javax.sip.header.Header> headers)
    • createWWWAuthenticateHeader

      public static javax.sip.header.WWWAuthenticateHeader createWWWAuthenticateHeader(String scheme)
    • createWWWAuthenticateHeader

      public static javax.sip.header.WWWAuthenticateHeader createWWWAuthenticateHeader(String scheme, String realm, String nonce, String algorithm)
    • setContent

      public static void setContent(javax.sip.message.Request request, javax.sip.header.ContentTypeHeader contentType, Object content)
    • createSessionDescription

      public static javax.sdp.SessionDescription createSessionDescription(String sdp)