最近剛好有機會碰到XMPP,把一些學習心得記錄在這邊。 XMPP(Extensible Messageing and Presence Protocol) 是一種IM的通訊協定, 其前身為Jabber,後於IETF標準化為RFC3920。 除了一般通訊協定常有的Server與Client外,XMPP還另外定義了Gateway, 只要通過Gateway,便可以與其他的IM Protocol通話。 XMPP最大的特色在於傳輸的內容。其傳輸的內容為XML;藉由XML的擴充性, 可以達到許多的擴展應用。不過也由於傳輸內容為XML,因此無法提供二進制的資料。 檔案傳輸需藉由外部HTTP。如果不可避免,XMPP協議提供了Base64的方式傳輸帶編碼文件。 XMPP每個用戶在網路上都有個獨特的Jabber ID,簡稱為JID。 JID由id, domain 與 resource3個部份組成。其