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 헤더