IRealtimeClientSession.SendAsync Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Envia uma mensagem de cliente para a sessão.
public System.Threading.Tasks.Task SendAsync(Microsoft.Extensions.AI.RealtimeClientMessage message, System.Threading.CancellationToken cancellationToken = default);
abstract member SendAsync : Microsoft.Extensions.AI.RealtimeClientMessage * System.Threading.CancellationToken -> System.Threading.Tasks.Task
Public Function SendAsync (message As RealtimeClientMessage, Optional cancellationToken As CancellationToken = Nothing) As Task
Parâmetros
- message
- RealtimeClientMessage
A mensagem do cliente a ser enviada.
- cancellationToken
- CancellationToken
Um token para cancelar a operação.
Retornos
Uma tarefa que representa a operação de envio assíncrona.
Comentários
Esse método permite enviar mensagens de cliente para a sessão a qualquer momento, o que pode ser usado para influenciar o comportamento ou o estado da sessão.
Observação de simultaneidade para implementadores de provedor:SendAsync(RealtimeClientMessage, CancellationToken) pode ser chamado simultaneamente de várias fontes. Por exemplo, um chamador pode transmitir áudio por meio de SendAsync(RealtimeClientMessage, CancellationToken) um thread enquanto middleware, como FunctionInvokingRealtimeClientSession chamadas SendAsync(RealtimeClientMessage, CancellationToken) para retornar resultados de ferramentas de dentro GetStreamingResponseAsync(CancellationToken) da enumeração em outro thread. Se o transporte subjacente (por exemplo, um WebSocket) não oferecer suporte a envios simultâneos, as implementações do provedor deverão serializar o acesso , por exemplo, usando um SemaphoreSlim – para evitar violações de protocolo.