Objective-C

S'abonner aux flux d'autres clients

Enfin, nous voulons que les clients puissent souscrire à (ou voir) les flux d'autres clients dans la session :

  1. Ajouter un subscriber à la propriété ViewController classe :
@interface ViewController() <OTSessionDelegate, OTPublisherDelegate>
@property (nonatomic) OTSession *session;
@property (nonatomic) OTPublisher *publisher;
@property (nonatomic) OTSubscriber *subscriber;
@end

Les Abonné OTS est définie dans le SDK iOS. Elle utilise la caméra et le microphone de l'appareil pour souscrire à une session vidéo Vonage.

  1. Modifier la mise en œuvre de la [OTSessionDelegate session: streamCreated] (l'une des méthodes OTSessionDelegate ) pour inclure du code permettant de s'abonner aux flux des autres clients de la session :
- (void)session:(OTSession*)session
streamCreated:(OTStream *)stream
{
    _subscriber = [[OTSubscriber alloc] initWithStream:stream
                                            delegate:self];
    OTError *error = nil;
    [_session subscribe:_subscriber error:&error];
    if (error)
    {
        NSLog(@"Unable to subscribe (%@)", error.localizedDescription);
        return;
    }
    [_subscriber.view setFrame:[UIScreen mainScreen].bounds];
    [self.view insertSubview:_subscriber.view atIndex:0];
}

Lorsqu'un autre client publie un flux dans une session, cette méthode est appelée et un message OTStream est transmis. L'objet OTStream est définie dans le SDK iOS et représente un flux audio-vidéo dans la session Vonage Video. Le code initialise une instance de la classe OTSubscriber définie dans le SDK iOS. La classe OTSubscriber() prend deux paramètres : le OTStream (pour le flux que vous souhaitez visualiser) et l'objet qui implémente la méthode OTSubscriberDelegate protocole.

  1. Modifier le ViewController pour indiquer que la classe met en œuvre l'interface OTSubscriberDelegate protocole :
@interface ViewController() <OTSessionDelegate, OTPublisherDelegate,OTSubscriberDelegate>

Ensuite, nous allons implémenter les méthodes du protocole OTSessionDelegate. Ajoutez le code suivant à la fin de la classe ViewController (avant la section @end ) :

# pragma mark - OTSubscriber delegate callbacks
- (void)subscriberDidConnectToStream:(OTSubscriberKit *)subscriber {
    NSLog(@"The subscirber: %@ did connect to the stream", subscriber);
}

- (void)subscriber:(OTSubscriberKit*)subscriber
    didFailWithError:(OTError*)error
{
    NSLog(@"subscriber %@ didFailWithError %@",
            subscriber.stream.streamId,
            error);
}
  • Si le client ne parvient pas à se connecter à la session Vonage Video, un message d'erreur s'affiche. OTError est passé dans l'objet subscriber(_: didFailWithError:) méthode.

Chat vidéo de base

Apprenez les concepts de base de la plateforme Video API de Vonage, y compris la façon dont les utilisateurs peuvent communiquer par le biais de la vidéo, de la voix et de la messagerie. Explorer un flux de base de l'API Video de Vonage.

Étapes
1
Introduction
2
Pour commencer
3
Création d'un nouveau projet
4
Ajout de la vidéothèque de Vonage
5
Configuration de l'authentification
6
Connexion à la session
7
Publication d'un flux dans la session
8
S'abonner aux flux d'autres clients
9
Exécution de l'application
10
Conclusion