ProHoster > Blog > Amministrazione > U almacenamentu di u valore chjave, o cumu e nostre applicazioni sò diventate più convenienti
U almacenamentu di u valore chjave, o cumu e nostre applicazioni sò diventate più convenienti
Qualchidunu chì si sviluppa nantu à Voximplant sapi di u cuncettu di "app" chì culliganu scripts nuvola, numeri di telefunu, utilizatori, regule è fila di chjama l'una à l'altru. Bastamente, l'applicazioni sò a basa di u sviluppu nantu à a nostra piattaforma, u puntu di entrata in ogni suluzione basatu in Voximplant, postu chì a creazione di una applicazione hè induve tuttu principia.
Nanzu, l'applicazioni ùn "ricurdavanu" nè l'azzioni chì i scripts facianu nè i risultati di i calculi, cusì i sviluppatori sò stati custretti à almacenà i valori in servizii di terzu o in u so backend. Se avete mai travagliatu cù u almacenamentu locale in un navigatore, allora a nostra nova funziunalità hè abbastanza simile à questu, perchè ... Permette à l'applicazioni di ricurdà coppie chjave-valore chì sò uniche per ogni app in u vostru contu. U funziunamentu di l'almacenamiento hè diventatu pussibule grazia à u novu modulu Storage di l'applicazioni - sottu u tagliu truverete una breve guida nantu à cumu aduprà, benvenutu!
L'applicazione Voximplant, è ancu un script, una regula è un utilizatore. Creemu tuttu questu in questu tutoriale;
cliente web per fà una chjama - utilizate u nostru webphone phone.voximplant.com.
Impostazioni di Voximplant
Prima, accede à u vostru contu: manage.voximplant.com/auth. In u menù à manca, cliccate "Applicazioni", dopu "New Application" è crea una applicazione chjamata storage. Andate à a nova applicazione, cambiate à a tabulazione Scripts per creà un script countingCalls cù u codice seguente:
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);
});
A prima linea cunnetta u modulu ApplicationStorage, u restu di a logica hè posta in u gestore di l'eventi Call Alerting.
Prima dichjarà una variàbile in modu chì pudemu paragunà u valore iniziale cù u contatore di chjama. Allora pruvemu à ottene u valore di a chjave totalCalls da a tenda. Se una tale chjave ùn esiste ancu, allora a creamu:
try {
r = await ApplicationStorage.get('totalCalls');
if (r === null) {
r = await ApplicationStorage.put('totalCalls', 0);
}
}
Dopu, avete bisognu di aumentà u valore chjave in u almacenamiento:
Per ogni prumessa, duvete specificà esplicitamente a gestione di fallimentu, cum'è mostra in u listinu sopra - altrimenti, u script ùn cesserà di correre, è vi vede un errore in i logs. Dettagli ccà.
Dopu avè travagliatu cù u repository, u script risponde à a chjama entrante usendu sintesi di voce è vi dice quante volte avete chjamatu prima. Dopu stu missaghju, u script finisci a sessione.
Una volta chì avete salvatu u script, andate à a tabulazione Routing di a vostra applicazione è cliccate New Rule. Chjamate startCounting, specificate u script countingCalls, è lasciate a maschera predeterminata (.*).
L'ultima cosa hè di creà un utilizatore. Per fà questu, andate à "Users", cliccate "Crea un utilizatore", specifica un nome (per esempiu, user1) è password, dopu cliccate "Crea". Avemu bisognu di sta coppia login-password per l'autentificazione in u webphone.
Verificendu
Aprite u webphone cù u ligame phone.voximplant.com è accede cù u vostru nome di contu, u nome di l'applicazione è a coppia username-password da l'applicazione. Dopu un login successu, inserite qualsiasi set di caratteri in u campu di input è cliccate Chjama. Se tuttu hè statu fattu bè, senterete un salutu sintetizatu!
Vulemu un grande sviluppu nantu à Voximplant è stà sintonizatu per più nutizie - averemu assai di più 😉