Conexión a la sesión
A continuación, nos conectaremos a la sesión de Vonage Video. Debes hacer esto antes de poder publicar tu transmisión de audio y video en la sesión o ver las transmisiones de otros participantes.
- Añadir un
sessiona la clase ViewController:
@interface ViewController()
@property (nonatomic) OTSession *session;
@end
En OTSesión está definida en el SDK de iOS. Representa una sesión de Vonage Video e incluye métodos para interactuar con la sesión.
- Añade un método para instanciar el
OTSessiony llamar a su[OTSession connectWithToken: error:]método. A continuación, puede llamarlo enviewDidLoad:
- (void)viewDidLoad {
[super viewDidLoad];
[self connectToAnOpenTokSession];
}
- (void)connectToAnOpenTokSession {
_session = [[OTSession alloc] initWithApplicationId:kAppId sessionId:kSessionId delegate:self];
NSError *error;
[_session connectWithToken:kToken error:&error];
if (error) {
NSLog(@"%@", error);
}
}
En [OTSession initWithApplicationId:sessionId:delegate:] recibe tres parámetros:
- Tu ID de APP de Vonage Video
- El identificador de sesión
- El objeto que implementa la función OTSessionDelegate protocolo
En [OTSession connectWithToken: error:] conecta la aplicación cliente a la sesión de Vonage Video. Debe conectarse antes de enviar o recibir secuencias de audio y video en la sesión (o antes de interactuar con la sesión de cualquier manera). El método toma dos parámetros:
tokenes el token de autenticación para que este cliente se conecte a la sesión de Vonage Video.errorse establece en unOTErrorsi se produce un error sincrónico al llamar al método.
- Cambie la declaración de la interfaz ViewController para indicar que la clase implementa la interfaz
OTSessionDelegateprotocolo:
@interface ViewController() <OTSessionDelegate>
A continuación implementaremos los métodos del OTSessionDelegate protocolo. Añada el siguiente código al final del archivo ViewController (antes de la clase @end declaración):
# pragma mark - OTSession delegate callbacks
- (void)sessionDidConnect:(OTSession*)session
{
NSLog(@"The client connected to the session.");
}
- (void)sessionDidDisconnect:(OTSession*)session
{
NSLog(@"The client disconnected from the OpenTok session.");
}
- (void) session:(OTSession*)session
didFailWithError:(OTError*)error
{
NSLog(@"The client failed to connect to the OpenTok session: (%@)", error);
}
- (void)session:(OTSession*)session
streamCreated:(OTStream *)stream
{
NSLog(@"A stream was created in the session.");
}
- (void)session:(OTSession*)session
streamDestroyed:(OTStream *)stream
{
NSLog(@"A stream was destroyed in the session.");
}
Este protocolo incluye métodos para manejar eventos relacionados con la sesión:
- Cuando el cliente se conecta a la sesión de Vonage Video, el
[OTSessionDelegate sessionDidConnect:]se envía el mensaje. - Si el cliente no logra conectarse a la sesión de Vonage Video, el
[OTSessionDelegate session:didFailWithError:]se envía el mensaje. - Cuando el cliente se desconecta de la sesión de Vonage Video, el
[OTSessionDelegate sessionDidDisconnect:]se envía el mensaje. - Cuando otro cliente publica un flujo a la sesión de Vonage Video, el
[OTSessionDelegate session:streamCreated:]se envía el mensaje. - Cuando otro cliente deja de publicar un flujo en la sesión de Vonage Video, el
[OTSessionDelegate session:streamDestroyed:]se envía el mensaje.
Por ahora, la aplicación imprime en la consola del depurador cuando se produce alguno de estos eventos.
Depura tu aplicación. Si la aplicación se conecta correctamente a la sesión de Vonage Video, aparecerá el mensaje [OTSessionDelegate sessionDidConnect:] debe imprimirse en la consola de depuración.
Videochat básico
Conoce los conceptos básicos de la plataforma de la Video API de Vonage, incluyendo cómo los usuarios pueden comunicarse a través de video, voz y mensajería. Explora un flujo básico de la Video API de Vonage.