O que é “Prioridade” e “Recurso” no XMPP?

5

Não sei se esses são os nomes em inglês, mas o espanhol é "Prioridad" e "Recurso". Eu vejo isso quando quero configurar um cliente XMPP. Em "Prioridade", vejo que preciso colocar um número, e suponho (não tenho certeza) que, dependendo do número, as mensagens chegarão à conta com o número mais alto ou será o contrário? E em "Resource" eu não tenho uma teoria, por exemplo quando eu configuro minha conta do Jabber no Thunderbird, por padrão o recurso é "Thunderbird", e quando está no ChatSecure, o recurso é "ChatSecure-12345678" [1 ] Eu não encontrei nenhuma documentação sobre isso na web. Onde posso ler sobre isso?

[1] O "12345678" é um conjunto aleatório de números e letras, que são sempre 8, e são diferentes das outras contas (isso acontece apenas em ChatSecure )

    
por Megver83 18.10.2016 / 23:43

1 resposta

5

Prioridade e Recurso são relevantes quando você está online com vários clientes (com o mesmo JID).

Digamos que sua JID seja [email protected] e você esteja on-line com dois clientes:

  • Cliente 1
    Prioridade: 5
    Recurso: home

  • Cliente 2
    Prioridade: 7
    Recurso: mobile

Se alguém enviar uma mensagem para [email protected]/home ,
você receberá no Cliente 1.

Se alguém enviar uma mensagem para [email protected]/mobile ,
você receberá no cliente 2.

Se alguém enviar uma mensagem para [email protected] ,
você receberá no cliente 2, porque tem a prioridade mais alta.

tl; dr: O recurso permite que o remetente identifique / segmente clientes específicos, e a Prioridade decide qual cliente será usado caso o remetente não tenha como alvo um recurso específico.

A prioridade pode ir de -128 a 127 . Se você definir uma Prioridade negativa (por exemplo, -1 ), esse cliente nunca receberá uma mensagem, a menos que o remetente a envie explicitamente ao recurso do cliente desse cliente. Se os clientes tiverem a mesma prioridade positiva, todos devem receber a mensagem.

Alguns clientes anexam strings aleatórias ao Resource (provavelmente o que o ChatSecure faz) para tornar o JID completo imprevisível, o que pode ser relevante para a segurança razões .

    
por 22.10.2016 / 14:19