|
C++ SIP Stack
0.31
|
SIP 메시지 정보를 저장하는 클래스 더 자세히 ...
Public 멤버 함수 | |
| CSipMessage () | |
| ~CSipMessage () | |
| int | Parse (const char *pszText, int iTextLen) |
| SIP 헤더 문자열을 파싱하여 CSipMessage 클래스의 멤버 변수에 저장한다. | |
| int | ToString (char *pszText, int iTextSize) |
| SIP 메시지 문자열을 작성한다. | |
| bool | MakePacket () |
| 네트워크로 전송할 수 있는 SIP 메시지 문자열을 작성한다. | |
| void | Clear () |
| 멤버 변수를 초기화시킨다. | |
| bool | IsRequest () |
| SIP 요청 메시지인지 검사한다. | |
| bool | IsMethod (const char *pszMethod) |
| SIP 메소드가 입력한 메소드와 같은지 검사한다. | |
| bool | IsEqualCallId (CSipMessage *pclsMessage) |
| Call-ID 가 동일한지 검사한다. | |
| bool | IsEqualCallIdSeq (CSipMessage *pclsMessage) |
| Call-ID 와 CSeq 의 번호가 동일한지 검사한다. | |
| bool | Is100rel () |
| SIP 메시지에 100rel 헤더를 포함하고 있는가? | |
| bool | GetCallId (std::string &strCallId) |
| Call-ID 문자열을 가져온다. | |
| bool | AddIpPortToTopVia (const char *pszIp, int iPort, ESipTransport eTransport=E_SIP_UDP) |
| Top Via 헤더에 발신 IP 주소와 포트 번호를 추가한다. | |
| bool | AddVia (const char *pszIp, int iPort, const char *pszBranch=NULL, ESipTransport eTransport=E_SIP_UDP) |
| Via 헤더를 추가한다. | |
| bool | AddRoute (const char *pszIp, int iPort, ESipTransport eTransport=E_SIP_UDP) |
| Route 헤더를 추가한다. | |
| bool | AddRecordRoute (const char *pszIp, int iPort, ESipTransport eTransport=E_SIP_UDP) |
| RecordRoute 헤더를 추가한다. | |
| bool | AddHeader (const char *pszName, const char *pszValue) |
| SIP 헤더 자료구조에 이름과 값을 추가한다. | |
| bool | AddHeader (const char *pszName, int iValue) |
| SIP 헤더 자료구조에 이름과 값을 추가한다. | |
| bool | GetTopViaIpPort (std::string &strIp, int &iPort) |
| Top Via 헤더의 IP 주소와 포트 번호를 가져온다. | |
| bool | SetTopViaIpPort (const char *pszIp, int iPort, ESipTransport eTransport) |
| Top Via 헤더의 IP 주소와 포트 번호를 수정한다. | |
| bool | SetTopViaTransPort (ESipTransport eTransport, int iPort) |
| Top Via 헤더의 transport 문자열을 수정한다. | |
| bool | SetTopContactIpPort (const char *pszIp, int iPort, ESipTransport eTransport) |
| Top Contact 헤더의 IP 주소와 포트 번호를 수정한다. | |
| int | GetExpires () |
| Expires 헤더가 존재하면 Expires 헤더 값을 리턴하고 Contact 헤더에 expires 가 존재하면 Contact 헤더의 expires 를 리턴한다. | |
| CSipHeader * | GetHeader (const char *pszName) |
| 헤더 리스트를 검색하여서 입력된 이름과 일치하는 헤더를 리턴한다. | |
| CSipMessage * | CreateResponse (int iStatus, const char *pszToTag=NULL) |
| SIP 응답 메시지 객체를 생성한다. | |
| CSipMessage * | CreateResponseWithToTag (int iStatus) |
| To 헤더의 tag 가 존재하지 않는 경우 tag 를 생성하여서 저장한 SIP 응답 메시지 객체를 생성한다. | |
Public 속성 | |
| std::string | m_strSipMethod |
| SIP 메소드 ( INVITE, CANCEL, ACK, BYE, REFER 등 ) | |
| CSipUri | m_clsReqUri |
| SIP request URI. | |
| std::string | m_strSipVersion |
| SIP version ( SIP/2.0 ) | |
| int | m_iStatusCode |
| SIP 응답 코드. | |
| std::string | m_strReasonPhrase |
| SIP 응답 메시지 | |
| CSipFrom | m_clsFrom |
| SIP From 헤더 | |
| CSipFrom | m_clsTo |
| SIP To 헤더 | |
| SIP_VIA_LIST | m_clsViaList |
| SIP Via 헤더 리스트 | |
| SIP_FROM_LIST | m_clsContactList |
| SIP Contact 헤더 리스트 | |
| SIP_FROM_LIST | m_clsRecordRouteList |
| SIP Record-Route 헤더 리스트 | |
| SIP_FROM_LIST | m_clsRouteList |
| SIP Route 헤더 리스트 | |
| SIP_CREDENTIAL_LIST | m_clsAuthorizationList |
| SIP Authorization 헤더 리스트 | |
| SIP_CHALLENGE_LIST | m_clsWwwAuthenticateList |
| SIP Www-Authenticate 헤더 리스트 | |
| SIP_CREDENTIAL_LIST | m_clsProxyAuthorizationList |
| SIP Proxy-Authorization 헤더 리스트 | |
| SIP_CHALLENGE_LIST | m_clsProxyAuthenticateList |
| SIP Proxy-Authenticate 헤더 리스트 | |
| SIP_HEADER_LIST | m_clsHeaderList |
| SIP 헤더 리스트. | |
| CSipCSeq | m_clsCSeq |
| SIP CSeq 헤더 | |
| CSipCallId | m_clsCallId |
| SIP Call-ID 헤더 | |
| CSipContentType | m_clsContentType |
| SIP Content-Type 헤더 | |
| int | m_iContentLength |
| SIP Content-Length 헤더의 값 | |
| int | m_iExpires |
| SIP Expires 헤더의 값 | |
| int | m_iMaxForwards |
| SIP Max-Forwards 헤더의 값 | |
| std::string | m_strUserAgent |
| SIP User-Agent 헤더 | |
| std::string | m_strBody |
| SIP body 메시지 | |
| std::string | m_strPacket |
| 네트워크로 전송할 SIP 메시지 | |
| ESipTransport | m_eTransport |
| 네트워크로 전송/수신된 SIP 메시지의 transport | |
| std::string | m_strClientIp |
| SIP 메시지를 전송한 클라이언트의 IP 주소 | |
| int | m_iClientPort |
| SIP 메시지를 전송한 클라이언트의 포트 번호 | |
| bool | m_bUseCompact |
| SIP 메시지를 compact form 으로 생성하는지 설정 | |
| int8_t | m_iUseCount |
| 객체 사용 개수 | |
SIP 메시지 정보를 저장하는 클래스
| CSipMessage::CSipMessage | ( | ) |
| CSipMessage::~CSipMessage | ( | ) |
| int CSipMessage::Parse | ( | const char * | pszText, |
| int | iTextLen | ||
| ) |
SIP 헤더 문자열을 파싱하여 CSipMessage 클래스의 멤버 변수에 저장한다.
| pszText | SIP 헤더의 값을 저장한 문자열 |
| iTextLen | pszText 문자열의 길이 |
| int CSipMessage::ToString | ( | char * | pszText, |
| int | iTextSize | ||
| ) |
SIP 메시지 문자열을 작성한다.
| pszText | SIP 메시지 문자열을 저장할 문자열 변수 |
| iTextSize | pszText 변수의 크기 |
| bool CSipMessage::m_bUseCompact |
SIP 메시지를 compact form 으로 생성하는지 설정
| SIP_CREDENTIAL_LIST CSipMessage::m_clsAuthorizationList |
SIP Authorization 헤더 리스트
| CSipCallId CSipMessage::m_clsCallId |
SIP Call-ID 헤더
| SIP_FROM_LIST CSipMessage::m_clsContactList |
SIP Contact 헤더 리스트
| CSipContentType CSipMessage::m_clsContentType |
SIP Content-Type 헤더
| CSipCSeq CSipMessage::m_clsCSeq |
SIP CSeq 헤더
| CSipFrom CSipMessage::m_clsFrom |
SIP From 헤더
| SIP_HEADER_LIST CSipMessage::m_clsHeaderList |
SIP 헤더 리스트.
CSipMessage 에서 구분하여서 정의한 헤더에 저장되지 않는 헤더들을 저장한다.
| SIP_CHALLENGE_LIST CSipMessage::m_clsProxyAuthenticateList |
SIP Proxy-Authenticate 헤더 리스트
| SIP_CREDENTIAL_LIST CSipMessage::m_clsProxyAuthorizationList |
SIP Proxy-Authorization 헤더 리스트
| SIP_FROM_LIST CSipMessage::m_clsRecordRouteList |
SIP Record-Route 헤더 리스트
| CSipUri CSipMessage::m_clsReqUri |
SIP request URI.
| SIP_FROM_LIST CSipMessage::m_clsRouteList |
SIP Route 헤더 리스트
| CSipFrom CSipMessage::m_clsTo |
SIP To 헤더
| SIP_VIA_LIST CSipMessage::m_clsViaList |
SIP Via 헤더 리스트
| SIP_CHALLENGE_LIST CSipMessage::m_clsWwwAuthenticateList |
SIP Www-Authenticate 헤더 리스트
| ESipTransport CSipMessage::m_eTransport |
네트워크로 전송/수신된 SIP 메시지의 transport
| int CSipMessage::m_iClientPort |
SIP 메시지를 전송한 클라이언트의 포트 번호
| int CSipMessage::m_iContentLength |
SIP Content-Length 헤더의 값
| int CSipMessage::m_iExpires |
SIP Expires 헤더의 값
| int CSipMessage::m_iMaxForwards |
SIP Max-Forwards 헤더의 값
| int CSipMessage::m_iStatusCode |
SIP 응답 코드.
SIP 응답 메시지인 경우에만 0 보다 큰 값을 가지고 있다.
| int8_t CSipMessage::m_iUseCount |
객체 사용 개수
| std::string CSipMessage::m_strBody |
SIP body 메시지
| std::string CSipMessage::m_strClientIp |
SIP 메시지를 전송한 클라이언트의 IP 주소
| std::string CSipMessage::m_strPacket |
네트워크로 전송할 SIP 메시지
| std::string CSipMessage::m_strReasonPhrase |
SIP 응답 메시지
| std::string CSipMessage::m_strSipMethod |
SIP 메소드 ( INVITE, CANCEL, ACK, BYE, REFER 등 )
| std::string CSipMessage::m_strSipVersion |
SIP version ( SIP/2.0 )
| std::string CSipMessage::m_strUserAgent |
SIP User-Agent 헤더
1.8.1.2