Tutoriel sur le chat textuel (iOS)

Vue d'ensemble

L'API de signalisation OpenTok permet aux clients d'envoyer des messages texte à d'autres clients connectés à la session OpenTok. Vous pouvez envoyer un message de signalisation à un client spécifique ou à tous les clients connectés à la session.

Configuration de votre projet

Pour suivre ce tutoriel :

  1. Cloner OpenTok Exemples d'applications iOS référentiel sur GitHub :

    git clone https://github.com/opentok/opentok-ios-sdk-samples.git
    
  2. Dans le terminal, cd dans le sous-répertoire « Signaling » du projet, puis exécutez pod install.

  3. Ouvrez votre projet dans Xcode en double-cliquant sur le nouveau fichier Signaling.xcworkspace situé dans le répertoire Signaling.

  4. Ouvrez le fichier Config.h, puis définissez le SAMPLE_SERVER_BASE_URL chaîne à l'URL de base du serveur qui implémente le apprentissage-opentok-php projet. Ce serveur fournit l'identifiant de session et les jetons OpenTok à l'application iOS d'exemple. Pour plus d'informations, consultez Configuration de votre serveur.

Pour échanger des messages de chat entre deux clients connectés à la session OpenTok, vous pouvez exécuter l'application dans le simulateur Xcode et sur un appareil iOS.

Découverte du code

L'exemple d'archivage s'appuie sur le Exemple de chat vidéo de base, et il ajoute les fonctionnalités suivantes :

  • Appuyez dans le champ de saisie du chat textuel (intitulé « Appuyez ici pour envoyer un message »), saisissez votre message, puis appuyez sur le bouton « Entrée ».

    Le message de chat est envoyé aux autres clients connectés à la session OpenTok. Vous pouvez également envoyer un message de chat depuis les autres clients vers le client iOS.

Lorsque l'utilisateur saisit du texte dans le champ de saisie du chat, le [self sendChatMessage:] est appelée :

- (void) sendChatMessage
{
    OTError* error = nil;
    [_session signalWithType:@"chat"
                      string:_chatInputTextField.text
                  connection:nil error:&error];
    if (error) {
        NSLog(@"Signal error: %@", error);
    } else {
        NSLog(@"Signal sent: %@", _chatInputTextField.text);
    }
    _chatTextInputView.text = @"";
}

Cette méthode appelle la [OTSession signalWithType:string:connection:] méthode. Cette méthode envoie un message aux clients connectés à la session OpenTok. Chaque signal est défini par un type une chaîne identifiant le type de message (dans ce cas, « chat ») et une chaîne contenant le message.

Lorsqu'un autre client connecté à la session envoie un message, l'implémentation de la [OTSessionDelegate session:receivedSignalType:fromConnection:withString:] est appelée :

- (void)session:(OTSession*)session receivedSignalType:(NSString*)type fromConnection:(OTConnection*)connection withString:(NSString*)string {
    NSLog(@"Received signal %@", string);
    Boolean fromSelf = NO;
    if ([connection.connectionId isEqualToString:session.connection.connectionId]) {
        fromSelf = YES;
    }
    [self logSignalString:string fromSelf:fromSelf];
}

Cette méthode vérifie si le signal a été envoyé par le client iOS local ou par un autre client connecté à la session :

Boolean fromSelf = NO;
if ([connection.connectionId isEqualToString:session.connection.connectionId]) {
    fromSelf = YES;
}

Les session Cet argument représente l'objet OTSession de votre client. L'objet OTSession dispose d'un connection bien immobilier avec un connectionId propriété. Le connection Cet argument représente la connexion du client qui envoie le message. Si ces informations correspondent, cela signifie que le signal a été envoyé par l'application iOS locale.

La méthode appelle la [self logSignalString:] méthode qui affiche la chaîne de message dans la vue de texte pour les messages de chat reçus.

Cette application utilise l'API de signalisation OpenTok pour mettre en œuvre le chat textuel. Cependant, vous pouvez utiliser cette API de signalisation pour envoyer des messages à d'autres clients (individuellement ou collectivement) connectés à la session.

Félicitations ! Vous venez de terminer le tutoriel sur le chat textuel pour iOS.
Vous pouvez continuer à tester et à modifier le code que vous avez développé ici, ou consulter le Prochaines étapes ci-dessous. Pour plus d'informations sur la signalisation, consultez le Guide du développeur sur la signalisation OpenTok.

Prochaines étapes

Une fois que vous aurez terminé cette étape, poursuivez le développement et l'amélioration de votre application OpenTok à l'aide des ressources utiles suivantes :