Příkazy číslovacího plánu
Největší
silou Asterisku je neuvěřitelná pružnost číslovacího plánu. Pro ilustraci těchto
možností jsme se rozhodli uvést seznam příkazů, pomocí nichž lze vytvářet
libovolné aplikace telekomunikačního systému. Většina příkazů má ještě
spoustu různých parametrů, které umožňují upravit funkci podle vlastních
potřeb. Z množství příkazů a jejich šířky je vidět, že fantazii se
skutečně meze nekladou. Na internetu je možné nalézt mnoho programů,
programových knihoven pro Asterisk, komunity uživatelů a programátorů nebo
různá diskusní fóra. Například PHPAGI knihovna vám pomůže psát externí skripty
pro Asterisk apod.
v AbsoluteTimeout() – Nastaví časový limit pro délku hovoru v sec.
v AddQueueMember() – Dynamicky přidá vybraný hovor do vybrané fronty
v ADSIProg() – Nastavení
programovacího skriptu ADSI (Analog Display Services
Interface) telefonu
v AgentCallbackLogin() – Dovoluje přihlášení agenta do systému hovorových
front a možností návratu hovorů
v AgentLogin() – Dovoluje
přihlášení agenta do systému hovorových front.
v AgentMonitorOutgoing() – Zaznamenává všechny odchozí
hovory agenta
v AGI() – Asterisk Gateway Interface. Spouští externí AGI
program (napsaný v jakémkoliv jazyce. Např
v PHP, Perl, Python atd.) pro daný kanál.
Umožňuje např. propojení Asterisku s SQL databázemi, WWW stránkami
apod. Asterisk umožňuje využívat jiné programy jako své vlastní služby, ale
stejně tak může být Asterisk součástí jiných externích programů a řízen
z vnějšku. AGI má vlastní sadu příkazů pomocí nichž může Asterisk
komunikovat s dalšími programy.
Ø ANSWER – vyzvednutí kanálu
Ø CHANNEL STATUS – dotaz na stav kanálu
Ø DATABASE DEL – vymazání hodnoty z databáze
Asterisku
Ø DATABASE DELTREE – vymaže seznam proměnných
z databáze Asterisku
Ø DATABASE GET – Přečte hodnotu z databáze
Asterisku
Ø DATABASE PUT – uloží hodnotu do databáze Asterisku
Ø EXEC – zpracuje specifikovanou aplikaci
Ø GET DATA – přehraje audio soubor a přijme DTMF
volbu
Ø GET FULL VARIABLE – přečte hodnotu proměnné
z vybraného kanálu
Ø GET OPTION – přečte řetězec ze souboru
Ø GET VARIABLE – přečte hodnotu proměnné
Ø HANGUP – zavěsí kanál
Ø NOOP – Nedělá nic, jen vytiskne zadaný text
Ø RECEIVE CHAR – přečte znak z kanálu
Ø RECORD FILE – nahraje audio z kanálu do
zadaného souboru
Ø SAY ALPHA – přečte zadaný řetězec znaků
Ø SAY DATE – přečte datum
Ø SAY DATETIME – přečte datum a čas v zadaném
formátu
Ø SAY DIGITS – přečte číselný řetězec
Ø SAY NUMBER – přečte číslo
Ø SAY PHONETIC – přečte foneticky zadaný řetězec
Ø SAY TIME – přečte čas
Ø SEND IMAGE – pošle zadaný obrázek na kanál
Ø SEND TEXT – pošle zadaný text na kanál
Ø SET AUTOHANGUP – automaticky zavěsí kanál po
zadaném čase
Ø SET CALLERID – změní identifikaci volajícího
Ø SET CONTEXT – nastaví číselný plán pro daný AGI
skript
Ø SET EXTENSION – změní číslo pobočky pro daný AGI
skript
Ø SET MUSIC ON – spustí/vypne hudbu při držení
Ø SET PRIORITY – změní prioritu předukončením
AGI skriptu
Ø SET VARIABLE – nastaví hodnotu proměnné
Ø STREAM FILE – přehraje audio soubor
Ø TDD MODE – Zapne/vypne telekomunikační zařízení
pro utišení pro příjem nebo vysílání na daném kanále
Ø VERBOSE – pošle hlášení na konzoli
Ø WAIT FOR DIGIT – čeká zadaný čas na příjem DTMF
číslice
v AlarmReceiver() –
Emuluje přijímač alarmu a dovoluje Asterisku přijímat a dekódovat speciální
data z požárních a zabezpečovacích systémů.
v Answer() –
Vyzvednutí hovoru z vyzvánějícího kanálu
v AppendCDRUserField() – Přidá hodnotu do uživatelského pole
v záznamu o hovoru (tarifikace)
v Authenticate() –
Požaduje na volajícím zadání správného hesla před pokračováním dalšího
zpracování hovoru
v Background() –
Přehraje zadaný audio soubor (zpravidla menu hlasového systému) a očekává
DTMF volbu
v BackgroundDetect() – Přehraje zadaný audio soubor a detekuje hlas na
lince
v Busy() – Vrací volajícímu stav obsazení
v CallingPres() –
Změna parametru identifikace volajícího pro PŘI kanál
v ChangeMonitor() –
Změna názvu souboru kam jsou nahrávány hovory z monitorovaného kanálu
v ChanlsAvail() –
Zkontroluje dostupnost některého požadovaného kanálu ze zadaného seznamu.
v CheckGroup() –
Zkontroluje počet kanálů v zadané skupině.
v Congestion() – Vrací
volajícímu signál přetížení a odmítnutí hovoru a očekává zavěšení. Umožňuje
např. odmítnutí hovoru od nežádoucího volajícího.
v ControlPlayback() – Přehraje volajícímu vybraný audio soubor a
umožňuje mu řídit přehrávání a posouvat se vpřed i vzad.
v Curl() –
Nahraje externí URL adresu a uloží výsledek do proměnné.
v Cut() –
Přiřadí část jedné proměnné do druhé proměnné
v DateTime() –
Přečte volajícímu čas podle zadané časové zóny a ve zvoleném formátu
v BDel() –
Vymaže zadanou proměnnou z databáze Asterisku AstDB.
v BDeltree() –
Vymaže zadaný strom proměnných z databáze Asterisku AstDB
v DBGet() –
Přečte hodnotu zadané proměnné z databáze Asterisku AstDB
v DBPut() –
Vloží hodnotu do zadané proměnné do databáze Asterisku AstDB
v DeadAGI() –
Zpracuje vybraný externí program AGI (v libovolném programovacím jazyce)
nad nepoužitým (zavěšeným) kanálem
v Dial() – Spojí
hovor na vybraný kanál a nastaví parametry spojení. Dovoluje vzájemně
propojit libovolné typy kanálů.
v DigitTimeout() –
Nastaví maximální časový interval mezi vytáčenými číslicemi.
v Directory() – Prezentuje
uživateli adresář poboček, ze kterého může vybírat jméno
v DISA() – Dovolí vnějšímu uživateli po zadání hesla získat
vnitřní volací tón systému a vytočit linku uvnitř systému.
v DumpChan() –
Zobrazí informace o volajícím kanálu na konzoli
v DUNDiLookup() –
Vyhledá dané telefonní číslo ve specifikovaném seznamu nebo
v rezervovaném seznamu podle e164
v EAGI() - Asterisk Gateway Interface. Spouští externí AGI
program (napsaný v jakémkoliv jazyce. Např
v PHP, Perl, Python atd.) pro daný kanál.
Umožňuje např. propojení Asterisku s SQL databázemi, WWW stránkami
apod.
v Echo() – Nahrává zvuk z volajícího kanálu a přehrává
jej zpátky. Používá se zejména pro ověření zpoždění a kvality hlasu na VoIP
kanálech
v EndWhile() –
Vrací se na začátek smyčky cyklu While()
v ENUMLookup() – Vyhledá
telefonní číslo prostřednictvím ENUM a vrátí kanál a číslo
v Eval() – Zpracuje
řetězec a dosadí proměnné uvnitř řetězce.
v Exec() –
Spustí aplikaci (příkaz). Dovoluje dynamicky spouštět aplikace
v číselném plánu.
v ExecIf() – Při
splnění zadané podmínky spouští aplikaci (příkaz) v číselném plánu
v FastAGI() –
Zpracuje externí AGI program (skript) prostřednictvím síťového spojení.
Dovoluje rozdělit programy a služby na další servery. Asterisk umožňuje
využívat vzdálené programy jako své vlastní služby, ale stejně tak může být
Asterisk součástí jiných externích programů.
v Festival()
– Používá modul Festival (text to
speach) pro přečtení specifikovaného textu a
přehrání výsledku uživateli
v Flash() – Pošle
signál Flash na vnější komunikační kanál. Např.
na analogovou linku
v ForkCDR() –
Vytvoří další záznam o hovoru pro tarifikaci. Používá se pro volání pomocí
předplacených karet apod.
v GetCPEID() –
Přečte CPE ID a další informace z ADSI telefonu a zobrazí je na
Asterisk konzoli
v GetGroupCount() –
Vrací počet členů dané skupiny
v GetGroupMatchCount() – Vrací počet členů ve všech skupinách ve
specifikované oblasti.
v Goto() – Skok
v programu na specifikovaný číselný plán, pobočku a pořadový řádek
programu.
v GotoIf() –
Skok v programu na specifikovaný číselný plán, pobočku a pořadový
řádek programu při splnění zadané podmínky
v GotoIfTime() -
Skok v programu na specifikovaný číselný plán, pobočku a pořadový
řádek programu podle času a dne. Umožňuje měnit chování systému Asterisk
podle pracovních hodin, volných dnů apod.
v Hangup() –
Zavěšení hovoru
v HasNewVoicemail() – Skok v programu podle toho zda máte ve
schránce nové vzkazy
v HasVoicemail() –
Skok v programu podle toho zda máte ve schránce nějaký nový nebo starý
vzkaz
v IAX2Provision()
– Zajištění volání IAX ( Inter-Asterisk eXchange –
protokol pro propojení více systémů Asterisk. Nebo jiných zařízení Server
to Server) zařízení
v ImportVar() –
Vytvoření proměnné podle externí proměnné některého komunikačního kanálu
v LookupBlackList() – Umožňuje zkontrolovat ID volajícího (jméno/číslo)
v databázi v seznamu zakázaných čísel
v LookupCIDName() –
Zkontroluje ID volajícího s databází Asterisku. Používá se pokud
chcete změnit identifikaci volajícího u některých příchozích hovorů
v Macro() –
Volá definované makro
v MailboxExist() –
Testuje zda existuje zadaná hlasová schránka
v Math() –
Zpracuje zadanou matematickou operaci a vrátí výsledek
v MeetMe() –
Propojí volajícího do Meet Me
konference
v MeetMeAdmin() –
Provede na vybrané konferenci zadaný příkaz. Např. uzamčení, vyhození uživatele,
utišení účastníků atd.
v MeetMeCount() –
Vrací počet účastníků konference
v Miliwatt()
– Generuje trvalý tón 1000Hz.
Slouží pro nastavení audio kanálu.
v Monitor()
– Zaznamenává audio hovor na
vybraném kanálu
v MP3Player()
– Přehraje soubor MP3
v MusicOnHold() –
Přehrává definovanou hudbu při držení hovoru (služba Music On Hold)
v MYSQL()
– Přídavná aplikace, umožňuje
přímý přístup do databáze MySQL. Velice silný nástroj pro vaše aplikace.
v NBScat() –
Přehrává datový tok NBS (Network Broadcast Sound)
v NoCDR() – Zakáže
vytvořit CDR (tarifikace) záznam o aktuálním hovoru
v NoOp() –
Nedělá nic. Slouží pro ladění programu
v Park() – Zaparkuje aktuální hovor
v ParkAndAnnounce() – Zaparkování aktuálního hovoru a oznámení hovoru
přes specifikovaný kanál
v ParkedCall() –
Vyzvedne zaparkovaný hovor
v PauseQueueMember() – Dočasně zablokuje příjem hovorů pro vybraného
člena skupiny agentů
v Playback()
– Přehraje volajícímu
specifikovaný audio soubor
v Playtones() –
Přehraje volajícímu vybraný tón. Např. obsazeno, neexistuje, vyzvánění
apod.
v Prefix()
– Přidá před telefonní číslo
zadaný prefix a volá na změněné telefonní číslo. Používá se pro tvorbu
rozsáhlých telekomunikačních sítí s jednotným číselným plánem.
v PrivacyManager() – Požaduje na volajícím zadat své telefonní číslo
pokud nebyla automaticky přijata jeho identifikace
v Progress() –
Indikuje zda požadovaný kanál je dostupný uživateli
v Queue() –
Umístí aktuální hovor do specifikované fronty hovorů
v Random() –
Podmíněný skok v programu se zadanou pravděpodobností 1-100%. Slouží např pro výherní systémy, kde umožňuje nastavit
pravděpodobnost výhry.
v Read() – Čte
DTMF číslice od volajícího a ukládá je do proměnné
v RealTime() – Přečte
informace z hodin reálného času do proměnných vybraného kanálu
v RealTimeUpdate() – Nastavení hodin reálného času
v Record() –
zaznamenává hovor z vybrané linky do souboru
v RemoveQueueMember() – Vyjme z fronty vybraného člena
v ResetCDR() –
Vynuluje záznam CDR (tarifikace)
v ResponseTimeout() – Nastaví maximální čas po kterou může uživatel
zadat číslo
v RetryDial() – Zkusí
provést hovor, ale pokud je kanál nedostupný zkusí volání opakovat
v Ringing() –
Indikuje na kanálu uživateli vyzváněcí tón
v SayAlpha() –
Přečte zadaný řetězec znaků
v SayDigits() –
Přečte zadané číslice
v SayNumber() –
Přečte zadané číslo
v SayPhonetic() – Přečte
řetězec znaků s využitím NATO kódovací abecedy
v SayUnixTime() –
Přečte čas v zadaném zákaznickém
formátu
v SendDTMF() –
Vyšle na kanál zadané číslice pomocí DTMF
volby
v SendImage() –
Pošle na kanál obrázek pokud kanál přenos obrázků podporuje
v SendText() –
Pošle zadaný text na kanál pokud je
přenos textů na kanálu podporován
v SendURL() –
Odkáže klienta na zadanou URL adresu pokud podporuje HTML přenosy
v Set() – Nastaví hodnotu proměnné
v SetAccount() –
Nastaví účetní kód v CDR (tarifikačním)
záznamu
v SetAMAFlags() –
Nastaví AMA příznaky v záznamu CDR
v SetCallerID() –
Nastaví identifikaci volajícího na zadanou hodnotu
v SetCallerPres() –
Nastaví příznaky pro prezentaci identifikace volajícího
v SetCDRUserField() – Nastaví hodnotu uživatelského pole v tarifikačním záznamu CDR
v SetCIDName() –
Nastaví jméno v identifikaci volajícího
v SetCIDNum() –
Nastaví číslo v identifikaci volajícího
v SetGlobalVar() – Nastavé hodnotu globální proměnné
v SetGroup() –
Nastaví jméno skupiny kanálů
v SetLanguage() –
Nastaví jazyk daného kanálu
v SetMusicOnHold() – Nastaví hudbu při držení pro daný kanál
v SetRDNIS() –
Nastaví RDNIS (Redirected Dial
Numer ID Service). Funguje jen pro kanály PŘI.
v SetVar() –
Nastavení proměnné na danou hodnotu
v SIPAddHeader() –
Přidá zadanou hlavičku do SIP hovoru.
v SIPDtmfMode() –
Změní DTMF metodu pro SIP hovory
v SIPGetHeader() –
Přečte vybranou část hlavičky SIP protokolu u příchozího hovoru a uloží ji
do proměnné
v SoftHangup() –
Zavěšení požadovaného kanálu
v StopMonitor() –
Zastaví monitorování (nahrávání) kanálu
v StopPlaytones() –
Zastaví přehrávání aktuálního tónu
v StripLSD() –
Odstraní zadaný počet číslic z konce telefonního čísla
v StripMSD() –
Odstraní zadaný počet číslic ze začátku telefonního čísla
v SubString() –
Vybere vybranou část telefonního čísla a uloží ho do proměnné
v Sufix()
– Přidá číslo na konec
telefonního čísla
v System() –
Zpracuje příkaz operačního systému
v Transfer()
– Přepojí hovor na jinou
vzdálenou linku
v TrySystem() –
Pokusí se zpracovat příkaz operačního systému
v TXTCIDName() –
Přečte jméno volajícího z DNS TXT záznamu
v UnpauseQueueMember() – Odblokuje příjem hovorů pro vybraného člena
skupiny
v UserEvent() –
Pošle příznak události na řídící rozhraní
v Verbose() –
Pošle text na hlasový výstup
v VMAuthenticate() – Autentifikace pro
přístup do hlasové schránky
v VoiceMail() –
zanechání vzkazu v hlasové schránce
v VoiceMailMain() –
Vstup do hlavního menu hlasové pošty
v Wait() –
Čeká specifikovaný počet sekund
v WaitExten() –
Čeká specifikovaný počet sekund na zadání čísla pobočky
v WaitForRing() – Čeká
specifikovaný počet sekund na vyzvánění
v WaitForSilence() – Čeká na specifikovanou délku ticha
v WaitMusicOnHold() – Čeká specifikovaný počet sekund a přehrává hudbu
při držení
v While() –
Začátek smyčky s podmíněným počtem opakování
v Zapateller() – Generuje
speciální informační tón pro blokování telemarketingu
a jiných počítačem vytáčených volání
v ZapBarge() –
Vstup do hovoru na specifikovaný kanál
v ZapRAS() –
Spustí Zaptel ISDN Repote Access Server
v ZapScan() –
Skenuje Zap kanály a monitoruje hovory na nich
|