Ejabberd模块接受/转发修改后的xml节

vik*_*000 2 xml xmpp ejabberd

我对ejabberd和Erlang比较新,所以如果这是相当基本的话,请道歉.我想在客户端发送到服务器并反向的消息节(即与'body'并行)中引入新的数据类型/元素.虽然我可以在我的iOS客户端中轻松实现前者,但我很难理解如何让ejabberd理解这些更新的传入消息,以及需要进一步更改的内容以使服务器能够将这些消息转发到更远的地方客户端.

是否有人能够广泛地概述所引起的所有类型的变化等等?或者任何其他起点可以帮助我在这里接受教育......?或者,如果有人可以告诉我的现成模块或代码,那将是有帮助的.害怕无法对审核文档等进行大量的研究.

如果它值得,我在Ubuntu上编译了ejabberd 15.04并且我正在使用iOS客户端.

谢谢!

Mic*_*ond 5

XMPP完全可以通过设计进行扩展.这意味着您可以根据需要引入具有自定义命名空间的新元素(与主体处于同一级别),并且ejabberd会将未修改的元素传递给收件人客户端.

你在ejabberd方面没什么特别的.

例如.扩展的XMPP可能如下所示(请参阅自定义标记):

   <message
       from='juliet@example.com/balcony'
       id='ktx72v49'
       to='romeo@example.net'
       type='chat'
       xml:lang='en'>
     <body>Art thou not Romeo, and a Montague?</body>
     <custom xmlns='urn:custom:data'>Content</custom>
   </message>
Run Code Online (Sandbox Code Playgroud)