2012-08-01 3 views
1

Java에서 XMPP 테스트 클라이언트를 만들려고 시도 했으므로 실제 xmpp 클라이언트처럼 동작하지만 로그와 같은 메시지를 출력하는 코드에 연결하고 싶습니다. 나는 현실적인 환경에서 또는 가까이에 테스트하고 싶다.테스트 용 테스트 XMPP 클라이언트 만들기

xmpp 클라이언트가 실행되기를 원하기 때문에 모의하거나 스텁하지 않는 것이 이상적입니다.

아이디어가 있으십니까?

답변

3

Psi을 보았습니까? 매우 강력한 크로스 플랫폼 XMPP 클라이언트로, 원시 XMPP 스트림을 콘솔에서 볼 수있을뿐만 아니라 자신의 XML을 붙여 직접 보낼 수도 있습니다. Smack 기반 XMPP 클라이언트를 작성하는 데 걸리는 시간을 절약 할 수 있습니다. 또한 내가 듣는 gajim을 보시오.

+0

감사를 실행하기 전에 u는 내 응용 프로그램에서 만든 임베디드 XMPP의 sevrer에의 Openfire를 구성해야합니다 기억 .. 매우 까다로운을 찾는 메신저로 실행하려고 노력하고 있어요 . – Iqbal

0

이것은 xmpp의 수신자에게 메시지를 보내는 데 도움이됩니다. 은 내가 또한 tigase에서를 loking 시작이

import org.jivesoftware.smack.Chat; 
import org.jivesoftware.smack.ChatManager; 
import org.jivesoftware.smack.ConnectionConfiguration; 
import org.jivesoftware.smack.MessageListener; 
import org.jivesoftware.smack.XMPPConnection; 
import org.jivesoftware.smack.XMPPException; 
import org.jivesoftware.smack.packet.Message; 
import org.jivesoftware.smack.packet.Presence; 

public class SenderTest 
{ 
public static void main(String args[]) 
{ 
    //ConnectionConfiguration connConfig = new ConnectionConfiguration("localhost", 5222); 
     //connConfig.setSASLAuthenticationEnabled(false); 
    ConnectionConfiguration connConfig = new ConnectionConfiguration("localhost", 5222); 
    //ConnectionConfiguration connConfig = new ConnectionConfiguration("talk.google.com", 5222, "gmail.com"); 
     XMPPConnection connection = new XMPPConnection(connConfig); 

     try { 
      connection.connect(); 
      System.out.println("Connected to " + connection.getHost()); 
     } catch (XMPPException ex) { 
      //ex.printStackTrace(); 
      System.out.println("Failed to connect to " + connection.getHost()); 
      System.exit(1); 
     } 
     try { 
      connection.login("[email protected]", "a"); 
      System.out.println("Logged in as " + connection.getUser()); 

      Presence presence = new Presence(Presence.Type.available); 
      connection.sendPacket(presence); 

     } catch (XMPPException ex) { 
      //ex.printStackTrace(); 
      System.out.println("Failed to log in as " + connection.getUser()); 
      System.exit(1); 
     } 

    ChatManager chatmanager = connection.getChatManager(); 
    Chat newChat = chatmanager.createChat("[email protected]", new MessageListener() { 
     public void processMessage(Chat chat, Message message) { 
      System.out.println("Received message: " + message); 
     } 
    }); 

    try { 
     newChat.sendMessage("Howdy!"); 
     System.out.println("Message Sent..."); 
    } 
    catch (XMPPException e) { 
     System.out.println("Error Delivering block"); 
    } 
} 

}