XEP – 0055与iOS和ejabberd?

我正在尝试实现由ejabbed支持的XEP-0055,如支持的xeps所示

这是我的要求:

XMPPIQ *iq = [[XMPPIQ alloc] init]; [iq addAttributeWithName:@"type" stringValue:@"get"]; [iq addAttributeWithName:@"from" stringValue:@"testuser1@company.com"]; [iq addAttributeWithName:@"to" stringValue:@"company.com"]; [iq addAttributeWithName:@"id" stringValue:@"search1"]; XMPPElement *query = [XMPPElement elementWithName:@"query"]; [query setXmlns:@"jabber:iq:search"]; [iq addChild:query]; [self.xmppStream sendElement:iq]; 

我得到这个回应:

 <iq xmlns="jabber:client" from="company.com" to="testuser1@company.com/2834146151141475281662718" type="error" id="search1"> <query xmlns="jabber:iq:search"/> <error code="501" type="cancel"> <feature-not-implemented xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/> </error> </iq> 

为什么我收到的function没有实现? 链接到官方的XEP 描述。

在ejabberd中,searchfunction被委托给一个子域,默认情况下使用vjud前缀。 尝试将search请求发送到vjud.company.com