Crmgo Blog

Asterisk promenljive

Asterisk promenljive

Unapred definisane promenljive specifične za kanale U nastavku je lista promenljivih specifičnih za kanale koje Asterisk samostalno postavlja, a čije vrednosti možete koristiti u planu poziva. Za razliku od promenljivih definisanih od strane korisnika, promenljive koje definiše Asterisk su osetljive na veličinu slova. ${ACCOUNTCODE} : Kod naloga, ako…

Asterisk promenljive

Preddefinisane promenljive specifične za kanale

U nastavku je naveden spisak promenljivih specifičnih za kanale koje Asterisk samostalno postavlja, a čije vrednosti možete koristiti u planu poziva. Za razliku od promenljivih definisanih od strane korisnika, promenljive koje definiše Asterisk su osetljive na veličinu slova.

  • ${ACCOUNTCODE}: Код naloga, ako je dodeljen - vidi Asterisk billing. (zastarela, počevši od verzije 1.2.0 i uklonjena u verziji 1.4.0. Koristite ${CDR(accountcode)} .
  • ${ANSWEREDTIME}: Vreme kada je poziv odgovoren.
  • ${BLINDTRANSFER}: Aktivni SIP kanal koji izvršava poziv. Ovde će biti definisano ime SIP kanala koji izvršava poziv pri transferu poziva tipa slepi transfer - vidi BLINDTRANSFER?
  • ${CALLERID(all)} : Trenutna vrednost imena i broja iz CallerID-a - Pogledajte odeljak Postavljanje Callerid-a?, posvećen radu sa CallerID-om u Asterisk verziji 1.4
  • ${CALLERID(name)} : Trenutna vrednost imena iz CallerID-a - Varijabla ${CALLERIDNAME} se koristila u Asterisku do verzije 1.2.0, označena je kao ZASTARELA, počevši od verzije 1.2.0 i uklonjena u verziji 1.4.
  • ${CALLERID(num)} : Trenutna vrednost broja iz CallerID-a - Varijabla :${CALLERIDNUM} se koristila u Asterisku do verzije 1.2.0, označena je kao ZASTARELA, počevši od verzije 1.2.0 i uklonjena u verziji 1.4. (Napomena: vrednost ove varijable ne mora nužno biti numerička, kao što bi se moglo zaključiti iz naziva, i sasvim je legitimno da njena vrednost bude razmak. Za komande koje rade sa vrednošću ove varijable (na primer, 'GotoIf') treba uzeti u obzir ovaj aspekt).
  • ${CALLINGPRES}: Varijabla koja sadrži PRI Call ID Presentation, za dolazne pozive (Vidi callingpres )
  • ${CHANNEL}: Trenutno ime kanala
  • ${CONTEXT}: Trenutno ime konteksta
  • ${DATETIME}: Trenutno vreme i datum u formatu: DDMMYYYY-HH:MM:SS Ova varijabla je označena kao zastarela u verziji Asterisk 1.2, umesto nje koristite konstrukciju: ${STRFTIME(${EPOCH},,%d%mNaVH:NaVS)})
  • ${DIALEDPEERNAME}: Ime pozvanog korisnika. Trenutno ne radi, vidi DIALEDPEERNAME?
  • ${DIALEDPEERNUMBER}: Broj pozvanog korisnika. Trenutno ne radi, vidi DIALEDPEERNUMBER?
  • ${DIALEDTIME}: Vreme kada je broj odabran. (Radi samo ako je pozvani korisnik odgovorio na poziv?!)
  • ${DIALSTATUS}: Status poziva. Vidi DIALSTATUS
  • ${DNID}: Dialed Number Identifier. Za podršku ograničenjima na odlazne pozive, vidi DNID?
  • ${EPOCH}: Trenutno vreme u UNIX formatu (broj sekundi proteklih od 1. januara 1970. godine)
  • ${EXTEN}: Trenutni ekstenzija
  • ${HANGUPCAUSE}: Poslednji kod povratne vrednosti, vraćen po završetku konekcije za Zap kanal povezan sa PRI interfejsom
  • ${INVALID_EXTEN}: Traženi ekstenzija, za slučajeve kada se preusmerava na obradu i (neispravnog) ekstenzije
  • ${LANGUAGE}: Trenutni jezik poruka. Vidi Asterisk multi-language?
  • ${MEETMESECS}: Broj sekundi tokom kojih je korisnik učestvovao u MeetMe konferenciji?.
  • ${PRIORITY}: Trenutna vrednost prioriteta.
  • ${RDNIS}: Caller ID, za korisnika koji vrši preusmeravanje DNIS. Za podršku ograničenjima na odlazne pozive, vidi RDNIS?
  • ${SIPDOMAIN}: Domen odredišta za odlazni SIP poziv (ako postoji)
  • ${SIP_CODEC}: Koristi se za podešavanje kodeka, za poziv preko SIP kanala (pretpostavlja se da ne radi u verziji 1.0.1, radi u 1.0.3 & 1.0.4, nema sigurnosti za 1.0.2)
  • ${SIPCALLID}: Vrednost zaglavlja Call-ID: u porukama SIP dijaloga.
  • ${SIPUSERAGENT}: Vrednost zaglavlja "user agent" u porukama SIP dijaloga.
  • ${TIMESTAMP}: Trenutni datum i vreme u formatu: YYYYMMDD-HHMMSS Ova varijabla je označena kao zastarela u verziji Asterisk 1.2, umesto nje koristite konstrukciju: ${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)})
  • ${TRANSFERCAPABILITY}: Tip kanala.
  • ${TXTCIDNAME}: Rezultat rada aplikacije TXTCIDName (vidi ispod)
  • ${UNIQUEID}: Trenutni jedinstveni identifikator poziva
  • ${TOUCH_MONITOR}: koristi se za "snimanje jednim pritiskom" (vidi features.conf, i zastavice wW za komandu dial). Ako je postavljena na oba kraja veze, tada ova varijabla sadrži app_args (argumente) za aplikaciju app_monitor, inače će se koristiti podrazumevani argumenti: WAV||m
  • ${CONTEXT}: Ime trenutnog konteksta
  • ${DATETIME}: Trenutni datum i vreme u formatu: !YYYY-MM-DD_HH:MM:SS
  • ${TIMESTAMP}: Trenutni datum i vreme u formatu: YYYYMMDD-HHMMSS
  • ${EPOCH}: Trenutno vreme UNIX ere (broj sekundi od 1. januara 1970)
  • ${EXTEN}: Trenutni telefonski broj (ekstenzija)
  • ${INVALID_EXTEN}: Uključeni telefonski broj pri preusmeravanju na i (nevažeću) ekstenziju
  • ${LANGUAGE}: Trenutna vrednost jezika. Pogledajte podršku za nacionalne jezike u Asterisku
  • ${PRIORITY}: Trenutni prioritet
  • ${CALLINGPRES}: PRI Call ID Presentation promenljiva za dolazne pozive (Pogledajte callingpres)
  • ${CALLERID}: Identifikator pozivaoca (ime i broj)
  • ${CALLERIDNAME}: Identifikator pozivaoca: ime
  • ${CALLERIDNUM}: Identifikator pozivaoca: broj
  • ${CHANNEL}: Ime trenutnog kanala
  • ${RDNIS}: Trenutni preusmeravajući DNIS, Caller ID koji je preusmerio poziv. Pogledajte RDNIS
  • ${SIPDOMAIN}: SIP domen odredišta za dolazni poziv (ako je primenljivo)
  • ${SIP_CODEC}: Koristi se za podešavanje SIP kodeka za poziv
  • ${SIPCALLID}: SIP dialog Call-ID: zaglavlje
  • ${SIPUSERAGENT}: SIP korisnički agent zaglavlje
  • ${UNIQUEID}: Trenutni jedinstveni ID SIP poziva
  • ${HANGUPCAUSE}: Poslednji kod povratne vrednosti prekida veze na Zap kanalu povezanom sa PRI interfejsom
  • ${DNID}: Identifikator biranog broja
  • ${ACCOUNTCODE}: Šifra naloga, ako je navedena - pogledajte Asterisk naplatu

 

Promenljive koje koriste različite aplikacije

Neki alati aplikacija koriste vrednosti "kanalnih" promenljivih ili vraćaju rezultat svog rada u njih.

  • Komanda AgentCallbackLogin? vraća u ${AGENTBYCALLERID_${CALLERID}}: ID uspešno autorizovanog agenta.
  • Komanda ChanIsAvail vraća u ${AVAILCHAN}: prvi dostupan kanal
  • Komanda Dial koristi vrednost promenljive ${VXML_URL}: za slanje XML URL-a na Cisco 7960 telefon.
  • Komanda Dial koristi vrednost promenljive ${ALERT_INFO}: za prenos informacija o tipu poziva na Cisco telefone.
  • Komanda Dial vraća u ${CAUSECODE}: Kod greške, ako poziv nije uspeo.
  • Komanda Dial vraća u ${DIALSTATUS}: tekstualni kod rezultata poslednjeg pokušaja poziva korisnika.
  • Komanda Dial koristi vrednost promenljive ${TRANSFER_CONTEXT}: Ako je ova promenljiva postavljena, prilikom izvršavanja procedure preusmeravanja poziva (#transfer), koristiće se za izvršavanje komandi ekstenzije iz navedenog konteksta.
  • Komanda EnumLookup vraća u promenljivoj ${ENUM}: rezultat pretrage.
  • Komanda Hangup koristi vrednost promenljive ${PRI_CAUSE} za postavljanje kodova povratka PRI interfejsa.
  • Komanda MeetMe koristi vrednost promenljive {MEETME_AGI_BACKGROUND}: za određivanje AGI skripte koju treba izvršiti.
  • Komanda MeetMe vraća u promenljivoj ${MEETMESECS}: broj sekundi koje je korisnik proveo u konferenciji.
  • Komanda Playback vraća u promenljivoj ${PLAYBACKSTATUS}: Rezultat izvršenja komande (FAILED|SUCCESS).
  • Komanda Queue vraća u promenljivoj ${QUEUESTATUS}: Razlog zbog kojeg je poziv, koji je bio u redu, napustio red.
  • Komanda TXTLookup vraća u promenljivoj ${TXTCIDNAME}: rezultat pretrage u DNS-u.
  • Komanda VoiceMail vraća u promenljivoj ${VMSTATUS}: rezultat izvršenja aplikacije VoiceMail?. Moguće vrednosti: SUCCESS | USEREXIT | FAILED .

 

Varijable specifične za makroe

Koristeći kontekste kao makroe, dostupne su dodatne specifične za makroe "kanalske" promenljive.

  • ${ARG1}: prvi argument prosleđen makroeju
  • ${ARG2}: drugi argument prosleđen makroeju (i tako dalje ...)
  • ${MACRO_CONTEXT}: Ime konteksta ekstenzije koja je pozvala ovaj makroj
  • ${MACRO_EXTEN}: Ekstenzija koja je pozvala ovaj makroj
  • ${MACRO_OFFSET}: Postavlja makroj, za određivanje prioriteta sa kojeg će se nastaviti izvršavanje komandi, nakon završetka rada makroja
  • ${MACRO_PRIORITY}: Prioritet ekstenzije, u trenutku poziva ovog makroja

 

Varijable okruženja

Možete pristupiti promenljivama okruženja unix, koristeći sledeći sintaks:

${ENV(''foo'')}

  • ${ENV(ASTERISK_PROMPT)} : trenutni CLI prompt? za Asterisk .
  • ${ENV(RECORDED_FILE)} : ime fajla, pod kojim je sačuvana poslednja snimka, napravljena komandom Record (dostupna u CVS > 2004-03-21)

Napomena: tekst može biti uz pomoć AI uz ljudsku proveru. Odgovoran: Dmytro Lomaka, Kaltenkirchen.