2013-06-05 4 views
0

SIP에서 작동하는 인스턴트 메시징 프레임 워크를 구현하고 싶습니다. 나는 SIP 클라이언트와 클라이언트로부터 모든 메시지를 얻을 수있는 요소를 가지고 있으며이를 처리하여 다른 SIP 클라이언트에게 전달합니다.SIP 인스턴트 메시징 프레임 워크 구현

클라이언트와 관리 요소는 페이로드 (예 : 페이로드)에서 전달되는 고유 한 개인 프로토콜 (서로 "말하기")을 갖습니다.

내가 모르는 것은 "관리 요소"가 필요한 것입니다. SIP 클라이언트 또는 SIP 서버 여야합니까? 내가 생각한 것은 모든 SIP 메시지를 수신하고 개인 프로토콜을 사용하여 구문 분석 한 다음 다른 클라이언트로 전달할 SIP 클라이언트를 갖게된다는 것입니다. 그래서 시스템 관리에있어 "서버"가 될 것이지만 SIP의 관점에서 클라이언트가 될 것입니다.

저는이 "요소"를 Java로 구현하지만 실제로는 별 문제가되지 않습니다. 도와 주실 방향을 알려 드리겠습니다. IM 서버 (또는 디스패처하거나라고 어떤 "요소"또는)와

1 귀하의 IM 클라이언트 세션 (SIP 대화를) 설정 : 문제와

답변

0

, 나는 두 모델 사이에서 선택하여 시작할 것 실행 중이거나 로그인 한 상태로 유지하면됩니다.이 경우 SIP 대화 상자는 IM 클라이언트에서 IM 서버로 항상 설정되므로 전자는 SIP 클라이언트라고 할 수 있으며 나중에 SIP 섬기는 사람. 그런 다음 IM 메시지는 중간 대화 요청을 사용하여 해당 대화 상자에서 양방향으로 전달됩니다. IM 서버가 어디서든 라우팅 가능하지만 클라이언트가 사설 네트워크에있을 가능성이 높다면이 방법이 좋습니다.

2- 대칭 접근 방식은 진행중인 대화가 없다는 것입니다. 엔터티, IM 클라이언트 또는 IM 서버 중 하나가 다른쪽에 메시지를 보내려고 할 때마다 대화식 SIP 메시지를 한 번만 사용합니다. 이 경우 양쪽 끝에서 SIP UA 클라이언트 및 UA 서버 기능을 구현해야합니다. 어떤 경우에도 IM 클라이언트와 서버 간의 대화를 유지하는 것이 좋지 않은 것처럼 보일 때 선호하는 솔루션이 될 수 있지만 라우팅은 문제가되지 않습니다.

물론 두 번째 방법처럼 보이는 절반 방법이 있지만 대화 상자 컨텍스트에서 보내는 모든 메시지 대신 임시 대화 상자를 만들어 메시지를 보낼 수 있습니다. 일부 비활성 타이머가 대화 상자를 다운시킬 때까지 예를 들어 모든 단일 메시지를 다시 인증하지 마십시오.

관련 문제