2009-05-26 3 views
10

Как отправить сообщение XMPP с использованием одной из следующих библиотек Python: wokkel, xmpppy или jabber.py?Отправить сообщение xmpp с использованием библиотеки python

Я думаю, что мне известно о псевдокоде, но до сих пор не удалось запустить его правильно. Это то, что я пробовал до сих пор:

  • Вызвать некоторый API и передать имя сервера и номер порта для подключения к этому серверу.
  • Позвоните в некоторые API и передайте имя пользователя и пароль для создания объекта JID.
  • Аутентификация с помощью этого JID.
  • Создайте объект Message и вызовите некоторый API и передайте это сообщение obj в аргументе.
  • Позвоните в какой-либо API отправки.

Это кажется достаточно простым в концепции, но дьявол находится где-то в деталях. Пожалуйста, покажите образец фрагмента, если это возможно.

ответ

38

Это самый простой возможный клиент xmpp. Он отправит сообщение «hello :)». Я использую xmpppy в примере. И подключение к серверу gtalk. Я думаю, что пример говорит само за себя:

import xmpp 

username = 'username' 
passwd = 'password' 
to='[email protected]' 
msg='hello :)' 


client = xmpp.Client('gmail.com') 
client.connect(server=('talk.google.com',5223)) 
client.auth(username, passwd, 'botty') 
client.sendInitPresence() 
message = xmpp.Message(to, msg) 
message.setAttr('type', 'chat') 
client.send(message) 
+0

Вы имеете в виду xmpppy, правильно? –

+1

Ясно, что что-то не так в этих пакетах ... У меня уже установлен xmpp, но внутри него не было клиента. Я установил xmpppy, и я все равно получаю ту же ошибку. Очевидно, плохая идея выпускать пакеты с тем же именем. – sorin

2

xmpppy имеет ряд примеров, перечисленных на главной странице (в разделе «Примеры»), самый основной из которых sends a single test message. Они делают примеры более интересными - они вводят API с обратным вызовом через chat bot program.

Смежные вопросы