簡體   English   中英

smack xmpp庫Java

[英]smack xmpp library Java

我使用庫smack創建了一個Java項目。 我也在計算機上使用服務器xmpp openfire創建。 我的服務器的地址是:192.168.1.4端口是:5222

我的問題是郵件的發送/接收。 也就是說,當我嘗試向其他用戶發送消息時,該用戶沒有收到該消息。 現在放置我的java程序:

 ConnectionConfiguration config;
    XMPPConnection con;

    config = new ConnectionConfiguration("192.168.1.4", 5222);
    con = new XMPPTCPConnection(config);

    con.connect();

    /*This code is inside the button event log-in*/
    con.login(txtUsername.getText(), txtPassword.getText());


    /*this code is internal event of sending message to another user*/
    ChatManager chatmanager = ChatManager.getInstanceFor(con);
    final Chat newChat = chatmanager.createChat(txtDestUsers.getText(), new MessageListener() {

                        @Override
                           public void processMessage(Chat chat, Message message) {
                              txtRicevuti.setText(message.getBody());
                           }
                        });

                        try {
                           newChat.sendMessage(txtMessage.getText());
                        }
                        catch (XMPPException | NotConnectedException e) {
                           System.out.println("Error Delivering block");
                        }

txtDestUsers =  contains the name of the recipient type B@192.168.1.4
txtMessage = message to be sent
txtUsername = myUsername (A@192.168.1.4)
txtPassword = myPassword
txtRicevuti = received messages

作為測試,我運行了兩次程序,並使用以下兩個帳戶登錄:A@192.168.1.4和B@192.168.1.4

如果我嘗試向自己發送消息,則消息到達。 就像txtDestUsers插入另一個用戶的名稱一樣,消息不會到達。

怎么會這樣?

Message message=new Message();
message.setTo(<JabberId>);
message.setType(Message.Type.chat);
message.setBody("Hello World!");

con.sendPacket(message);

這是您發送消息的方式

PacketFilter filter = new MessageTypeFilter(Message.Type.chat);
con.addPacketListener(new PacketListener() {
 public void processPacket(Packet packet) {
 Message message = (Message) packet;
 String body = message.getBody();
 String from = message.getFrom();
 }   
 }, filter);

片段上方是您如何接收消息的方式。

有關更多參考,請參見: http : //developer.samsung.com/technical-doc/view.do?v=T000000119

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM