Text v reálném čase
Důležité
Funkce popsané v tomto článku jsou aktuálně ve verzi Public Preview. Tato verze Preview je poskytována bez smlouvy o úrovni služeb a nedoporučujeme ji pro produkční úlohy. Některé funkce se nemusí podporovat nebo mohou mít omezené možnosti. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.
Naučte se integrovat text v reálném čase (RTT) do volajících aplikací, abyste zlepšili přístupnost a zajistili efektivní komunikaci všech účastníků během schůzek.
RTT umožňuje uživatelům, kteří mají potíže s aktivní účastí, zadáním jejich zpráv, které se pak budou vysílat téměř v reálném čase ostatním účastníkům schůzky. Tato funkce funguje bezproblémově společně s existujícími titulky a zajišťuje, aby se zadané zprávy doručovaly okamžitě, aniž by tok konverzace narušoval.
Přehled funkce textu v reálném čase
Text v reálném čase (RTT) je navržený tak, aby usnadnil komunikaci pro uživatele, kteří mohou mít potíže s mluvením během hovorů. Díky tomu, že uživatelům umožníte psát zprávy, RTT zajistí, aby všichni účastníci schůzky mohli zůstat zasnoubení a informovaní. Zprávy se přenášejí přes datové kanály (ID 24) a jsou vždy aktivní a automaticky se zobrazují při odeslání první zprávy.
Na podporovaných platformách se data RTT dají zobrazit spolu s titulky odvozenými z řeči na text a poskytnout tak komplexní zobrazení veškeré komunikace během hovoru.
Konvence vytváření názvů
Různé platformy můžou pro vlastnosti související s RTT používat různou terminologii. Níže najdete souhrn těchto rozdílů:
Mobile (Android/iOS) | Windows (C#) |
---|---|
Typ | Kind |
Informace | Podrobnosti |
Tyto aliasy jsou funkčně ekvivalentní a používají se k zachování konzistence napříč různými platformami.
RealTimeTextInfo/Details – třída
Třída RealTimeTextInfo
(nebo RealTimeTextDetails
ve Windows) zapouzdřuje informace o každé zprávě RTT. Níže jsou uvedené klíčové vlastnosti:
Vlastnost | Popis |
---|---|
SequenceId |
Jedinečný identifikátor sekvence zpráv. |
Text |
Obsah zprávy RTT. |
Sender |
Informace o odesílateli zprávy |
ResultType /Kind |
Určuje, jestli je zpráva částečná nebo konečná. |
IsLocal |
Určuje, zda byla zpráva odeslána místním uživatelem. |
ReceivedTime |
Časové razítko, kdy byla zpráva přijata. |
UpdatedTime |
Časové razítko poslední aktualizace zprávy |
Modely
Název | Popis |
---|---|
RealTimeTextInfo |
Představuje položku textové zprávy v reálném čase, včetně informací o odesílateli, obsahu zprávy, ID sekvence a stavu. |
Získat funkci textu v reálném čase
Pokud chcete získat přístup k funkci Text v reálném čase, načtěte ji z objektu Call
:
RealTimeTextCallFeature rttFeature = call.feature(Features.REAL_TIME_TEXT);
Využití funkcí
Odesílání textových zpráv v reálném čase
Vytvořte vazbu textového vstupního pole na metodu send()
pro přenos zpráv jako typy uživatelů:
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...
});
Příjem textových zpráv v reálném čase
Přihlaste se k odběru OnInfoReceived
události pro zpracování příchozích zpráv:
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 – třída
Třída RealTimeTextInfo
poskytuje podrobné informace o každé textové zprávě v reálném čase:
- Odesílatel: Informace o tom, kdo zprávu poslal.
- SequenceId: Jedinečný identifikátor zprávy.
- Text: Obsah zprávy.
- ResultType: Označuje, jestli je zpráva částečná nebo finalizovaná.
- ReceivedTime: Časové razítko při přijetí zprávy.
- UpdatedTime: Časové razítko, kdy byla zpráva naposledy aktualizována.
- IsLocal: Označuje, zda byla zpráva odeslána místním uživatelem.
Modely
Název | Popis |
---|---|
RealTimeTextInfo |
Představuje položku textové zprávy v reálném čase, včetně informací o odesílateli, obsahu zprávy, ID sekvence a stavu. |
Získat funkci textu v reálném čase
Přístup k funkci Text v reálném čase z objektu Call
:
let rttFeature = call.feature(Features.realTimeText)
Využití funkcí
Odesílání textových zpráv v reálném čase
Vytvořte vazbu textového vstupního pole na metodu send
pro přenos zpráv jako typy uživatelů:
@State var messageText: String = ""
TextField("Type your message", text: $messageText)
.onChange(of: messageText) { newText in
rttFeature?.send(newText)
}
Příjem textových zpráv v reálném čase
Přihlaste se k odběru OnInfoReceived
události pro zpracování příchozích zpráv:
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 – třída
Třída RealTimeTextInfo
poskytuje podrobné informace o každé textové zprávě v reálném čase:
- Odesílatel: Informace o tom, kdo zprávu poslal.
- SequenceId: Jedinečný identifikátor zprávy.
- Text: Obsah zprávy.
- ResultType: Označuje, jestli je zpráva částečná nebo finalizovaná.
- ReceivedTime: Časové razítko při přijetí zprávy.
- UpdatedTime: Časové razítko, kdy byla zpráva naposledy aktualizována.
- IsLocal: Označuje, zda byla zpráva odeslána místním uživatelem.
Modely
Název | Popis |
---|---|
RealTimeTextDetails |
Představuje položku textové zprávy v reálném čase, včetně informací o odesílateli, obsahu zprávy, ID sekvence a stavu. |
Získat funkci textu v reálném čase
Načtěte z objektu funkci Text v Call
reálném čase:
RealTimeTextCallFeature rttFeature = call.GetRealTimeTextCallFeature();
Využití funkcí
Odesílání textových zpráv v reálném čase
Připojte textové vstupní pole k Send
metodě pro přenos zpráv jako typy uživatelů:
TextBox messageTextBox = new TextBox();
messageTextBox.TextChanged += (sender, args) => {
string text = messageTextBox.Text;
rttFeature.Send(text);
};
Příjem textových zpráv v reálném čase
Přihlaste se k odběru DetailsReceived
události pro zpracování příchozích zpráv:
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 – třída
Třída RealTimeTextDetails
poskytuje komplexní informace o každé textové zprávě v reálném čase:
- Odesílatel: Informace o tom, kdo zprávu poslal.
- SequenceId: Jedinečný identifikátor zprávy.
- Text: Obsah zprávy.
- Druh: Označuje, jestli je zpráva částečná nebo finalizovaná.
- ReceivedTime: Časové razítko při přijetí zprávy.
- UpdatedTime: Časové razítko, kdy byla zpráva naposledy aktualizována.
- IsLocal: Označuje, zda byla zpráva odeslána místním uživatelem.
Další kroky
Další informace najdete v následujících článcích: