DynamicDialMenu, podešenje¶
Sva potrebna podešenja su u extensions.ael fajlu. Ova opcija već spada u programerski domen, tako da je potrebno određeno znanje funkcija tipa GoTo() itd... da bi se održavala i kreirala ova opcija.
Ono što je bitno kod ove opcije je da se dinamički menij stavi kao poseban context u samom conf fajlu.
Evo recimo jedan primjer:
context demo => {
31 => {
Dial(SIP/31, 400);
};
32 => {
Dial(SIP/32, 400);
};
// itd.......
// 50 je extenzija na kojoj sam odobrio aktivni menij dynamic dial
50 => {
// prva stvar ext.50 poziva sip 50
// ali sam timeout dao 30 sec.
Dial(SIP/50, 30, Tt);
// nakon timeout-a puštam pozivaocu poruku da nikoga nema
Playback(vm-nobodyavail);
// pozivam dynamic dial
goto dynamicdial|s|1;
};
};
context dynamicdial => {
s => {
// sacekaj 2 sekunde pa se javi
Wait(2);
Answer();
// reprodukcija "enter num to call"
Background(vm-enter-num-to-call);
// extension 1
Wait(1);
// "extension 1 for 31"
Background(vm-extension);
Background(digits/1);
Background(vm-for);
Background(digits/30);
Background(digits/1);
// extension 2
Wait(1);
// "extension 2 for 32"
Background(vm-extension);
Background(digits/2);
Background(vm-for);
Background(digits/30);
Background(digits/2);
// ........
// extension 5
// "extension 5 for messages"
Wait(1);
Background(vm-extension);
Background(digits/5);
Background(vm-for);
Background(vm-messages);
// wait for user input
WaitExten();
};
1 => {
Background(vm-extension);
Background(digits/1);
goto demo|31|1;
};
2 => {
Background(vm-extension);
Background(digits/2);
goto demo|32|1;
};
5 => {
Background(vm-messages);
Voicemail(33@default,u); // ide na mailbox usera 33 recimo
Hangup();
};
};
dakle šta se ovdje događa ?
imamo 3 ekstenzije u demo context-u koji je glavni... 31, 32, 50
Odredio sam da ako se na ext.50 niko ne javlja 30 sekundi aktivira se dinamički meni.... koji odmah vodi na context -> dynamicdial extenziju s.
s ektenzija ima funkciju da ispriča dostupne opcije od 1 do 5 npr... te se onda u tom context-u otvara za svaku od opcija i posebna extenzija, za 1, za 2 za 3 itd....
I recimo extenzija 1 opet opcijom GoTo() ide na context demo 31, itd....
Ovdje imamo mnogo mogućnosti samo se treba prepustiti mašti.