TsgcUDPCLient › Métodos › WriteData

WriteData Method

Envia um único datagrama UDP para um endereço e porta de destino explícitos.

Overloads

Overload 1

Sintaxe

procedure WriteData(const aIPAddress: string; aPort: Word; const aValue: string);

Parâmetros

NameTypeDescrição
aIPAddressconst stringEndereço IPv4/IPv6 de destino ou nome DNS. Sobrescreve a propriedade Host somente para esta chamada.
aPortWordPorta UDP de destino no intervalo de 1 a 65535. Substitui a propriedade Port apenas para esta chamada.
aValueconst stringCarga útil de texto. Codificada em bytes UTF-8 antes de ser transmitida.

Observações

Envia o payload de string como um único datagrama UDP para o endereço especificado, sem alterar as propriedades Host/Port. Esta sobrecarga é conveniente para transmitir mensagens de texto, responder a um peer recebido anteriormente ou direcionar para múltiplos hosts a partir de uma única instância de cliente. Quando o DTLS está habilitado, o datagrama é criptografado com a sessão DTLS atualmente em cache.

Exemplo

oClient.WriteData('192.168.1.10', 5000, 'hello');

Sobrecarga 2

Sintaxe

procedure WriteData(const aIPAddress: string; aPort: Word; const aValue: TBytes);

Parâmetros

NameTypeDescrição
aIPAddressconst stringEndereço IPv4/IPv6 de destino ou nome DNS. Sobrescreve a propriedade Host somente para esta chamada.
aPortWordPorta UDP de destino no intervalo de 1 a 65535. Substitui a propriedade Port apenas para esta chamada.
aValueconst TBytesPayload binário bruto enviado literalmente dentro do datagrama UDP.

Observações

Envia um buffer binário como um único datagrama UDP para o endereço e a porta especificados. Utilize esta forma quando o payload não for texto (por exemplo, frames de protocolo serializados, amostras de áudio ou mídia) para que nenhuma conversão de conjunto de caracteres seja aplicada. O tamanho do datagrama deve ser mantido abaixo do MTU do caminho (normalmente 1472 bytes em IPv4 Ethernet) para evitar a fragmentação de IP.

Exemplo

var vBytes: TBytes;
begin
  vBytes := TEncoding.UTF8.GetBytes('ping');
  oClient.WriteData('192.168.1.10', 5000, vBytes);
end;

Voltar para Métodos