http://kasicass.blog.163.com/blog/static/39561920083110518561/

http://kasicass.blog.163.com/blog/static/39561920083110518561/

gtalk 使用 XMPP 作为通讯协议,并且把自己对这个协议的实现 libjingle 按 BSD-lisence 放出了,实在是太伟大了。libjingle 本身支持高效语音聊天等等冬冬,有空一定要好好研究。

  • XMPP: Extensible Messaging and Presence Protocol; an IETF standard for instant messaging. XMPP was originally called Jabber, and the XMPP enhancement proposals (XEPs) were previously called Jabber Enhancement Protocols (JEPs).
  • Jingle: a family of XMPP extensions that make it possible to initiate and maintain peer-to-peer sessions. Specific Jingle extensions support voice streaming, video streaming, and file-sharing sessions.


http://www.xmpp.org/
http://code.google.com/apis/talk/index.html

libjingle 可以在这里下载:
https://sourceforge.net/projects/libjingle/

libjingle 依赖底层的语音库 Linphone or GIPS Lite,虽然 GIPS Lite 可以免费下载,不过 Linphone 是 open-source 的,还是多研究下 Linphone 再说。
http://www.linphone.org/index.php/eng
http://developer.gipscorp.com/

-------------------------------
2008-04-03  凌晨
libjingle 中用到了一个 C++ 实现的 sig/slot 机制,不过此 sigslot 并非 boost::signal。细细品味,算是把 sigslot 的基本代码浮光掠影了一番。
http://sigslot.sourceforge.net/

整个 sigslot 的实现很精巧,让不同 class 协同工作,而又不过于耦合。关于 sigslot 的分析,可以参见 buxiu 兄的文字。在 gtalk 板块。
http://www.vtzone.org

-------------------------------
2008-04-03  深夜
正想自己写个 demo 看看 libjingle 如何使用,就发现一位德国兄弟已经做好了研究工作,并把结果也发布了。真是好人啊。MyJingle,一个 libjingle 的 simple demo for windows。
http://www.bluehands.de/software/beat/myjingle/

编译 libjingle 也是件需要耐心的事情
1. 需要 expat XML Parser, http://sourceforge.net/projects/expat/
2. if has error: has no netfw.h, download from SDK, or just from 
   http://www.codeproject.com/w2k/WinXPSP2Firewall.asp
   上面的地址已经失效,可以从这里获取:
   http://wasm.ru/forum/files/_1142384163__WinXPSP2Firewall_src.zip
   http://wasm.ru/forum/files/_1246234211__WinXPSP2Firewall_demo.zip

23:29  MyJingle编译成功,自己的两个 gmail 账号之间可以语音通讯了,Coooooool~~~

-------------------------------
2008-04-04  深夜
libjingle 是一个客户端的实现,如何制作 XMPP(jabber) 的服务端呢?The answer is 'openfire',一个开源的 XMPP server 的实现。
http://www.igniterealtime.org/projects/openfire/

还有一位老大的 blog,有很多 xmpp 的资料,hoho:
http://hi.baidu.com/jabber

-------------------------------
2008-04-22  晨
很久没弄 libjingle 了,一早又在 cloudwu 的 blog 上看到相关的介绍,掏到了两个新的 jabber 相关的项目,mark it。
gloox - gloox is a rock-solid, full-featured Jabber/XMPP client library
http://camaya.net/gloox
tessa - a modular Jabber client
http://code.google.com/p/tessa/

前面说过 OpenFire 是 java-base 的 xmpp server,而对于 cluster 要求比较高的同学,可以尝试下 ejabberd,一个用 erlang 实现的 xmpp server。
http://www.ejabberd.im/

你可能感兴趣的:(static)