Texto em tempo real
Importante
A funcionalidade descrita neste artigo está atualmente em visualização pública. Esta versão de pré-visualização é fornecida sem um contrato de nível de serviço e não a recomendamos para cargas de trabalho de produção. Algumas funcionalidades poderão não ser suportadas ou poderão ter capacidades limitadas. Para obter mais informações, veja Termos Suplementares de Utilização para Pré-visualizações do Microsoft Azure.
Saiba como integrar Texto em Tempo Real (RTT) em seus aplicativos de chamada para melhorar a acessibilidade e garantir que todos os participantes possam se comunicar de forma eficaz durante as reuniões.
O RTT permite que os usuários que têm dificuldade em falar participem ativamente digitando suas mensagens, que são transmitidas quase em tempo real para outros participantes da reunião. Esse recurso opera perfeitamente ao lado das legendas existentes e garante que as mensagens digitadas sejam prontamente entregues sem interromper o fluxo da conversa.
Visão geral do recurso de texto em tempo real
O Texto em Tempo Real (RTT) foi concebido para facilitar a comunicação dos utilizadores que possam ter dificuldade em falar durante as chamadas. Ao permitir que os usuários digitem suas mensagens, o RTT garante que todos na reunião possam permanecer envolvidos e informados. As mensagens são transmitidas através de Canais de Dados (ID 24) e estão sempre ativas, aparecendo automaticamente quando a primeira mensagem é enviada.
Nas plataformas suportadas, os dados RTT podem ser exibidos ao lado de legendas derivadas de Fala para Texto, fornecendo uma visão abrangente de todas as comunicações durante uma chamada.
Convenções de nomenclatura
Diferentes plataformas podem usar terminologia variada para propriedades relacionadas ao RTT. Abaixo está um resumo dessas diferenças:
Telemóvel (Android/iOS) | Janelas (C#) |
---|---|
Tipo | Variante |
Informação | Detalhes |
Esses aliases são funcionalmente equivalentes e são usados para manter a consistência em diferentes plataformas.
RealTimeTextInfo/Details Classe
A RealTimeTextInfo
classe (ou RealTimeTextDetails
no Windows) encapsula informações sobre cada mensagem RTT. Abaixo estão as principais propriedades:
Property | Description |
---|---|
SequenceId |
Identificador exclusivo para a sequência de mensagens. |
Text |
O conteúdo da mensagem RTT. |
Sender |
Informações sobre o remetente da mensagem. |
ResultType /Kind |
Indica se a mensagem é parcial ou final. |
IsLocal |
Determina se a mensagem foi enviada pelo usuário local. |
ReceivedTime |
Carimbo de data/hora quando a mensagem foi recebida. |
UpdatedTime |
Carimbo de data/hora quando a mensagem foi atualizada pela última vez. |
Modelos
Nome | Descrição |
---|---|
RealTimeTextInfo |
Representa uma entrada de mensagem de texto em tempo real, incluindo informações do remetente, conteúdo da mensagem, ID de sequência e status. |
Obtenha o recurso de texto em tempo real
Para acessar o recurso Texto em Tempo Real, recupere-o do Call
objeto:
RealTimeTextCallFeature rttFeature = call.feature(Features.REAL_TIME_TEXT);
Uso de recursos
Enviar mensagens de texto em tempo real
Vincular um campo de entrada de texto ao send()
método para transmitir mensagens à medida que o usuário digita:
EditText messageEditText = findViewById(R.id.messageEditText);
messageEditText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
String text = s.toString();
rttFeature.send(text);
}
// Other overridden methods...
});
Receber mensagens de texto em tempo real
Inscreva-se no evento para lidar com as OnInfoReceived
mensagens recebidas:
rttFeature.addOnInfoReceivedListener((eventArgs) -> {
RealTimeTextInfo info = eventArgs.getInfo();
// Update your message list with the new info
updateMessageList(info);
// Clear the text input if the message is local and finalized
if (info.isLocal() && info.getResultType() == RealTimeTextResultType.FINAL) {
messageEditText.getText().clear();
}
});
RealTimeTextInfo Classe
A RealTimeTextInfo
classe fornece informações detalhadas sobre cada mensagem de texto em tempo real:
- Remetente: informações sobre quem enviou a mensagem.
- SequenceId: identificador exclusivo da mensagem.
- Texto: O conteúdo da mensagem.
- ResultType: Indica se a mensagem é parcial ou finalizada.
- ReceivedTime: carimbo de data/hora quando a mensagem foi recebida.
- UpdatedTime: carimbo de data/hora quando a mensagem foi atualizada pela última vez.
- IsLocal: Indica se a mensagem foi enviada pelo usuário local.
Modelos
Nome | Descrição |
---|---|
RealTimeTextInfo |
Representa uma entrada de mensagem de texto em tempo real, incluindo informações do remetente, conteúdo da mensagem, ID de sequência e status. |
Obtenha o recurso de texto em tempo real
Aceda à funcionalidade Texto em Tempo Real a partir do seu Call
objeto:
let rttFeature = call.feature(Features.realTimeText)
Uso de recursos
Enviar mensagens de texto em tempo real
Vincular um campo de entrada de texto ao send
método para transmitir mensagens à medida que o usuário digita:
@State var messageText: String = ""
TextField("Type your message", text: $messageText)
.onChange(of: messageText) { newText in
rttFeature?.send(newText)
}
Receber mensagens de texto em tempo real
Inscreva-se no evento para lidar com as OnInfoReceived
mensagens recebidas:
rttFeature?.addOnInfoReceivedListener { eventArgs in
if let info = eventArgs.info {
// Update your message list with the new info
updateMessageList(info)
// Clear the text input if the message is local and finalized
if info.isLocal && info.resultType == .final {
self.messageText = ""
}
}
}
RealTimeTextInfo Classe
A RealTimeTextInfo
classe fornece informações detalhadas sobre cada mensagem de texto em tempo real:
- Remetente: informações sobre quem enviou a mensagem.
- SequenceId: identificador exclusivo da mensagem.
- Texto: O conteúdo da mensagem.
- ResultType: Indica se a mensagem é parcial ou finalizada.
- ReceivedTime: carimbo de data/hora quando a mensagem foi recebida.
- UpdatedTime: carimbo de data/hora quando a mensagem foi atualizada pela última vez.
- IsLocal: Indica se a mensagem foi enviada pelo usuário local.
Modelos
Nome | Descrição |
---|---|
RealTimeTextDetails |
Representa uma entrada de mensagem de texto em tempo real, incluindo informações do remetente, conteúdo da mensagem, ID de sequência e status. |
Obtenha o recurso de texto em tempo real
Recupere o recurso Texto em Tempo Real do Call
objeto:
RealTimeTextCallFeature rttFeature = call.GetRealTimeTextCallFeature();
Uso de recursos
Enviar mensagens de texto em tempo real
Conecte um campo de entrada de texto ao Send
método para transmitir mensagens à medida que o usuário digita:
TextBox messageTextBox = new TextBox();
messageTextBox.TextChanged += (sender, args) => {
string text = messageTextBox.Text;
rttFeature.Send(text);
};
Receber mensagens de texto em tempo real
Inscreva-se no evento para lidar com as DetailsReceived
mensagens recebidas:
rttFeature.DetailsReceived += (sender, e) => {
RealTimeTextDetails details = e.Details;
// Update your message list with the new details
UpdateMessageList(details);
// Clear the text input if the message is local and finalized
if (details.IsLocal && details.Kind == RealTimeTextResultKind.Final) {
messageTextBox.Text = string.Empty;
}
};
RealTimeTextDetails Classe
A RealTimeTextDetails
classe fornece informações abrangentes sobre cada mensagem de texto em tempo real:
- Remetente: informações sobre quem enviou a mensagem.
- SequenceId: identificador exclusivo da mensagem.
- Texto: O conteúdo da mensagem.
- Tipo: Indica se a mensagem é parcial ou finalizada.
- ReceivedTime: carimbo de data/hora quando a mensagem foi recebida.
- UpdatedTime: carimbo de data/hora quando a mensagem foi atualizada pela última vez.
- IsLocal: Indica se a mensagem foi enviada pelo usuário local.
Próximos passos
Para obter mais informações, consulte os seguintes artigos: