다음, 모바일 메신저간 표준 규약(MMPP) 개발

안녕하세요. Daum 개발자 네트워크에서는 모바일 시대의 주요 상호 소통 수단으로 부각되고 있는 모바일 메신저간 표준 통신 규약을 공개합니다.

daumdna-mmpp

MMPP(Mobile Messaging and Presence Protocol)은 PC 시절 ICQ, Yahoo!, AOL 그리고 구글과 마이크로소프트가 적극 지원했던 XMPP의 장점을 이어 받아 모바일 메신저간 상호 소통을 위해 만들어 졌습니다. MMPP 프로토콜의 주요 장점은 다음과 같습니다.

주요 특징

  1. 사용자들은 이제 모바일 메신저 하나만 설치해도, 다른 모바일 메신저를 사용하는 사람들에게 메시지 및 파일 전송이 가능해져서 메신저 선호에 따라 친구나 가족과의 분란을 피할 수 있습니다. 사용자 인증은 모바일 단말간 상호 SMS를 매개로 한 간편한 방식을 제공하여, 각 단말 사이에 서로 주소록에 추가되지 않더라도 메시지를 주고 받을 수 있습니다.
  2. 모바일 단말 자체가 서버가 되어 독자적으로 메시지를 주고 받기 때문에, XMPP와 달리 별도의 분산 서버를 운영하지 않아도 되어 사업자의 비용을 절감할 수 있을 뿐 아니라 서버에 메시지가 아예 저장되지 않아 경찰의 압수 수색을 당할 위험이 없어 개인 메시지 보호에 탁월합니다.
  3. 기 술적으로 XMPP와 달리 JSON을 기반으로 하며 콜백을 통한 API를 통해, 더 쉽게 클라이언트 개발이 가능할 뿐만 아니라 <message>, <presense>, <iq> 등 기존 XMPP와 호환 가능하므로 프론트엔드 개발자도 쉽게 적용할 수 있으며, node.js 라이브러리 지원으로 다양한 모바일 메신저가 개발 및 보급 될 수 있는 생태계를 조성할 수 있습니다.

데모 동영상

카카오톡과 마이피플 사이에 메시지 교환이 가능하며 앞으로 라인, 틱톡, 챗온 등이 지원 예정입니다. (3대 통신사 모바일 메신저인 조인은 아직 미정임). 모바일 시대 상호 소통을 열어갈 MMPP에 대한 소개 동영상 (http://www.youtube.com/watch?v=wf0MldfhqPA)을 함께 보십시오!


(화면이 잘 보이지 않으시면, 720 HD로 변경해서 보시기 바랍니다.)

샘플 코드

MMPP는 XMPP의 주요 스펙인 message, presence 및 iq와 호환 가능합니다. message는 상호 인증이 된 단말로 메시지가 들어오면 각 메신저의 id@messsenger_name으로 고유 사용자아이디가 만들어지며 이를 통한 채팅이 가능합니다.

{ message:{ from:'channy@mypeople', to:'jessie@kakao', type:'chat', body:'안녕하세요?' } }

presence는 채팅 중에 혹은 사용자 정보를 볼때, 메신저 상태를 알려 주는 규약으로 사용자의 상태, 타이핑 여부 등을 알 수 있는 정보와 간단한 프로필 정보도 함께 볼 수 있습니다.

{
value:'presence type=typing',
show:'typing',
status:'제주살이'

username: '차니'

}

더 자세한 사항은 http://dna.daum.net/mmpp를 참조하시거나, 각 주요 스펙은 http://github.com/daumcorp/mmpp 에서 함께 개발하실 수 있습니다.

여러분의 많은 성원 부탁드립니다.

※ 본 기사는  Daum의 공식 보도자료가 아니며 4월 1일 이벤트입니다. 투자의 판단 및 사실 확인에 대해서는 독자 개인의 책임에 있음을 주지해 주시기 바랍니다.

—————–

※ 즐거운 4월 1일 하루 되셨나요? DNA에서 만우절 이벤트로 마련한 모바일 메신저간 표준 규약(MMTP) 소식에 많은 분들이 낚여(?) 주셔서 감사합니다. 많은 분들이 기대한다! 꼭 필요하다!라는 의견도 보내 주셨구요. 뉴스에서 기사로도 다뤄 주셨습니다^^

저희도 앞으로 개방과 소통의 기술을 더 많이 저희 서비스와 제품에 녹여 낼 수 있도록 노력하겠습니다.

- ;

Disclaimer- 본 글은 개인적인 의견일 뿐 제가 재직했거나 하고 있는 기업의 공식 입장을 대변하거나 그 의견을 반영하는 것이 아닙니다. 사실 확인 및 개인 투자의 판단에 대해서는 독자 개인의 책임에 있으며, 상업적 활용 및 뉴스 매체의 인용 역시 금지함을 양해해 주시기 바랍니다. 본 채널은 광고를 비롯 어떠한 수익도 창출하지 않습니다. (The opinions expressed here are my own and do not necessarily represent those of current or past employers. Please note that you are solely responsible for your judgment on checking facts for your investments and prohibit your citations as commercial content or news sources. This channel does not monetize via any advertising.)