Nøkkelverdilagring, eller hvordan applikasjonene våre har blitt mer praktiske

Nøkkelverdilagring, eller hvordan applikasjonene våre har blitt mer praktiske

Alle som utvikler på Voximplant kjenner til konseptet med «apper» som kobler skyskript, telefonnumre, brukere, regler og samtalekøer til hverandre. Enkelt sagt er applikasjoner hjørnesteinen i utviklingen på plattformen vår, inngangspunktet til enhver Voximplant-basert løsning, siden det å lage en applikasjon er der alt begynner.

Tidligere "husket" ikke applikasjoner verken handlingene som skript utførte eller resultatene av beregninger, så utviklere ble tvunget til å lagre verdier i tredjepartstjenester eller på deres backend. Hvis du noen gang har jobbet med lokal lagring i en nettleser, er vår nye funksjonalitet ganske lik denne, fordi... Lar apper huske nøkkelverdi-par som er unike for hver app i kontoen din. Driften av lageret ble mulig takket være den nye modulen ApplicationStorage – under snittet finner du en kort veiledning om hvordan du bruker den, velkommen!

Du trenger

  • Voximplant-konto. Hvis du ikke har det, da registrering bor her;
  • Voximplant-applikasjon, samt et script, en regel og én bruker. Vi vil lage alt dette i denne opplæringen;
  • nettklient for å ringe - bruk vår netttelefon phone.voximplant.com.

Voximplant-innstillinger

Først logger du på kontoen din: manage.voximplant.com/auth. I menyen til venstre klikker du på "Applikasjoner", deretter "Ny applikasjon" og oppretter en applikasjon som heter lagring. Gå til den nye applikasjonen, bytt til Skript-fanen for å lage et countingCalls-skript 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 linjen kobler sammen ApplicationStorage-modulen, resten av logikken plasseres i hendelsesbehandleren Samtalevarsling.

Først deklarerer vi en variabel slik at vi kan sammenligne startverdien med samtaletelleren. Deretter prøver vi å hente verdien av totalCalls-nøkkelen fra butikken. Hvis en slik nøkkel ikke eksisterer ennå, lager vi den:

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

Deretter må du øke nøkkelverdien i lagringen:

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

MERK

For hvert løfte må du spesifisere feilhåndtering, som vist i listen ovenfor - ellers vil skriptet slutte å kjøre, og du vil se en feil i loggene. Detaljer her.

Etter å ha jobbet med depotet, svarer skriptet på det innkommende anropet ved hjelp av stemmesyntese og forteller deg hvor mange ganger du ringte før. Etter denne meldingen avslutter skriptet økten.

Når du har lagret skriptet, går du til Ruting-fanen i applikasjonen og klikker på Ny regel. Kall det startCounting, spesifiser countingCalls-skriptet og la standardmasken (.*).

Nøkkelverdilagring, eller hvordan applikasjonene våre har blitt mer praktiske
Det siste er å opprette en bruker. For å gjøre dette, gå til "Brukere", klikk på "Opprett en bruker", spesifiser et navn (for eksempel bruker1) og passord, og klikk deretter på "Opprett". Vi trenger dette påloggingspassord-paret for autentisering i netttelefonen.

Sjekker

Åpne netttelefonen ved å bruke lenken phone.voximplant.com og logg på med ditt kontonavn, applikasjonsnavn og brukernavn-passord-par fra applikasjonen. Etter vellykket pålogging, skriv inn et sett med tegn i inntastingsfeltet og klikk på Ring. Hvis alt ble gjort riktig, vil du høre en syntetisert hilsen!

Vi ønsker deg god utvikling på Voximplant og følg med for flere nyheter - vi kommer til å ha mye mer 😉

Kilde: www.habr.com

Legg til en kommentar