Nøgleværdi-lagring, eller hvordan vores applikationer er blevet mere bekvemme

Nøgleværdi-lagring, eller hvordan vores applikationer er blevet mere bekvemme

Alle, der udvikler på Voximplant, kender til konceptet med "apps", der forbinder cloud-scripts, telefonnumre, brugere, regler og opkaldskøer til hinanden. Kort sagt, applikationer er hjørnestenen i udviklingen på vores platform, indgangen til enhver Voximplant-baseret løsning, da det at skabe en applikation er, hvor det hele begynder.

Tidligere "huskede" applikationer hverken de handlinger, som scripts udførte, eller resultaterne af beregninger, så udviklere blev tvunget til at gemme værdier i tredjepartstjenester eller på deres backend. Hvis du nogensinde har arbejdet med lokal lagring i en browser, så minder vores nye funktionalitet ret meget om denne, fordi... Tillader apps at huske nøgleværdi-par, der er unikke for hver app på din konto. Driften af ​​lageret blev mulig takket være det nye modul ApplicationStorage – under snittet finder du en kort guide til, hvordan du bruger det, velkommen!

Du skal bruge

  • Voximplant konto. Hvis du ikke har det, så registrering bor her;
  • Voximplant applikation, samt et script, en regel og en bruger. Vi vil skabe alt dette i denne tutorial;
  • webklient til at foretage et opkald - brug vores webtelefon phone.voximplant.com.

Voximplant-indstillinger

Log først ind på din konto: manage.voximplant.com/auth. I menuen til venstre skal du klikke på "Applications" og derefter "New Application" og oprette en applikation kaldet storage. Gå til den nye applikation, skift til fanen Scripts for at oprette et countingCalls-script med følgende kode:

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('Failure while getting totalCalls value');
    }

    try {
        await ApplicationStorage.put('totalCalls', (r.value | 0) + 1);
    } catch(e) {
        Logger.write('Failure while updating totalCalls value');
    }
    
    e.call.answer();
    e.call.say(`Приветствую.  Количество прошлых звонков: ${r.value}. `, Language.RU_RUSSIAN_MALE);

    e.call.addEventListener(CallEvents.PlaybackFinished, VoxEngine.terminate);

});

Den første linje forbinder ApplicationStorage-modulet, resten af ​​logikken placeres i hændelseshandleren CallAlerting.

Først erklærer vi en variabel, så vi kan sammenligne startværdien med opkaldstælleren. Derefter forsøger vi at få værdien af ​​totalCalls nøglen fra butikken. Hvis en sådan nøgle ikke eksisterer endnu, opretter vi den:

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

Dernæst skal du øge nøgleværdien i lageret:

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

BEMÆRK VENLIGST

For hvert løfte skal du udtrykkeligt angive fejlhåndtering, som vist i oversigten ovenfor - ellers stopper scriptet med at køre, og du vil se en fejl i loggene. detaljer her.

Efter at have arbejdet med lageret, besvarer scriptet det indgående opkald ved hjælp af stemmesyntese og fortæller dig, hvor mange gange du har ringet før. Efter denne besked afslutter scriptet sessionen.

Når du har gemt scriptet, skal du gå til fanen Routing i din applikation og klikke på Ny regel. Kald det startCounting, angiv countingCalls-scriptet, og lad standardmasken (.*) stå.

Nøgleværdi-lagring, eller hvordan vores applikationer er blevet mere bekvemme
Den sidste ting er at oprette en bruger. For at gøre dette skal du gå til "Brugere", klikke på "Opret en bruger", angive et navn (for eksempel bruger1) og adgangskode, og derefter klikke på "Opret". Vi skal bruge dette login-adgangskodepar til godkendelse i webtelefonen.

Kontrol

Åbn webtelefonen ved hjælp af linket phone.voximplant.com og log ind med dit kontonavn, applikationsnavn og brugernavn-adgangskode-par fra applikationen. Efter vellykket login skal du indtaste et vilkårligt sæt tegn i indtastningsfeltet og klikke på Ring op. Hvis alt blev gjort korrekt, vil du høre en syntetiseret hilsen!

Vi ønsker dig god udvikling på Voximplant og følg med for flere nyheder - vi vil have meget mere 😉

Kilde: www.habr.com

Tilføj en kommentar