ZeroConf Чат с Python - PullRequest
       23

ZeroConf Чат с Python

0 голосов
/ 19 июня 2010

Я пытаюсь настроить чат-бота Bonjour (или Ahavi) для нашей системы поддержки, которая отвечала бы на основные вопросы на основе системы меню.Основой моего вопроса является то, как мне заставить python создать бота, чтобы он подключался к сети в качестве клиента чата.

В основном, любой пользователь в моей сети, использующий iChat или Empathy (или любую программу чата, способнуюпросматривать пользователей через локальную сеть) должен видеть бота так же, как они видят другого пользователя.Фактическая часть бота была бы довольно проста для программирования, но я понятия не имею, как получить ее в сети.

Я заглянул в ZeroConf, но я не совсем уверен, как он работает или как запустить службу чата с python.Я видел ссылки на pybonjour, привязки python для avahi и pyzeroconf, но, опять же, я понятия не имею, как их настроить.

Если кто-нибудь может привести пример, ссылку или даже хорошую статью длячитайте по этому вопросу, это будет высоко ценится.Спасибо!

Кори

Ответы [ 2 ]

1 голос
/ 29 июня 2010

То, что у вас здесь есть, это разрыв между тем, что вы хотите сделать, и тем, как это сделать. Zeroconf / Avahi о поиске сервиса. То, что вы описываете, это чат-бот. Чат-боты подключаются к существующему чат-серверу. Apple с iChat слегка размыл эти строки.

iChat (и, вероятно, другие чат-клиенты, которые реализуют протокол) использует Bonjour для обеспечения возможности избегать внешних подключений к серверу.

По сути, вам нужно реализовать сервер чата, который также использует Bonjour. Часть Bonjour рекламирует услугу, а часть чата обрабатывает фактическое общение. Вы, вероятно, захотите использовать библиотеки python для телепатии, такой как python-telepathy или python-empathy [Telepathy] [1]. Кажется, что iChat говорит AIM, так что это будет протокол, который нужно изучить. IIRC также поддерживает XMPP, поэтому можно использовать библиотеки Python XMPP.

Я бы посмотрел на использование [bonjour-py] [2] для рекламы сервиса. Это может быть немного сложно, но звучит интересно. На странице bonjour-py есть множество других терминов, по которым вы можете искать, если они не соответствуют вашим потребностям.

[1]: http://telepathy.freedesktop.org/wiki/ Телепатия Домой

[2]: http://www.mcs.anl.gov/research/projects/accessgrid/bonjour-py/ bonjour-py

0 голосов
/ 19 июня 2010

Самое простое, что можно сделать, это использовать Telepathy Salut или Pidgin / libpurple и поговорить с ним по D-Bus.

...