wiki:messenger/intro

Version 4 (modified by rodsouza, 17 years ago) (diff)

--

1. Introdução

O módulo de mensagem instantânea utiliza o serviço  Jabber como agente responsável pelo gerenciamento de contas e troca de mensagens.
Este serviço é orientado à conexão, a comunicação cliente-servidor é estabelecida através de socket utilizando  XML seguindo o padrão  XMPP.

2. Considerações Iniciais

  • o serviço Jabber é orientado à conexão;
  • o  PHP é uma linguagem interpretada;
  • o protocolo  HTTP não foi projetado para manter uma conexão cliente-servidor aberta;
  • requisições de background não podem ser feitas a outros domínios ou ainda outras portas ou mesmo subdomínios do domínio raiz.

Assim sendo temos algumas situalções a serem ponderadas:

  • não é possível uma conexão direta entre o navegador do cliente e o serviço Jabber sem que haja um a interferência de algum meio, seja este qual for;
  • para que o servidor Jabber considere um cliente conectado, é imprecindível, que uma conexão via socket esteja estabelecida e operante;
  • em PHP, para manter um socket operante é necessário que o script que estabeleceu a conexão não termine sua execução;
  • por não estar no escopo do protocolo HTTP a conexão contínua, um servidor jamais poderá mandar informações ao cliente sem que este as solicite;