WebSocketConnection
Histórico
| Release | Mudanças | 
|---|---|
| 20 | Adicionado | 
A API da classe WebSocketConnection permite-lhe tratar as ligações WebSocket, uma vez estabelecidas utilizando a classe WebSocketServer.
Para uma visão geral e alguns exemplos da implementação do servidor WebSocket em 4D, consulte a classe WebSocketServer.
Objecto WebSocketConnection
Um objeto WebSocketConnection é automaticamente criado quando a função de retorno de chamada WSHandler.onConnection do objecto WebSocketServer devolve um objecto connectionHandler.
Os objectos Httprequest fornecem as seguintes propriedades e funções:
.handler : Objecto    o acessor que obtém o objecto connectionHandler utilizado para iniciar a ligação | 
| .id : Integer o identificador único da ligação | 
| .send( message : Text ) .send( message : Blob ) .send( message : Object ) envia uma mensagem ao cliente  | 
| .status : Text o estado da ligação (pode ser "Closing", "Closed" ou "Connected") | 
| .terminate( { code : Integer ; message : Text } ) força o encerramento da ligação | 
.wss : 4D.WebSocketServer    o WebSocketServer objecto pai da ligação | 
.handler
.handler : Objecto
Descrição
The .handler property contains o acessor que obtém o objecto connectionHandler utilizado para iniciar a ligação.
.id
.id : Integer
Descrição
A propriedade .id contém o identificador único da ligação.
Esta propriedade é só de leitura.
.send()
.send( message : Text )
.send( message : Blob )
.send( message : Object )
| Parâmetro | Tipo | Descrição | |
|---|---|---|---|
| message | Text / Blob / Object | -> | A mensagem a enviar | 
|
Descrição
A função .send() envia uma mensagem ao cliente.
Os conteúdos seguintes são enviados em função do tipo de mensagem:
| Tipo | Conteúdo | 
|---|---|
| Text | Texto em UTF-8 | 
| Blob | Dados binários | 
| Object | Texto em JSON UTF-8 (o mesmo resultado que com JSON Stringify) | 
.status
.status : Text
Descrição
A propriedade .status contém o estado da ligação (pode ser "Closing", "Closed" ou "Connected").
Esta propriedade é só de leitura.
.terminate()
.terminate( { code : Integer ; message : Text } )
| Parâmetro | Tipo | Descrição | |
|---|---|---|---|
| code | Integer | -> | Código de erro enviado ao cliente (deve ser > 3000, caso contrário a mensagem não é enviada) | 
| message | Text | -> | Mensagem de erro enviada ao cliente | 
|
Descrição
A função .terminate() força o encerramento da ligação.
Um code e uma message podem ser enviados ao cliente durante o encerramento para indicar o motivo da rescisão.
.wss
.wss : 4D.WebSocketServer
Descrição
A propriedade .wss contém o WebSocketServer objecto pai da ligação.
Esta propriedade é só de leitura.