Création du canal Oracle iOS

Vous pouvez configurer le canal afin qu'il se connecte au serveur de discussion Oracle en deux modes : mode non authentifié et mode authentifié (pour protéger l'accès au canal).

  • Mode non authentifié : utilisez le mode non authentifié lorsque le client ne peut pas générer de jetons JWT signés, lorsqu'aucune méthode d'authentification n'est configurée, ou lorsque le widget client est déjà sécurisé et visible par les utilisateurs authentifiés.
  • Mode authentifié : l'authentification est appliquée à l'aide de jetons Web JSON (JWT). Le serveur back-end du client génère le jeton JWT, qui est ensuite transmis au kit SDK Oracle iOS. Ce jeton est utilisé pour chaque demande adressée à un serveur vocal, de texte ou de pièce jointe ODA.
    Remarque

    Pour protéger l'accès au canal, le jeton doit toujours être généré par un serveur distant. Il ne doit jamais être généré dans l'application client.
    Lorsque l'application doit se connecter à un serveur ODA, elle demande d'abord le jeton du serveur back-end, puis l'ajoute à l'en-tête d'autorisation. Le serveur ODA valide le jeton, évalue les déclarations, puis ouvre le socket ou rejette la connexion.
    Le jeton JWT présente les déclarations suivantes : channelId et userId, ainsi que les noms de déclaration iat (heure d'émission) et exp (délai d'expiration). iat indique le moment où le jeton a été émis. Cette valeur doit être un nombre représentant les secondes écoulées depuis la période UNIX. exp doit être un nombre représentant les secondes écoulées depuis la période UNIX. Nous vous recommandons de définir le délai d'expiration sur au moins 30 minutes après l'heure d'émission (iat). L'en-tête de jeton ressemble à ceci :
    {
    
     "alg": "HS256",
    
     "typ": "JWT"
    
    }
    Voici un exemple de corps de jeton :
    {
    
      "iat": 1569828182,
    
      "exp": 1569831782,
    
      "channelId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    
      "userId": "John"
    
    }
    Remarque

    Le jeton illustré par cet exemple n'est pas signé. Les jetons réels sont signés par la clé secrète du canal.

Configuration du canal Oracle iOS

Pour configurer le canal Oracle iOS, procédez comme suit :
  1. Choisissez Développement, puis Canaux dans le menu.
  2. Choisissez Utilisateurs.
  3. Cliquez sur Ajouter un canal, puis sur Oracle iOS en tant que type de canal.
  4. Renseignez les champs de la boîte de dialogue suivante :
    • Saisissez le nom du canal.
    • Pour les connexions authentifiées, procédez comme suit :
      • Activez l'option Authentification client activée afin de déterminer si le kit SDK se connecte à un canal activé pour l'authentification client.
      • Dans le champ Expiration de jeton max. (minutes), définissez le délai maximal pour le jeton JWT.
      • Définissez le délai d'expiration de la session.
    • Pour les connexions non authentifiées, procédez comme suit :
      • Désactivez l'option Authentification client activée.
      • Définissez le délai d'expiration de la session.
    • Cliquez sur Créer. Oracle Digital Assistant génère l'ID de canal et la clé secrète dont vous avez besoin pour initialiser le kit SDK. Conservez ces informations car vous en aurez besoin lors de la configuration de la page HTML pour héberger le widget de discussion.
  5. Acheminez le canal vers votre brique ou votre assistant numérique.
  6. Activez l'option Canal activé.