Я начинаю общаться в чате. Я искал и изучал серверы xmpp. Я установил сервер openfire xmpp. Соединение с серверами xmpp, задачами регистрации и входа в систему. Теперь я пытаюсь отправить и получить сообщение. После того, как пользователь получит логин и после этого, когда пользователь вводит текст для отправки. Я использовал этот код, чтобы отправить сообщениеотправка и получение сообщения через xmpp на android
ChatManager chatmanager;
chatmanager = connection.getChatManager();
Chat newChat = chatmanager.createChat("cac6ba9dc9c6ac67"+"@pc", FirstPage.this);
try {
newChat.sendMessage("Howdy!");
}
catch (XMPPException e) {
System.out.println("Error Delivering block");
}
@Override
public void processMessage(Chat chat, Message message) {
// TODO Auto-generated method stub
Toast.makeText(FirstPage.this,"mssg: "+message.getBody(), Toast.LENGTH_SHORT).show();
switch (message.getType())
{
case chat:
String jsonData = (null==message.getBody())?"":message.getBody();
System.out.println(jsonData);
System.out.println(chat.getParticipant());
break;
case error:
break;
case groupchat:
break;
case headline:
break;
case normal:
break;
}
}
и этот код, я использую для получения сообщения, любезно увидеть по этой screenshot видеть пользователей,
chatmanager.addChatListener(this);
PacketFilter filter = new MessageTypeFilter(Message.Type.chat);
connection.addPacketListener(this, filter);
@Override
public void chatCreated(Chat chat, boolean createdlocally) {
// TODO Auto-generated method stub
// System.out.println("1 message received "+chat.getParticipant());
if (!createdlocally) {
System.out.println("not created locally");
Toast.makeText(FirstPage.this, "not created locally", Toast.LENGTH_SHORT).show();
chat.addMessageListener(new MessageListener() {
@Override
public void processMessage(Chat arg0, Message arg1) {
// TODO Auto-generated method stub
//tv1.setText(arg1.getBody());
}
});
} else {
Toast.makeText(FirstPage.this, "created locally", Toast.LENGTH_SHORT).show();
System.out.println("created locally");
}
}
@Override
public void processPacket(Packet packet) {
// TODO Auto-generated method stub
System.out.println("in processPacket");
Message message = (Message) packet;
String body = message.getBody();
String from = message.getFrom();
tv1.setText("From "+from + "\n"+ body);
}
Я использую этот код не знаю, почему сообщение не посылает через другую сторону Может кто-нибудь, пожалуйста, что ошибка, которую я делаю или помочь в решении этой проблемы
сделал и установить соединение и войти в систему? –
Да, я установил соединение и сделал логин также, не могли бы вы прийти через это [link] (http://chat.stackoverflow.com/rooms/68853/trying-to-learn), чтобы помочь мне решить эту проблему. –