Приоритет и ресурс имеют значение, когда вы подключены к сети с несколькими клиентами (с одним и тем же JID).
Допустим, у вас есть JID, alice@example.net
и вы находитесь в сети с двумя клиентами:
Приоритет клиента 1 :5
Ресурс:home
Приоритет клиента 2 :7
Ресурс:mobile
Если кто-то отправит вам сообщение alice@example.net/home
,
вы получите его на Клиенте 1.
Если кто-то отправит вам сообщение alice@example.net/mobile
,
вы получите его на Клиенте 2.
Если кто-то отправит сообщение alice@example.net
,
вы получите его на Клиенте 2, потому что оно имеет более высокий приоритет.
tl; dr: Ресурс позволяет отправителю идентифицировать / предназначаться для определенных клиентов, и Приоритет решает, какой клиент будет использоваться в случае, если отправитель не предназначается для определенного Ресурса.
Приоритет может идти от -128
до 127
. Если вы установите отрицательный приоритет (например, -1
), этот клиент никогда не получит сообщение, если отправитель явно не отправит его на этот ресурс клиента. Если клиенты имеют одинаковый положительный приоритет, все они должны получить сообщение.
Некоторые клиенты добавляют случайные строки в Ресурс (вероятно, что делает ChatSecure), чтобы сделать полный JID непредсказуемым, что может иметь отношение к соображениям безопасности .