我有以下代码来启动两个用户之间的聊天对话:
// Create Connection.
Connection.DEBUG_ENABLED = true;
config = new ConnectionConfiguration(CHAT_SERVER);
connection = new XMPPConnection(config);
connection.connect();
connection.login(chatLogin, password);
// Create Chat Manager.
chatManager = connection.getChatManager();
// Create Chat.
chat = chatManager.createChat(friendLogin, messageListener);
// Set listener for outcoming messages.
chatManager.addChatListener(chatManagerListener);
String str_your_chat_id = Integer.toString(your_chat_id);
String str_receiver_chat_id = Integer.toString(receiver_chat_id);
// Set Subscription to receive user status
Presence subscribe = new Presence(Presence.Type.subscribe);
subscribe.setTo(str_your_chat_id +"-3758@chat.quickblox.com");
connection.sendPacket(subscribe);
Presence subscribed = new Presence(Presence.Type.subscribed);
subscribed.setTo(str_receiver_chat_id +"-3758@chat.quickblox.com");
connection.sendPacket(subscribed);
subscribe = new Presence(Presence.Type.subscribe);
subscribe.setTo(str_receiver_chat_id +"-3758@chat.quickblox.com");
connection.sendPacket(subscribe);
subscribed = new Presence(Presence.Type.subscribed);
subscribed.setTo(str_your_chat_id +"-3758@chat.quickblox.com");
connection.sendPacket(subscribed);
但是当它运行来自asmack服务器的消息时,回复“你不能订阅自己”。
任何人都知道我做错了什么?
答案 0 :(得分:0)
此代码有问题:
// Set Subscription to receive user status
Presence subscribe = new Presence(Presence.Type.subscribe);
subscribe.setTo(str_your_chat_id +"-3758@chat.quickblox.com");
connection.sendPacket(subscribe);
您自己订阅,但不是
很高兴听到你想要达到的目标