2017-01-13 11 views
1

как отправить запрос запроса на сервер xmpp, другими словами, как отправить «...» на сервер для запроса некоторой информации?Как использовать smack 4.1 для отправки информационного запроса на сервер xmpp?

<iq type='set' id='123'> 
<push xmlns='p1:push'> 
    <keepalive max="30"/> 
    <session duration="60"/> 
    <body send="all" groupchat="true" from="jid"/> 
    <status type="xa">Text Message when in push mode</status> 
    <offline>false</offline> 
    <notification> 
     <type>applepush</type> 
     <id>DeviceToken</id> 
    </notification> 
    <appid>application1</appid> 
</push> 
</iq> 
+0

Вы хотите, чтобы пользовательский IQ или это представляли собой базовые XEP? – MrPk

+0

Я хочу преобразовать выше в IQProvider для конфигурации @MrPk –

+0

Перейти к действию 3: http://stackoverflow.com/questions/37965356/mapping-openfire-custom-plugin-with-asmack-client/37972611#37972611 – MrPk

ответ

2

Заголовки iq и пространство имен, элементы обрабатываются или заполняются в xml при помощи самого себя. Пример пакета IQ в xml и его реализация путем расширения пакета IQ приведены ниже.

<iq to='[email protected]' id='khz0k-13678' type='get'><elementName xmlns='http://jabber.org/protocol/muc#something'><item affiliation="member"/></elementName></iq> 

public class IQGetSomething extends IQ { 
public static final String ELEMENT = "elementName"; 
public static final String NAMESPACE = "http://jabber.org/protocol/muc#something"; 
String memberType; 

public IQGetSomething() { 
    super(ELEMENT, NAMESPACE); 
    setType(Type.get); 
} 

public String getMemberType() { 
    return memberType; 
} 

public void setMemberType(String memberType) { 
    this.memberType = memberType; 
} 


@Override 
protected IQChildElementXmlStringBuilder getIQChildElementBuilder(IQChildElementXmlStringBuilder xml) { 
    xml.rightAngleBracket(); 
    xml.append("<item affiliation=\"").escape(memberType).append("\"/>"); 
    return xml; 
} 
} 
+0

как мы можем использовать Firebase с XMPP, отправив обновить токен при инициализации соединения XMPP? @Flow –

+0

как я могу отправить выше параметр по xml в XMPP для конфигурации push? @rabhis –

+0

Как отправить IQGetSomething в объект соединения в android ?? –