• Viernes 19 de Abril de 2024, 19:25

Autor Tema:  usando Smack API para enviar XMPP  (Leído 3282 veces)

diego.martinez

  • Miembro MUY activo
  • ***
  • Mensajes: 297
    • Ver Perfil
usando Smack API para enviar XMPP
« en: Miércoles 24 de Agosto de 2011, 10:53 »
0
Buenas:

Estoy usando la libreria Smack para usar el protocolo XMPP en dispositivos Android.
He hecho una aplicación que me permite mandar y reacibhir mensajes en chats Jabber o GTalk y funciona correctamente conectandome a los servidores de Jabber y Gmail.
Sin embargo, si monto un servidor OpenFire en mi localhost y conecto, me falla en la autorización (y he creado el usuario y configurado etc).

Si conecto el Spark a localhost funciona correctamente. Alguna idea? Gracias!

Código: Java(TM) 2 Platform Standard Edition 5.0
  1. // TODO Auto-generated method stub
  2.                 ConnectionConfiguration config=null;
  3.                 Connection connection=null;
  4.                
  5.                 try
  6.                 {
  7.                 System.out.println("Emisor: Creando conexión");
  8.                 // Create the configuration for this new connection
  9.                 config = new ConnectionConfiguration(
  10.                 "localhost",
  11.                 5222
  12.                 );
  13.                 config.setCompressionEnabled(true);
  14.                 config.setSASLAuthenticationEnabled(false);
  15.  
  16.                 System.out.println("Emisor: Estableciendo conexión");
  17.                 connection = new XMPPConnection(config);       
  18.  
  19.  
  20.                 // Connect to the server               
  21.                 connection.connect();
  22.                 System.out.println("Emisor: conectando...");
  23.                 // Log into the server
  24.                 connection.login("kulebril@diego-sw","password");
  25.                 System.out.println("Emisor: conectado con éxito");
  26.                
  27.                 XMPPServerListener Listener=new XMPPServerListener();
  28.                
  29.                 System.out.println("Emisor: creando sala de chat...");
  30.                 Chat chat = connection.getChatManager().createChat("admin@localhost", Listener);               
  31.                
  32.                 int i=0;
  33.                
  34.                 while(true)
  35.                 {
  36.                 i++;           
  37.                 System.out.print(".");
  38.                 chat.sendMessage("Enviando mensaje "+String.valueOf(i)+" desde Server");
  39.                  Thread.sleep(4000);
  40.                 }
  41.                
  42.                 }
  43.                 catch(XMPPException Ex)
  44.                 {
  45.                         System.out.println("Excepcion:----------------------------------");
  46.                         System.out.println(Ex.getMessage());                   
  47.                 }
  48.                 catch(Exception Ex)
  49.                 {
  50.                        
  51.                 }
  52.  
  53.  
  54.         }
  55.        
  56.         public void processMessage(Chat arg0, Message arg1) {
  57.                 // TODO Auto-generated method stub
  58.                
  59.                 String s=new String();
  60.                 s+="Packet received from:";
  61.                 s+=arg1.getFrom();
  62.                 s+="\r\nSubject:\r\n";
  63.                 s+=arg1.getSubject();
  64.                 s+="\r\nBody:\r\n";
  65.                 s+=arg1.getBody();
  66.                
  67.                 javax.swing.JOptionPane.showMessageDialog(null, this, s, 0);
  68.         }
  69.  
  70. }
  71.  
  72.