Как узнать больше XMPP / Jabber команда - PullRequest
0 голосов
/ 05 июня 2010

Я сейчас использую ejabberd в качестве сервера чата. И я пишу клиент для чата и регистрации нового пользователя. Прямо сейчас я знаю некоторые протоколы для регистрации новой учетной записи, например, отправить следующую команду для регистрации нового пользователя:

<iq type="set"><query xmlns="jabber:iq:register"><username>wfwfewegwegwewefg</username><password>wfwefwefwefwef</password></query></iq>

Мой вопрос: Я хочу узнать больше команды / протокола для общения с сервером. Так где я могу узнать больше? Например, как я могу спросить сервер, существует ли имя пользователя или нет. Как я могу попросить сервер отменить регистрацию пользователя.

Какое ключевое слово мне нужно искать? Должен ли я искать протокол Jabber XMPP или что?

Ответы [ 3 ]

1 голос
/ 04 июля 2011

Если вы используете ejabberd, есть утилита командной строки ejabberdctl, которая решит ваши вопросы.

user@server:~$ sudo /opt/ejabberd-2.1.8/bin/ejabberdctl 
Usage: ejabberdctl [--node nodename] [--auth user host password] command [options]

Available commands in this ejabberd node:
  backup file                                                         Store the database to backup file 
  connected_users                                                     List all established sessions 
  connected_users_number                                              Get the number of established sessions 
  delete_expired_messages                                             Delete expired offline messages from database 
  delete_old_messages days                                            Delete offline messages older than DAYS 
  dump file                                                           Dump the database to text file 
  dump_table file table                                               Dump a table to text file 
  export_piefxis dir                                                  Export data of all users in the server to PIEFXIS 
                                                                      files (XEP-0227) 
  export_piefxis_host dir host                                        Export data of users in a host to PIEFXIS files 
                                                                      (XEP-0227) 
  get_loglevel                                                        Get the current loglevel 
  help [--tags [tag] | com?*]                                         Show help (try: ejabberdctl help help) 
  import_dir file                                                     Import users data from jabberd14 spool dir 
  import_file file                                                    Import user data from jabberd14 spool file 
  import_piefxis file                                                 Import users data from a PIEFXIS file (XEP-0227) 
  incoming_s2s_number                                                 Number of incoming s2s connections on the node 
  install_fallback file                                               Install the database from a fallback file 
  load file                                                           Restore the database from text file 
  mnesia [info]                                                       show information of Mnesia system 
  mnesia_change_nodename oldnodename newnodename oldbackup newbackup  Change the erlang node name in a backup file 
  outgoing_s2s_number                                                 Number of outgoing s2s connections on the node 
  register user host password                                         Register a user 
  registered_users host                                               List all registered users in HOST 
  rename_default_nodeplugin                                           Update PubSub table from old ejabberd trunk SVN to 
                                                                      2.1.0 
  reopen_log                                                          Reopen the log files 
  restart                                                             Restart ejabberd 
  restore file                                                        Restore the database from backup file 
  set_master nodename                                                 Set master node of the clustered Mnesia tables 
  status                                                              Get ejabberd status 
  stop                                                                Stop ejabberd 
  stop_kindly delay announcement                                      Inform users and rooms, wait, and stop the server 
  unregister user host                                                Unregister a user 
  update module                                                       Update the given module, or use the keyword: all 
  update_list                                                         List modified modules that can be updated 
  user_resources user host                                            List user's connected resources 

Examples:
  ejabberdctl restart
  ejabberdctl --node ejabberd@host restart

Commands to start an ejabberd node:
  start  Start an ejabberd node in server mode
  debug  Attach an interactive Erlang shell to a running ejabberd node
  live   Start an ejabberd node in live (interactive) mode
1 голос
/ 27 июня 2010

Если вы отправляете запросы от учетной записи администратора для выполнения этих задач, посмотрите на XEP-0133: Администрирование службы , основанное на XEP-0050: Специальные команды .

Если вы имеете в виду больше с точки зрения обычного пользователя, то, как правило, вы не можете видеть, существует ли учетная запись пользователя (это оставило бы возможность для спамеров использовать ее для сбора каталогов), но вы можете отмените регистрацию учетной записи, если она у вас есть, см. XEP-0077: внутриполосная регистрация для получения дополнительной информации.

На http://xmpp.org/extensions/ есть множество стандартных расширений для всех видов вещей - некоторые находятся в стадии разработки, некоторые доработаны и стабильны.

0 голосов
/ 30 октября 2013

Мне показалась книга «XMPP: полное руководство» полезной, чтобы получить обзор протокола и его терминологии. После этого XEP хороши как ссылки.

...