Swift

Intégration avec Vonage Video Manager

Maintenant que le pilote est construit, vous devez indiquer au SDK de Vonage d'utiliser votre pilote au lieu du pilote par défaut. Cela se fera dans votre VonageVideoManager.swift.

import OpenTok
import SwiftUI

final class VonageVideoManager: NSObject, ObservableObject {
    let kAppId = "YOUR_APP_ID"
    let kSessionId = "YOUR_SESSION_ID"
    let kToken = "YOUR_TOKEN"

    private var myAudioDevice: AudioDeviceRingtone?

    /**
     * The setup needs to be called in order to activate the VonageVideoMAnager
     * it can be used e.g. in the .task { } method, when the view gets loaded
     **/
    public func setup() {
        // 1. Initialize your custom audio device with a ringtone file
        if let path = Bundle.main.path(forResource: "bananaphone", ofType: "mp3") {
            myAudioDevice = AudioDeviceRingtone(ringtone: URL(fileURLWithPath: path))
            // 2. Set the global audio device for Vonage SDK
            // IMPORTANT: This must be done before creating a session
            OTAudioDeviceManager.setAudioDevice(myAudioDevice)
        }
        doConnect()
    }

    // ... Session connection logic (doConnect, etc) ...
    
}

Pilote audio personnalisé

Apprenez à utiliser un pilote audio personnalisé pour personnaliser le flux audio de l'éditeur et de l'abonné. Vous utiliserez le pilote audio personnalisé lorsque vous voudrez démarrer et arrêter l'audio, lire votre propre fichier audio et faire quoi que ce soit en dehors du comportement par défaut du chat vidéo en direct fourni par le SDK.

Disponible sur :
Kotlin Swift
Étapes
1
Introduction
2
Pour commencer
3
Création d'un nouveau projet
4
Ajout du SDK vidéo de Vonage
5
Configuration de l'authentification
6
Vue d'ensemble
7
Créer la classe de pilote audio personnalisée
8
Mise en œuvre de la logique "Play Ringtone" (Jouer une sonnerie)
9
Mise en œuvre de la logique d'arrêt des sonneries
10
Intégration avec Vonage Video Manager
11
Contrôle de l'audio via les événements de session
12
Comment ça marche
13
Conclusion