Priority

From JaWiki (Jabber/XMPP wiki)
Revision as of 22:01, 20 December 2016 by Binary (Talk | contribs) (Reverted edits by 199.119.142.171 (talk) to last revision by Willrain)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
В соответствии с принятыми в данной вики договорённостями, правильное название этой статьи — Приоритет.
Для ссылок сюда с других страниц
ЯВики используйте название
Приоритет
На других ресурсах
можно также давать ссылку
http://jawiki.ru/Priority

Приоритет (англ. Priority) — целое число в пределах от −128 до +127 (включительно), определённое для КАЖДОГО ресурса, и передаваемое клиентом(ам) как часть информации о присутствии. По умолчанию приоритет равен нулю.

Приоритет определяет, какому из ресурсов будет доставлено сообщение, если оно послано на неполный JID (на JID без указания ресурса). Сообщение в первую очередь придет ресурсу с наивысшим приоритетом. Если таковых окажется несколько, то, как сказано в описании протокола XMPP, «сервер решает», кому будет доставлено послание. Как правило, оно доходит всем таким ресурсам.

Приоритет может изменяться в пределах одной сессии. В некоторых клиентах, например, Psi, изменение статуса можно связать с одновременной сменой приоритета, например, его понижением, когда автоматически выставляется ресурс Отошёл надолго (Extended Away).

Если же он отрицателен (от -1 до -128), то сообщение придёт соответствующему ресурсу только в том случае, если оно послано именно ему по полному JID (c указанием ресурса).

На практике может случаться, что значение приоритета лежащие вне специфицированного диапазона. Проверка значения не производится в ПО, но XML-схема это запрещает явно.

Использование приоритета пользователем[edit]

В интерфейсе программы-клиента предусматривается поле, где указывается приоритет. У большинства клиентов оно заполнено по умолчанию, например, у Psi это 5, у Pidgin 0.

Задавать приоритет вам понадобится только в том случае когда будет больше одного подключения к учётной записи в jabber. Каждое подключение это отдельный ресурс. Если такая ситуация возникает, то возможны следующие варианты:

  • сообщения доставляются на все ресурсы, для достижения этого выставьте всем одинаковый приоритет, например, 5 (Это работает не со всеми серверами! В стандарте не регламентировано)
  • сообщения доставляются на ресурс с самым большим приоритетом - Добейтесь, чтобы приоритет у нужного ресурса был самым большим. Обычно подключение с мобильного устройства имеет высший приоритет перед подключениями с настольного компьютера.
  • на определенный ресурс сообщения доставлялись только в случае его выбора - задайте ему отрицательный приоритет.