Внешний модуль внутриполосной регистрации / вообще лучший подход для внешних модулей в ejabberd? - PullRequest
3 голосов
/ 16 ноября 2011

Я пытаюсь реализовать пользовательский модуль внутриполосной регистрации для ejabberd, который требует немного специализированного использования пользовательских клиентов.Поскольку в нем содержится много бизнес-логики, и мне пока не очень удобно использовать Erlang, я бы хотел реализовать его в качестве внешнего компонента.Можно ли для этого использовать XEP-0114 (протокол компонентов Jabber), или незарегистрированные клиенты не смогут с ним связаться (улов 22)?

Каковы другие допустимые подходы для экстернализации компонентов ejabberdмодули?В идеале я бы хотел установку в стиле Gearman, в которой ejabberd может распространять определенные действия на внешние программы, но до сих пор озадачен отсутствием документации и рабочего кода на стороне Erlang.

1 Ответ

1 голос
/ 08 февраля 2012

Если вы знакомы с python, действительно чистый и эффективный способ - использовать Twisted в сочетании с wokkel . Простой пример здесь: http://metajack.im/2008/10/09/echo-bot-part-two-making-a-component/ ejabberd прекрасно поддерживает XEP-0144. Если вы хотите, чтобы пользовательская логика управляла пользователями, вы можете комбинировать свой компонент с XEP-133 Service Administration

...