Pergunta

Eu tenho um plugin para OpenFire que cria e fornece uma mensagem para um usuário usando

XMPPServer.getInstance().getMessageRouter().route(message)

O que eu gostaria de saber é o que acontece com essa mensagem se o usuário não está online.

Meu objetivo é apenas para que a mensagem entregue se o usuário está online, e falhar ou ser encaminhado para o balde bit contrário.

Foi útil?

Solução

É tudo para baixo para Openfire configuração. No console de administração Openfire, vá para o servidor -> Configurações do servidor -> mensagens offline. Há opções para loja, salto e queda.

  • loja: entregar a mensagem quando o user volta online.
  • Drop: Apenas descartar a mensagem
  • .
  • Bounce:. Descartar e notificar o remetente com uma mensagem de retorno

Outras dicas

Outra abordagem, se você quiser apenas estas mensagens para não ficar offline sem afetar a entrega de outras mensagens, é usar type = 'manchete'. Manchetes não estão terrivelmente bem especificado, mas RFC 3921bis Seção 5.2.2 diz:

manchete - A mensagem fornece um alerta, uma notificação, ou outras informações para que se espera nenhuma resposta (por exemplo, manchetes de notícias, atualizações de esportes, dados de mercado em tempo quase real e conteúdo sindicado). Porque não respondeu à mensagem é esperado, normalmente um cliente receber irá apresentar uma mensagem do tipo "título" em uma interface que apropriadamente diferencia a mensagem de mensagens independentes, mensagens de chat ou mensagens GroupChat (por exemplo, por não fornecer o receptor com o capacidade de resposta). O servidor de recepção deve entregar a mensagem a todos os recursos disponíveis do destinatário.

A maioria dos servidores de hoje vai apenas silenciosamente cair manchetes para usuários offline, e entregar ao maior recurso prioridade se o usuário estiver online.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top