Asterisk & Kurzwahl via mysql

baschdieh

Mitglied
Mitglied seit
15 Sep 2005
Beiträge
416
Punkte für Reaktionen
0
Punkte
0
Hi,

gibt es eine Moeglichkeit Kurzwahlen via Asterisk mit MySQL zu verwalten? Habe ca. 300-400 Kurzwahlen die gepfelgt werden müssen, ohne direkt zugriff auf Asterisk zu haben. Die Überlegung war, dass man diese Kurzwahlen (z.B. *123 waehlt 069212234124) in eine MySQL Datenbank schreibt. Diese muesste allerdings mittels Asterisk, AGI Script ausgelesen und gewaehlt werden. Gibt es irgendwo ein Beispiel? Ist es ueberhaupt moeglich so etwas zu realisieren?

Vielen Dank!
 
Hi und vielen Dank für die schnelle Antwort. Muss ich denn die Addons installieren, oder kann man das ggf. innerhalb der extensions.conf unabhaengig der addons ueber ein externes agi script loesen?

Gibt es ggf. irgendwo ein Beispiel, wie das funktioniert?

danke
 
Wenn Du innerhalb der extensions mySQL aufrufen möchtest musst Du die addons installieren.

Alternative: AGI und eine Programmiersprache Deiner Wahl, bei mySQL bietet sich PHP an. (auch hier siehe www.voip-info.org)

Der Aufruf aus der extensions ist aber performanter als ein AGI Script.
 
Zuletzt bearbeitet:
Hast du dir den Text auch durchgelesen?
This is part of the asterisk-addons package available in the Asterisk CVS repository. This is an ADD-ON of asterisk, is not installed by default and must be downloaded and installed with the asterisk-addons package.
Ich würde die Addons bevorzugen.

mfg Guard-X
 
Okay, soweit so gut. Habe nun das addon installiert. Nun aber zurück zur Lösung. Ich erstelle nun eine Datenbank in SQL mit 2 Tabellen, Kurzwahl und Telefon-Nummer.

Kann mir jemand bitte ein Beispiel geben, wie ich diese nun mittels Asterisk/MySQL auslesen bzw. als Variable (Telefone-Nummer) zurück ins Asterisk zur Anwahl bekomme?

Selbst nach durchlesen der Homepage, werde ich irgendwie nicht gerade schlau...aus den Beispielen.

Vielen Dank!
 
Du erstellst eine Datenbank und eine Tabelle.
In der Tabelle mindestens zwei Felder.

Hier ein Codeschnipsel dazu (musst Du für Dich anpassen)

exten => s,1,NoOP(INFO: Start Macro kurzsqldial)
exten => s,n,MYSQL(Connect connid localhost user password database)
exten => s,n,Set(esuch=SELECT\ kurzwahlnr_dial\ FROM\ kurzwahlen\ WHERE\ kurzwahl=${ARG1}\ AND\ durchwahl=${ARG2}\;)
exten => s,n,MYSQL(Query resultid ${connid} ${esuch})
exten => s,n,MYSQL(Fetch fetchid ${resultid} v_kurzwahlnr_dial)
exten => s,n,MYSQL(Clear ${resultid})
exten => s,n,MYSQL(Disconnect ${connid})
exten => s,n,GoToIF($[${fetchid} = 1]?e_Eintrag:e_Kein_Eintrag)
exten => s,n(e_Kein_Eintrag),NoOP(kein SQL Eintrag)
exten => s,n,Playback(invalid)
exten => s,n,HangUp
exten => s,n(e_Eintrag),NoOP(INFO: Kurzwahl: ${v_kurzwahlnr_dial})
 
Sehr gut - vielen Dank! Werde ich dann gleich mal testen. Im Prinzip koennte ich das doch auch in ein macro setzen und dann als Dial folgendes verwenden?

Code:
exten => _*X.,1,Macro(kurzwahl,${EXTEN:1})
 
Ja, es ist auch als Macro gedacht, siehe Variablen ARG1 und ARG2 .
Wird kein Eintrag gefunden gibt es einen HangUp, ansonsten steht in ${v_kurzwahlnr_dial} die zu wählende Rufnummer.

Wenn Du dazu noch ein kleines Programm zur Eingabe und Pflege der Kurzwahlen für die Benutzer schreibt hast Du ein prima Tool.
 
Kostenlos!

Statistik des Forums

Themen
248,439
Beiträge
2,291,519
Mitglieder
377,856
Neuestes Mitglied
Adam_Warminski