Sdílet prostřednictvím


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: