Zwei allgemeine Fragen zu Realtime und Macros

konabi

Mitglied
Mitglied seit
11 Apr 2005
Beiträge
424
Punkte für Reaktionen
0
Punkte
16
Hallo,

Ich habe ein Macro [macro-localsip] in der extensions.conf definiert,
welches sich über deinen Eintrag in der mySQL extensions Table aufrufen möchte.

Asterisk gibt mir aber folgende Meldung:

app_macro.c:149 macro_exec: No such context 'macro-localsip,20' for macro 'localsip,20'

Danach habe ich versucht das Macro in der Datenbank zu hinterlegen. Leider ändert das nix.

Kann man und sollte man Macros in der Datenbank hinterlegen?

Danke Sven
 
konabi schrieb:
Kann man und sollte man Macros in der Datenbank hinterlegen?

:roll: Damit Du auch das in Dein Buch schreiben kannst:

  • Macros lassen sich nicht in die Realtime Datenbank auslagern.
  • Macros die in der extensions.conf vorhanden sind, lassen sich aber problemlos aus MySQL Realtime-Einträgen für die extensions.conf aufrufen

Fairerweise solltest Du alle Forums-Mitglieder, die Dir bei Deinem Buch geholfen haben, Dir auf die Sprünge zu helfen, als Co-Autoren aufführen und auch am Gewinn beteiligen :mrgreen:
 
Die Grundidee das Buch zu schreiben war weniger Gewinn zu machen, als einen deutschen Einstieg in Asterisk zu geben, da deutsche Dokumentaionen rar sind. Ähnlich wie Du in Deinem Kurs möchte ich da Grundwissen vermitteln und die Fragen klären über die ich selber gestolpert bin. Der größerer Reichtum ist das Wissen was man erlangt, weniger das Geld. Es gibt Wege schneller Geld zu verdienen.... Ein Dank geht natürlich an allen Helfern hier im Forum und auch an den Betreibern, das ist selbstverständlich und wird auch im Buch erwähnt.

Und eine Idee für ein Dankeschön habe ich auch schon..... ;)

Gruß Sven
 
betateilchen schrieb:
  • Macros lassen sich nicht in die Realtime Datenbank auslagern.
  • Macros die in der extensions.conf vorhanden sind, lassen sich aber problemlos aus MySQL Realtime-Einträgen für die extensions.conf aufrufen

Hi betateilchen,

ich habe aber Macros in meiner Datenbank, die auch als solches angesprochen werden können!?

Falls das Macro in der Datenbank liegen sollte, das
switch => Realtime/mymacro@realtime_ext
nicht vergessen! Ist natürlich hin und her, aber es liegt in der Datenbank :-)

Oder täusche ich mich da und es ist eigentlich gar kein Macro mehr? Klär mich mal auf...
 
Ich lasse mich gerne eines besseren belehren - kein Problem. Aber ich habe neulich 3 Stunden damit zugebracht, das zu probieren. Ohne Erfolg. Letztendlich habe ich dann das Macro wieder aus der Datenbank entfernt und in die extensions.conf geschrieben.

Vielleicht hat sich da noch irgendwann was versionsbedingt geändert ? Ich werde Deinen Hinweis zum Anlaß nehmen, die Sache nochmal zu testen. Den switch Eintrag hatte ich übrigens nicht vergessen.
 
ja ich hab in der doku gelesen das der support für s,i usw. erst später hinzugefügt wurde;)
 
Weiß schon jemand ob Macros in Realtime funktionieren?

Ich habs nicht hinbekommen, dass muss aber nix heißen.
Geht es grundsätzlich?

Und noch ein anderes Problem, wäre es möglich z.B. eine Variable in den switch Befehl mit einzubauen?

so etwa:

switch => Realtime/{$calleridnumm}@realtime_ext


Ich möchte es somit schaffen das jede Nebenstelle sein eigenes Macro
machen kann.
D.h. jeder kann seine eigenen Wählregeln in seinen Macro festlegen.
Meine Überlegung ist das der Asterisk dann jeweils in das Macro geht das für
diese eine Nebenstelle gilt.
 
Bei mir funktionieren Macros in Realtime, aber mit Einschränkungen im Syntax.
Variablen dürften nicht möglich sein...

mfg Guard-X
 
Schade.

Gibt es eine Möglichkeit das jeder SIP Client in einen Eigenen Makro seinen
Dialplan einstellen kann und dann nur jeder User über seinen eigenen Dailplan telefoniert.
Gleichzeitig möchte ich aber auch noch beliebig neue User einfügen können und
somit auch neue Makros. (aber ohne Reload)

Kleines Beispiel:

User 1 bekommt context [user1]
User 2 bekommt context [user2]

In der sip.conf steht dann

Code:
[user1]
switch => Realtime/macrouser1@realtime_ext

[user1]
switch => Realtime/macrouser2@realtime_ext

Somit könnte jeder Client seinen Dailplan(Macro) in Echtzeit so ändern wie er möchte.
Jedoch muss ich wenn ich jetzt noch einen User3 hinzufügen möchte
einen Reload der sip.conf machen.
Hierfür suche ich noch eine Lösung das ich auch das ohne reload hinbekomme.

Da wäre das mit der Variablen ganz schön da ich mir so den eintrag für jeden User sparen könnte.

switch => Realtime/{$calleridnumm}@realtime_ext


Nur leider geht das ja nicht.
 
klarglas schrieb:
In der sip.conf steht dann

Code:
[user1]
switch => Realtime/macrouser1@realtime_ext

[user2]
switch => Realtime/macrouser2@realtime_ext

Du meinst in der extensions.conf, oder?

Bau das doch alles in einen Kontext rein, dürfte eigentlich kein Problem sein. Nimm die Calleridnum und ein paar gotoifs dann passt das schon...
 
sorry, ja klar meinte ich die extentions.conf

Ja so gehts, ist mir klar, jedoch kann ich mit dieser Lösung keine neuen User einfügen ohne reload. Genau das möchte ich aber machen.
D.h. sobald ein neuer User hinzukommmt hat er auch schon gleich eine weiterleitung zu seinem neuen macro.
Das ist meiner Überlegung nach nur möglich wenn ich eine Variable zu verfügung habe.

Ich bräuchte also eine Lösung das der * je nach Benutzer in einen anderen Teil der
Datenbank (anderes Makro) switched wobei ich aber auch noch beliebige viele neue User hinzufügen kann. (ohne reload)
Wie gesagt der erste Teil geht mit den einzelnen Contexten aber das 2. wird zum Problem. (zumindestens in Verbindung mit dem ersten)
 
Kostenlos!

Statistik des Forums

Themen
248,538
Beiträge
2,293,778
Mitglieder
378,048
Neuestes Mitglied
jamesjonesjj10