Stockage de valeur-clé ou comment nos applications sont devenues plus pratiques



Quiconque développe sur Voximplant connaît le concept des «applications» qui connectent les scénarios cloud, les numéros de téléphone, les utilisateurs, les règles et les files d'attente d'appels. En termes simples, les applications sont la pierre angulaire du développement de notre plateforme, le point d'entrée de toute solution basée sur Voximplant, car c'est à partir de la création de l'application que tout commence.

Auparavant, les applications «ne se souvenaient» ni des actions effectuées par les scripts ni des résultats des calculs, de sorte que les développeurs étaient obligés d'enregistrer des valeurs dans des services tiers ou sur leur backend. Si vous avez déjà travaillé avec le stockage local dans un navigateur, alors notre nouvelle fonctionnalité est très similaire à cela, car Permet aux applications de mémoriser des paires clé-valeur uniques à chaque application de votre compte. L'opération de stockage a été rendue possible grâce au nouveau module ApplicationStorage - sous le chat vous trouverez un petit guide de son utilisation, bienvenue!

Vous aurez besoin


  • Compte Voximplant. Si vous ne l'avez pas, l' inscription se fait ici ;
  • Application Voximplant, ainsi qu'un script, une règle et un seul utilisateur. Nous allons créer tout cela dans ce tutoriel;
  • client Web pour passer un appel - utilisez notre téléphone Web phone.voximplant.com .

Paramètres Voximplant


Connectez-vous d'abord à votre compte: manage.voximplant.com/auth . Dans le menu de gauche, cliquez sur "Applications", puis sur "Nouvelle application" et créez une application appelée stockage. Allez dans la nouvelle application, passez à l'onglet Scripts pour créer un script countingCalls avec ce code:

require(Modules.ApplicationStorage); VoxEngine.addEventListener(AppEvents.CallAlerting, async (e) => { let r = {value: -1}; try { r = await ApplicationStorage.get('totalCalls'); if (r === null) { r = await ApplicationStorage.put('totalCalls', 0); } } catch(e) { Logger.write('    totalCalls'); } try { await ApplicationStorage.put('totalCalls', (r.value | 0) + 1); } catch(e) { Logger.write('    totalCalls'); } e.call.answer(); e.call.say(`.   : ${r.value}. `, Language.RU_RUSSIAN_MALE); e.call.addEventListener(CallEvents.PlaybackFinished, VoxEngine.terminate); }); 

La première ligne connecte le module ApplicationStorage, le reste de la logique est placé dans le gestionnaire d' événements CallAlerting .

Tout d'abord, nous déclarons une variable afin de pouvoir comparer la valeur initiale avec le compteur d'appels. Ensuite, nous essayons d'obtenir la valeur de la clé totalCalls du magasin. S'il n'y a pas encore une telle clé, nous la créons:

 try { r = await ApplicationStorage.get('totalCalls'); if (r === null) { r = await ApplicationStorage.put('totalCalls', 0); } } 

Ensuite, vous devez augmenter la valeur de clé dans le référentiel:

 try { await ApplicationStorage.put('totalCalls', (r.value | 0) + 1); } 

FAITES ATTENTION

Pour chaque promesse, il est nécessaire d'indiquer explicitement le traitement de l'échec, comme indiqué dans la liste ci-dessus - sinon le script sera arrêté et vous verrez une erreur dans les journaux. Détails ici .
Après avoir travaillé avec le référentiel, le script répond à l'appel entrant à l'aide de la synthèse vocale et indique combien de fois vous avez appelé auparavant. Après ce message, le script met fin à la session.

Après avoir enregistré le script, allez dans l'onglet «Routage» de votre application et cliquez sur «Nouvelle règle». Nommez-le startCounting, spécifiez le script countingCalls et laissez le masque par défaut (. *).


La dernière consiste à créer un utilisateur. Pour ce faire, allez dans "Utilisateurs", cliquez sur "Créer un utilisateur", spécifiez un nom (par exemple, utilisateur1) et un mot de passe, puis cliquez sur "Créer". Nous aurons besoin de cette paire nom d'utilisateur / mot de passe pour l'authentification dans le téléphone Web.

Vérifier


Ouvrez le téléphone Web sur phone.voximplant.com et connectez-vous en utilisant le nom de compte, le nom de l'application et une paire de nom d'utilisateur et de mot de passe de l'application. Une fois la connexion établie, saisissez n'importe quel jeu de caractères dans le champ de saisie et appuyez sur Appeler. Si tout a été fait correctement, vous entendrez un message d'accueil synthétisé!

Nous vous souhaitons un excellent développement sur Voximplant et restons à l'écoute - nous en aurons bien d'autres;)

Source: https://habr.com/ru/post/fr476452/


All Articles