Enviar mensaje a traves de XMPP con c#

Tagged:

Hola.
Estoy desarrollando un servidor en c# para mantenimiento de una maquina, y quiero que si algo falla, me envie un mensaje a traves de pandion (creo que protocolo XMPP) de una cuenta activa en el servidor a otra cuenta activa en el 'cliente'
Solo tendria que enviar el mensaje, de modo que no tendria que tratar ningun tema de recepcion de mensajes (lo que, supongo, me facilite las cosas)
Alguien podria decirme como enviar dicho mensaje?
Muchas gracias
rbpkirow

PD, Si sirve de algo:
Las direcciones de pandion son conocidas.
Las contraseñas tambien son conocidas, ya que son mis propias cuentas.
El servidor y el puerto al que se conecta pandion, tambien son conocidos.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

Libreria xmpp para c# que conecta y envia mensaje

A ver si lo entiendo.

Tienes un programa (ProgramaServidor) en una máquina. Cuando el programa detecte algun problema, ha de enviar un mensaje a una cuenta Jabber (usuario@example.org). Ese mensaje podría ser: "Hola administrador, soy ProgramaServidor, ahora mismo son las 22:50 del dia 12/12/2009, y he encontrado este problema: 'Error in response XYZ...'". El mensaje lo envia ProgramaServidor desde otra cuenta Jabber (robot@example.org).

Resumiendo, tienes:

  • Servidor Jabber: example.org
  • Cuenta Jabber para ti: usuario@example.org
  • Una persona que está conectada con el cliente Pandion a esa cuenta, y que quiere ser alertado cuando hay problemas.
  • Un programa complejo (ProgramaServidor), que en ocasiones encuentra problemas.
  • Cuenta Jabber que ProgramaServidor va a usar para alertar de esos problemas: robot@example.org

Ahora te falta implementar en tu ProgramaServidor que envíe mensajes de alerta cuando encuentre problemas, ¿verdad?

Si tu programa está escrito en C#, puedes usar alguna librería de XMPP en C#. Espero que alguna permita hacer lo que quieres, quizá tengan ejemplos y documentación de cómo implementarlo.

Lo que tu programa podría hacer es esto:

  1. En ProgramaServidor se configura qué cuenta Jabber usar para enviar alertas: su dirección y contraseña: robot@example.org
  2. Configurar también a qué dirección o direcciones destino se enviarán las alertas: usuario@example.org
  3. Cuando ProgramaServidor detecte un problema, ha de usar la librería XMPP para conectar a la cuenta Jabber robot@example.org
  4. Una vez conectado, usa la librería XMPP para enviar un mensaje a los destinatarios.
  5. Desconecta la cuenta Jabber
  6. Cuando ocurra otro problema, vuelve a conectarse a robot y envía otro mensaje

Solo puedo darte estas ideas generales. No he usado nunca librerías XMPP en C#.