TsgcWSPServer_WAMPMétodos › CallResult

CallResult Method

Envia uma resposta CALLRESULT (tipo de mensagem 3) ao chamador com o resultado bem-sucedido de um RPC previamente recebido.

Sintaxe

procedure CallResult(const aCallId: String; const aResult: String = '');

Parâmetros

NameTypeDescrição
aCallIdconst StringIdentificador gerado pelo cliente quando ele invocou originalmente o procedimento remoto; utilizado para correlacionar a resposta com a chamada pendente.
aResultconst StringPayload de resultado retornado ao chamador. Pode ser qualquer valor serializado como String (número, texto entre aspas, objeto JSON, array JSON, etc.).

Observações

Chame este método de dentro de um manipulador OnCall (ou posteriormente, de forma assíncrona) assim que a execução do procedimento remoto tiver sido concluída com sucesso. O servidor procura a conexão associada a aCallId, serializa um frame WAMP CALLRESULT [3, CallID, Result], o despacha ao chamador e remove a chamada da lista de pendentes. Se aCallId não for encontrado (a chamada nunca foi registrada, ou já foi respondida/cancelada), o método não faz nada. Para RPCs que produzem vários chunks, utilize CallProgressResult para as partes intermediárias e CallResult para a final; para reportar uma falha, utilize CallError.

Exemplo

procedure TForm1.sgcWSPServer_WAMP1Call(Connection: TsgcWSConnection;
  const CallId, ProcURI: string; Arguments: TStringList);
begin
  if ProcURI = 'com.example.add' then
    sgcWSPServer_WAMP1.CallResult(CallId, '42');
end;

Voltar para Métodos