XMPP의 "우선순위"와 "리소스"는 무엇입니까?

XMPP의 "우선순위"와 "리소스"는 무엇입니까?

그것이 영어로 된 이름인지는 모르겠지만 스페인어로는 "Prioridad"와 "Recurso"입니다. XMPP 클라이언트를 구성하려고 할 때 이 메시지가 표시됩니다. "우선순위"에서 숫자를 입력해야 한다는 것을 알 수 있으며 숫자에 따라 메시지가 가장 높은 숫자를 가진 계정에 전달될 것이라고 생각합니다(잘 모르겠습니다). 아니면 그 반대입니까? 그리고 "리소스"에는 이론이 없습니다. 예를 들어 Thunderbird에서 Jabber 계정을 구성할 때 기본적으로 리소스는 "Thunderbird"이고 ChatSecure에 있는 경우 리소스는 "ChatSecure-12345678"입니다.[1 ] 웹에서 이에 대한 문서를 찾지 못했습니다. 이에 대한 내용은 어디서 읽을 수 있나요?

[1] "12345678"은 임의의 숫자와 문자 집합으로 항상 8이며 다른 계정과 다릅니다(이것은 에서만 발생합니다)ChatSecure)

답변1

우선 순위와 리소스는 여러 클라이언트(동일한 JID 사용)와 온라인 상태일 때 관련됩니다.

[email protected]귀하의 JID가 이고 두 클라이언트와 온라인에 있다고 가정해 보겠습니다 .

  • 클라이언트 1
    우선순위: 5
    자원:home

  • 클라이언트 2
    우선순위: 7
    자원:mobile

[email protected]/home누군가가 에게 메시지를 보내면
클라이언트 1에서 해당 메시지를 받게 됩니다.

[email protected]/mobile누군가가 에게 메시지를 보내면
클라이언트 2에서 해당 메시지를 받게 됩니다.

[email protected]누군가가 에 메시지를 보내면
우선 순위가 더 높은 클라이언트 2에서 메시지를 받게 됩니다.

tl;dr:리소스를 사용하면 발신자가 특정 클라이언트를 식별/타겟팅할 수 있으며, 우선순위는 발신자가 특정 리소스를 대상으로 하지 않는 경우 사용할 클라이언트를 결정합니다.


우선순위는 에서 까지 가능 -128합니다 127. 음수 우선 순위(예: )를 설정하면 -1보낸 사람이 해당 클라이언트 리소스에 명시적으로 메시지를 보내지 않는 한 이 클라이언트는 메시지를 받지 않습니다. 클라이언트의 우선 순위가 동일하면 모든 클라이언트가 메시지를 받아야 합니다.

일부 클라이언트는 전체 JID를 예측할 수 없도록 만들기 위해 리소스(아마도 ChatSecure가 수행하는 작업)에 임의의 문자열을 추가합니다.보안상의 이유로 관련될 수 있음.

관련 정보