Aktivieren von Untertiteln für Teams-Interoperabilität

Hier erfahren Sie, wie Sie Ihren Benutzern das Aktivieren von Untertiteln während eines Teams-Interoperabilitätsszenarios ermöglichen, in dem sich Ihre Benutzer möglicherweise in einer Besprechung zwischen einem Azure Communication Services-Benutzer und einem Teams-Clientbenutzer befinden oder bei dem Ihre Benutzer das Azure Communication Services Calling SDK mit ihrer Microsoft 365-Identität verwenden.

Voraussetzungen

Hinweis

Bitte beachten Sie, dass Sie über eine Sprachanruf-App mit Azure Communication Services-Anruf-SDKs verfügen müssen, um auf das Feature für Untertitel zuzugreifen, das in diesem Handbuch beschrieben wird.

Modelle

Name Beschreibung
CaptionsCallFeature API für Feature zum Aufrufen von Untertiteln
TeamsCaptions API für Teams-Untertitel
StartCaptionOptions Untertiteloptionen wie gesprochene Sprache
TeamsCaptionsReceivedEventArgs Empfangenes Datenobjekt für jedes Ereignis, bei dem Teams-Untertitel empfangen wurden

Feature Untertitel abrufen

Benutzer mit externen Identitäten und Microsoft 365-Benutzer

Wenn Sie eine Anwendung erstellen, mit der Azure Communication Services-Benutzer an einer Teams-Besprechung teilnehmen können

CaptionsCallFeature captionsCallFeature = call.Features.Captions;
CallCaptions callCaptions = await captionsCallFeature.GetCaptionsAsync();
if (callCaptions.CaptionsKind == CaptionsKind.TeamsCaptions)
{
    TeamsCaptions teamsCaptions = callCaptions as TeamsCaptions;
} 

Abonnieren von Listenern

Hinzufügen eines Listeners zum Empfangen des Untertitelstatus „aktiviert/deaktiviert“

teamsCaptions.CaptionsEnabledChanged += OnIsCaptionsEnabledChanged;

private void OnIsCaptionsEnabledChanged(object sender, PropertyChangedEventArgs args)
{
    if (teamsCaptions.IsEnabled)
    {
    }
}

Hinzufügen eines Listeners für empfangene Untertiteldaten

teamsCaptions.CaptionsReceived += OnCaptionsReceived;

private void OnCaptionsReceived(object sender, TeamsCaptionsReceivedEventArgs eventArgs)
{
    // Information about the speaker.
    // eventArgs.Speaker
    // The original text with no transcribed.
    // eventArgs.SpokenText
    // language identifier for the captions text.
    // eventArgs.CaptionLanguage
    // language identifier for the speaker.
    // eventArgs.SpokenLanguage
    // The transcribed text.
    // eventArgs.CaptionText
    // Timestamp denoting the time when the corresponding speech was made.
    // eventArgs.Timestamp
    // CaptionsResultKind is Partial if text contains partially spoken sentence.
    // It is set to Final once the sentence has been completely transcribed.
    // eventArgs.ResultKind
}

Hinzufügen eines Listeners zum Empfangen des geänderten Status der aktiv gesprochenen Sprache

teamsCaptions.ActiveSpokenLanguageChanged += OnIsActiveSpokenLanguageChanged;

private void OnIsActiveSpokenLanguageChanged(object sender, PropertyChangedEventArgs args)
{
    // teamsCaptions.ActiveSpokenLanguage
}

Hinzufügen eines Listeners zum Empfangen des geänderten Status der aktiven Untertitelsprache

teamsCaptions.ActiveCaptionLanguageChanged += OnIsActiveCaptionLanguageChanged;

private void OnIsActiveCaptionLanguageChanged(object sender, PropertyChangedEventArgs args)
{
    // teamsCaptions.ActiveCaptionLanguage
}

Starten von Untertiteln

Nachdem Sie alle Ihre Listener eingerichtet haben, können Sie jetzt mit dem Hinzufügen von Untertiteln beginnen.


private async void StartCaptions()
{
    var options = new StartCaptionsOptions
    {
        SpokenLanguage = "en-us"
    };
    try
    {
        await teamsCaptions.StartCaptionsAsync(options);
    }
    catch (Exception ex)
    {
    }
}

Beenden von Beschriftungen

private async void StopCaptions()
{
    try
    {
        await teamsCaptions.StopCaptionsAsync();
    }
    catch (Exception ex)
    {
    }
}

Listener des empfangenen Untertitels entfernen

teamsCaptions.CaptionsReceived -= OnCaptionsReceived;

Sprachunterstützung

Liste der unterstützten gesprochenen Sprachen abrufen

Rufen Sie eine Liste der unterstützten gesprochenen Sprachen ab, aus denen Ihre Benutzer auswählen können, wenn Untertitel aktiviert werden.

// bcp 47 formatted language code
IReadOnlyList<string> sLanguages = teamsCaptions.SupportedSpokenLanguages;```

### Set spoken language 
When the user selects the spoken language, your app can set the spoken language that it expects captions to be generated from. 

``` cs 
public async void SetSpokenLanguage()
{
    try
    {
        await teamsCaptions.SetSpokenLanguageAsync("en-us");
    }
    catch (Exception ex)
    {
    }
}

Unterstützung für die Untertitelsprache

Abrufen der unterstützten Untertitelsprache

Wenn Ihre Organisation über eine aktive Teams Premium-Lizenz verfügt, können Ihre Azure Communication Services-Benutzer übersetzte Untertitel aktivieren, solange der Organisator der Besprechung eine Teams Premium-Lizenz besitzt. Bei Benutzern mit Microsoft 365-Identitäten erfolgt diese Überprüfung mit ihrem eigenen Benutzerkonto, wenn der Besprechungsorganisator keine Teams Premium-Lizenz besitzt.

// ISO 639-1 formatted language code
IReadOnlyList<string> cLanguages = teamsCaptions.SupportedCaptionLanguages;

Festlegen der Untertitelsprache

public async void SetCaptionLanguage()
{
    try
    {
        await teamsCaptions.SetCaptionLanguageAsync("en");
    }
    catch (Exception ex)
    {
    }
}

Voraussetzungen

Hinweis

Bitte beachten Sie, dass Sie über eine Sprachanruf-App mit Azure Communication Services-Anruf-SDKs verfügen müssen, um auf das Feature für Untertitel zuzugreifen, das in diesem Handbuch beschrieben wird.

Modelle

Name Beschreibung
CaptionsCallFeature API für Beschriftungen
CaptionsCommon Basisklasse für Beschriftungen
StartCaptionOptions Untertiteloptionen wie gesprochene Sprache
TeamsCaptionHandler Rückrufdefinition für die Behandlung des CaptionsReceivedEventType-Ereignisses
TeamsCaptionsInfo Datenstruktur, die für jedes CaptionsReceivedEventType-Ereignis empfangen wird

Feature Untertitel abrufen

Benutzer mit externer Identität

Wenn Sie eine Anwendung erstellen, mit der Azure Communication Services-Benutzer an einer Teams-Besprechung teilnehmen können

let captionsCallFeature: SDK.CaptionsCallFeature = call.feature(SDK.Features.Captions);

Microsoft 365-Benutzer

let captionsCallFeature: SDK.CaptionsCallFeature = teamsCall.feature(SDK.Features.Captions);

Abrufen des Teams-Untertitelobjekts

Sie müssen das Teams-Untertitelobjekt abrufen und umwandeln, um bestimmte Features von Teams-Untertiteln zu nutzen.

let teamsCaptions: SDK.TeamsCaptions;
if (captionsCallFeature.captions.kind === 'TeamsCaptions') {
    teamsCaptions = captionsCallFeature.captions as SDK.TeamsCaptions;
}

Abonnieren von Listenern

Hinzufügen eines Listeners zum Empfangen von Beschriftungen mit aktivem/inaktivem Status

const captionsActiveChangedHandler = () => {
    if (teamsCaptions.isCaptionsFeatureActive) {
        /* USER CODE HERE - E.G. RENDER TO DOM */
    }
}
teamsCaptions.on('CaptionsActiveChanged', captionsActiveChangedHandler);

Hinzufügen eines Listeners für empfangene Beschriftungsdaten

Verarbeiten Sie das zurückgegebene TeamsCaptionsInfo-Datenobjekt.

Hinweis: Das Objekt enthält eine resultType-Eigenschaft, die angibt, ob es sich bei den Daten um eine Teilbeschriftung oder eine endgültige Version der Beschriftung handelt. ResultType partial gibt live unbearbeitete Beschriftung an, während final eine endgültige interpretierte Version des Satzes (d. h. Interpunktion und Großschreibung) angibt.

let currentCaptionLanguage : string;
const captionsReceivedHandler : TeamsCaptionsHandler = (data: TeamsCaptionsInfo) => { 
    /** USER CODE HERE - E.G. RENDER TO DOM 
     * data.captionLanguage
     * data.captionText
     * data.resultType
     * data.speaker
     * data.spokenText
     * data.timeStamp
    */
   // Example code:
   // Create a dom element, i.e. div, with id "captionArea" before proceeding with the sample code
    if (!this._currentCaptionLanguage || this._currentCaptionLanguage === data.captionLanguage) {
        let mri: string;
        switch (data.speaker.identifier.kind) {
            case 'communicationUser': { mri = data.speaker.identifier.communicationUserId; break; }
            case 'microsoftTeamsUser': { mri = data.speaker.identifier.microsoftTeamsUserId; break; }
            case 'phoneNumber': { mri = data.speaker.identifier.phoneNumber; break; }
        }
        const outgoingCaption = `prefix${mri.replace(/:/g, '').replace(/-/g, '')}`;

        let captionArea = document.getElementById("captionArea");
        const captionText = `${data.timestamp.toUTCString()}
            ${data.speaker.displayName}: ${data.captionText ?? data.spokenText}`;

        let foundCaptionContainer = captionArea.querySelector(`.${outgoingCaption}[isNotFinal='true']`);
        if (!foundCaptionContainer) {
            let captionContainer = document.createElement('div');
            captionContainer.setAttribute('isNotFinal', 'true');
            captionContainer.style['borderBottom'] = '1px solid';
            captionContainer.style['whiteSpace'] = 'pre-line';
            captionContainer.textContent = captionText;
            captionContainer.classList.add(newClassName);

            captionArea.appendChild(captionContainer);
        } else {
            foundCaptionContainer.textContent = captionText;

            if (captionData.resultType === 'Final') {
                foundCaptionContainer.setAttribute('isNotFinal', 'false');
            }
        }
    }
}; 
teamsCaptions.on('CaptionsReceived', captionsReceivedHandler); 

Hinzufügen eines Listeners zum Empfangen des Status Gesprochene Sprache geändert

const spokenLanguageChangedHandler = () => {
    if (teamsCaptions.activeSpokenLanguage !== currentSpokenLanguage) {
        /* USER CODE HERE - E.G. RENDER TO DOM */
    }
}
teamsCaptions.on('SpokenLanguageChanged', spokenLanguageChangedHandler)

Hinzufügen eines Listeners zum Empfangen des geänderten Status der Untertitelsprache

const captionLanguageChangedHandler = () => {
    if (teamsCaptions.activeCaptionLanguage !== currentCaptionLanguage) {
        /* USER CODE HERE - E.G. RENDER TO DOM */
    }
}
teamsCaptions.on('CaptionLanguageChanged', captionLanguageChangedHandler)

Starten von Untertiteln

Nachdem Sie alle Ihre Listener eingerichtet haben, können Sie jetzt mit dem Hinzufügen von Untertiteln beginnen.

try {
    await teamsCaptions.startCaptions({ spokenLanguage: 'en-us' });
} catch (e) {
    /* USER ERROR HANDLING CODE HERE */
}

Beenden von Beschriftungen

try {
    teamsCaptions.stopCaptions(); 
} catch (e) {
    /* USER ERROR HANDLING CODE HERE */
}

Kündigen des Abonnements für Listener

teamsCaptions.off('CaptionsActiveChanged', captionsActiveChangedHandler);
teamsCaptions.off('CaptionsReceived', captionsReceivedHandler); 

Sprachunterstützung

Abrufen einer Liste der unterstützten gesprochenen Sprachen

Rufen Sie eine Liste der unterstützten gesprochenen Sprachen ab, aus denen Ihre Benutzer auswählen können, wenn Untertitel aktiviert werden. Die Eigenschaft gibt ein Array von Sprachen im bcp 47-Format zurück.

const spokenLanguages = teamsCaptions.supportedSpokenLanguages; 

Festlegen der gesprochenen Sprache

Übergeben Sie einen Wert aus dem Array mit den unterstützten gesprochenen Sprachen, um sicherzustellen, dass die angeforderte Sprache unterstützt wird. Wenn contoso standardmäßig keine Sprache oder eine nicht unterstützte Sprache bereitstellt, wird die gesprochene Sprache standardmäßig auf "en-us" festgelegt.

// bcp 47 formatted language code
const language = 'en-us'; 

// Altneratively, pass a value from the supported spoken languages array
const language = spokenLanguages[0]; 

try {
    teamsCaptions.setSpokenLanguage(language);
} catch (e) {
    /* USER ERROR HANDLING CODE HERE */
}

Unterstützung für die Untertitelsprache

Abrufen einer Liste der unterstützten Untertitelsprachen

Wenn Ihre Organisation über eine aktive Teams Premium-Lizenz verfügt, können Sie Ihren Benutzern erlauben, übersetzte Untertitel zu verwenden, die von Teams bereitgestellt werden. Wenn der Besprechungsorganisator nicht über eine aktive Teams Premium-Lizenz verfügt, wird bei Benutzern mit einer Microsoft 365-Identität die Untertitelsprachprüfung für das Microsoft 365-Benutzerkonto durchgeführt.

Die Eigenschaft gibt ein Array von Sprachcodes mit zwei Buchstaben entsprechend dem Standard von ISO 639-1 zurück.

const captionLanguages = teamsCaptions.supportedCaptionLanguages;

Festlegen der Untertitelsprache

// ISO 639-1 formatted language code
const language = 'en'; 

// Altneratively, pass a value from the supported caption languages array
const language = captionLanguages[0];
try {
    teamsCaptions.setCaptionLanguage(language);
} catch (e) {
    /* USER ERROR HANDLING CODE HERE */
}

Voraussetzungen

Hinweis

Bitte beachten Sie, dass Sie über eine Sprachanruf-App mit Azure Communication Services-Anruf-SDKs verfügen müssen, um auf das Feature für Untertitel zuzugreifen, das in diesem Handbuch beschrieben wird.

Modelle

Name Beschreibung
CaptionsCallFeature API für Feature zum Aufrufen von Untertiteln
TeamsCaptions API für Teams-Untertitel
StartCaptionOptions Untertiteloptionen wie gesprochene Sprache
TeamsCaptionsListener Listener für TeamsCaptions addOnCaptionsReceivedListener
TeamsCaptionsReceivedEvent Für jedes TeamsCaptionsListener-Ereignis empfangenes Datenobjekt

Feature Untertitel abrufen

Benutzer mit externen Identitäten und Microsoft 365-Benutzer

Wenn Sie eine Anwendung erstellen, mit der Benutzer an einer Teams-Besprechung teilnehmen können

CaptionsCallFeature captionsCallFeature = call.feature(Features.CAPTIONS);
captionsCallFeature.getCaptions().whenComplete(
    ((captions, throwable) -> {
        if (throwable == null) {
            CallCaptions callCaptions = captions;
            if (captions.getCaptionsType() == CaptionsType.TEAMS_CAPTIONS) {
            // teams captions
            TeamsCaptions teamsCaptions = (TeamsCaptions) captions;
            }
        } else {
        // get captions failed
        // throwable is the exception/cause
        }
    }));

Abonnieren von Listenern

Hinzufügen eines Listeners zum Empfangen des Untertitelstatus „aktiviert/deaktiviert“

public void addOnIsCaptionsEnabledChangedListener() {
    teamsCaptions.addOnCaptionsEnabledChangedListener( (PropertyChangedEvent args) -> {
        if(teamsCaptions.isEnabled()) {
            // captions enabled
        }
    });
}

Hinzufügen eines Listeners für empfangene Untertiteldaten

TeamsCaptionsListener captionsListener = (TeamsCaptionsReceivedEvent args) -> {
  // Information about the speaker.
  // CallerInfo participantInfo = args.getSpeaker();
  // The original text with no transcribed.
  // args.getSpokenText();
  // language identifier for the captions text.
  // args.getCaptionLanguage();
  // language identifier for the speaker.
  // args.getSpokenLanguage();
  // The transcribed text.
  // args.getCaptionText();
  // Timestamp denoting the time when the corresponding speech was made.
  // args.getTimestamp();
  // CaptionsResultType is Partial if text contains partially spoken sentence.
  // It is set to Final once the sentence has been completely transcribed.
  // args.getResultType() == CaptionsResultType.FINAL;
}; 
public void addOnCaptionsReceivedListener() {
  teamsCaptions.addOnCaptionsReceivedListener(captionsListener); 
}

Hinzufügen eines Listeners zum Empfangen des geänderten Status der aktiv gesprochenen Sprache

public void addOnActiveSpokenLanguageChangedListener() {
    teamsCaptions.addOnActiveSpokenLanguageChangedListener( (PropertyChangedEvent args) -> {
       // teamsCaptions.getActiveSpokenLanguage()
    });
}

Hinzufügen eines Listeners zum Empfangen des geänderten Status der aktiven Untertitelsprache

public void addOnActiveCaptionLanguageChangedListener() {
    teamsCaptions.addOnActiveCaptionLanguageChangedListener( (PropertyChangedEvent args) -> {
       // teamsCaptions.getActiveCaptionLanguage()
    });
}

Starten von Untertiteln

Nachdem Sie alle Ihre Listener eingerichtet haben, können Sie jetzt mit dem Hinzufügen von Untertiteln beginnen.

public void startCaptions() {
    StartCaptionsOptions startCaptionsOptions = new StartCaptionsOptions();
    startCaptionsOptions.setSpokenLanguage("en-us");
    teamsCaptions.startCaptions(startCaptionsOptions).whenComplete((result, error) -> {
        if (error != null) {
        }
    });
}

Beenden von Beschriftungen

public void stopCaptions() {
    teamsCaptions.stopCaptions().whenComplete((result, error) -> {
        if (error != null) {
        }
    });
}

Listener des empfangenen Untertitels entfernen

public void removeOnCaptionsReceivedListener() {
    teamsCaptions.removeOnCaptionsReceivedListener(captionsListener);
}

Sprachunterstützung

Liste der unterstützten gesprochenen Sprachen abrufen

Rufen Sie eine Liste der unterstützten gesprochenen Sprachen ab, aus denen Ihre Benutzer auswählen können, wenn Untertitel aktiviert werden.

// bcp 47 formatted language code
teamsCaptions.getSupportedSpokenLanguages();

Festlegen der gesprochenen Sprache

Wenn der Benutzer die gesprochene Sprache auswählt, kann Ihre App die gesprochene Sprache festlegen, in der die Untertitel generiert werden sollen.

public void setSpokenLanguage() {
    teamsCaptions.setSpokenLanguage("en-us").whenComplete((result, error) -> {
        if (error != null) {
        }
    });
}

Unterstützung für die Untertitelsprache

Abrufen der unterstützten Untertitelsprache

Wenn Ihre Organisation über eine aktive Teams Premium-Lizenz verfügt, können Ihre Azure Communication Services-Benutzer übersetzte Untertitel aktivieren, solange der Organisator der Besprechung eine Teams Premium-Lizenz besitzt. Bei Benutzern mit Microsoft 365-Identitäten erfolgt diese Überprüfung mit ihrem eigenen Benutzerkonto, wenn der Besprechungsorganisator keine Teams Premium-Lizenz besitzt.

// ISO 639-1 formatted language code
teamsCaptions.getSupportedCaptionLanguages();

Festlegen der Untertitelsprache

public void setCaptionLanguage() {
    teamsCaptions.setCaptionLanguage("en").whenComplete((result, error) -> {
        if (error != null) {
        }
    });
}

Voraussetzungen

Hinweis

Bitte beachten Sie, dass Sie über eine Sprachanruf-App mit Azure Communication Services-Anruf-SDKs verfügen müssen, um auf das Feature für Untertitel zuzugreifen, das in diesem Handbuch beschrieben wird.

Modelle

Name Beschreibung
CaptionsCallFeature API für Feature zum Aufrufen von Untertiteln
TeamsCaptions API für Teams-Untertitel
StartCaptionOptions Untertiteloptionen wie gesprochene Sprache
TeamsCaptionsDelegate Delegat für Teams-Untertitel
TeamsCaptionsReceivedEventArgs Empfangenes Datenobjekt für jedes Ereignis, bei dem Teams-Untertitel empfangen wurden

Feature Untertitel abrufen

Benutzer mit externen Identitäten und Microsoft 365-Benutzer

Wenn Sie eine Anwendung erstellen, mit der Azure Communication Services-Benutzer an einer Teams-Besprechung teilnehmen können

if let call = self.call {
    @State var captionsCallFeature = call.feature(Features.captions)
    captionsCallFeature.getCaptions{(value, error) in
        if let error = error {
            // failed to get captions
        } else {
            if (value?.type == CaptionsType.teamsCaptions) {
                // teams captions
                @State var teamsCaptions = value as? TeamsCaptions
            }
        }
    }
}

Abonnieren von Listenern

Hinzufügen eines Listeners zum Empfangen des Untertitelstatus „aktiviert/deaktiviert“, der gesprochenen Sprache, des geänderten Status der Untertitelsprache und der empfangene Daten

extension CallObserver: TeamsCaptionsDelegate {
    // listener for receive captions enabled/disabled status
    public func teamsCaptions(_ teamsCaptions: TeamsCaptions, didChangeCaptionsEnabledState args: PropertyChangedEventArgs) {
        // teamsCaptions.isEnabled
    }
    
    // listener for active spoken language state change
    public func teamsCaptions(_ teamsCaptions: TeamsCaptions, didChangeActiveSpokenLanguageState args: PropertyChangedEventArgs) {
        // teamsCaptions.activeSpokenLanguage
    }
    
    // listener for active caption language state change
    public func teamsCaptions(_ teamsCaptions: TeamsCaptions, didChangeActiveCaptionLanguageState args: PropertyChangedEventArgs) {
        // teamsCaptions.activeCaptionLanguage
    }
    
    // listener for captions data received
    public func teamsCaptions(_ teamsCaptions: TeamsCaptions, didReceiveCaptions:TeamsCaptionsReceivedEventArgs) {
            // Information about the speaker.
            // didReceiveCaptions.speaker
            // The original text with no transcribed.
            // didReceiveCaptions.spokenText
            // language identifier for the captions text.
            // didReceiveCaptions.captionLanguage
            // language identifier for the speaker.
            // didReceiveCaptions.spokenLanguage
            // The transcribed text.
            // didReceiveCaptions.captionText
            // Timestamp denoting the time when the corresponding speech was made.
            // didReceiveCaptions.timestamp
            // CaptionsResultType is Partial if text contains partially spoken sentence.
            // It is set to Final once the sentence has been completely transcribed.
            // didReceiveCaptions.resultType
    }
}

teamsCaptions.delegate = self.callObserver

Starten von Untertiteln

Nachdem Sie alle Ihre Listener eingerichtet haben, können Sie jetzt mit dem Hinzufügen von Untertiteln beginnen.

func startCaptions() {
    guard let teamsCaptions = teamsCaptions else {
        return
    }
    let startCaptionsOptions = StartCaptionsOptions()
    startCaptionsOptions.spokenLanguage = "en-us"
    teamsCaptions.startCaptions(startCaptionsOptions: startCaptionsOptions, completionHandler: { (error) in
        if error != nil {
            
        }
    })
}

Beenden von Beschriftungen

func stopCaptions() {
    teamsCaptions.stopCaptions(completionHandler: { (error) in
        if error != nil {
            
        }
    })
}

Listener des empfangenen Untertitels entfernen

teamsCaptions?.delegate = nil

Sprachunterstützung

Liste der unterstützten gesprochenen Sprachen abrufen

Rufen Sie eine Liste der unterstützten gesprochenen Sprachen ab, aus denen Ihre Benutzer auswählen können, wenn Untertitel aktiviert werden.

// bcp 47 formatted language code
let spokenLanguage : String = "en-us"
for language in teamsCaptions?.supportedSpokenLanguages ?? [] {
    // choose required language
    spokenLanguage = language
}

Festlegen der gesprochenen Sprache

Wenn der Benutzer die gesprochene Sprache auswählt, kann Ihre App die gesprochene Sprache festlegen, in der die Untertitel generiert werden sollen.

func setSpokenLanguage() {
    guard let teamsCaptions = self.teamsCaptions else {
        return
    }

    teamsCaptions.set(spokenLanguage: spokenLanguage, completionHandler: { (error) in
        if let error = error {
        }
    })
}

Unterstützung für die Untertitelsprache

Abrufen der unterstützten Untertitelsprache

Wenn Ihre Organisation über eine aktive Teams Premium-Lizenz verfügt, können Ihre Azure Communication Services-Benutzer übersetzte Untertitel aktivieren, solange der Organisator der Besprechung eine Teams Premium-Lizenz besitzt. Bei Benutzern mit Microsoft 365-Identitäten erfolgt diese Überprüfung mit ihrem eigenen Benutzerkonto, wenn der Besprechungsorganisator keine Teams Premium-Lizenz besitzt.

// ISO 639-1 formatted language code
let captionLanguage : String = "en"
for language in teamsCaptions?.supportedCaptionLanguages ?? [] {
    // choose required language
    captionLanguage = language
}

Festlegen der Untertitelsprache

func setCaptionLanguage() {
    guard let teamsCaptions = self.teamsCaptions else {
        return
    }

    teamsCaptions.set(captionLanguage: captionLanguage, completionHandler: { (error) in
        if let error = error {
        }
    })
}

Bereinigen von Ressourcen

Wenn Sie ein Communication Services-Abonnement bereinigen und entfernen möchten, können Sie die Ressource oder die Ressourcengruppe löschen. Wenn Sie die Ressourcengruppe löschen, werden auch alle anderen Ressourcen gelöscht, die ihr zugeordnet sind. Weitere Informationen zum Bereinigen von Ressourcen finden Sie hier.

Nächste Schritte

Weitere Informationen finden Sie in den folgenden Artikeln: