xmpp - Strope.js Jabber 搜索 (XEP-0055)

标签 xmpp strophe

我正在尝试弄清楚如何使 Strope.js 与 XEP-0055 插件一起使用。所以我想我首先必须确定该服务支持哪些搜索字段,然后我必须发送实际的请求:

<iq type='set'
    from='<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="0a7865676f654a6765647e6b6d7f6f24646f7e" rel="noreferrer noopener nofollow">[email protected]</a>/home'
    to='characters.shakespeare.lit'
    id='search2'
    xml:lang='en'>
  <query xmlns='jabber:iq:search'>
    <last>Capulet</last>
  </query>
</iq>

但是如何将其转换为 Strope.js 查询呢?这是我的尝试:

$iq({to: 'characters.shakespeare.lit', 
from: '<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="c6b4a9aba3a986aba9a8b2a7a1b3a3e8a8a3b2" rel="noreferrer noopener nofollow">[email protected]</a>/home', 
type: 'set', 
id: 'search2'}).c('query', {xmlns: 'jabber:iq:search'}).t("last", search_query)

我到底需要发送什么,例如

to:characters.shakespeare.lit - 是我正在使用的 XMPP 服务的地址吗?例如。 jabber.org

来自:[email protected]/home - 这是我在服务器上的 ID 吗?

最佳答案

    var iq = $iq({
          type: 'set',
          id: 'search2',
          to: 'vjud.yourserver.org'
    })
.c('query', {xmlns: 'jabber:iq:search'})
.c('x', {xmlns: 'jabber:x:data', type:'submit'})
.c('field', {var: 'first'}).c('value','Rub*').up(); 
conn.sendIQ(iq);

注意:致:characters.shakespeare.lit

不是您的服务器,而是 vcard 服务搜索。

.c('field', {var: 'first'}) 如果出现任何错误,请将 var 更改为 'var'

关于xmpp - Strope.js Jabber 搜索 (XEP-0055),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18751307/

相关文章:

ios - 使用 iOS 在 XMPP 中传输文件的服务不可用 503 错误

java - 如何更改所有设备的用户 session 状态(离开、dnd 等)

jquery - stropejs 与 mootools 冲突

javascript - strope.js,我使用 Attach() 来恢复 Bosh session ,但得到 'Status' ATTACHED to CONNFAIL 和 DISCONNECTED

xmpp - 如何让 Openfire 用户出现在聊天室中

mysql - 在 OpenFire MySQL 集成中使用带有盐编码的 md5

ios - IOS 中的 XMPP 一对一聊天

ios - 用户上次事件

javascript - XMPP - 示例第 3 章 "Professional XMPP Programming with JavaScript and jQuery"不起作用

javascript - 在页面卸载 strope.js 发送请求两次!为什么?