Hi,
Ich hab vor langer Zeit einmal ein AGI Script in Perl geschrieben das mir Nummern zu Namen übersetzt. Dazu verwende ich folgenden Befehl:
Früher hat das funktioniert aber irgendwann im Laufe des Jahres hat es angefangen zu spinnen und zwar immer dann wenn der Name mehrteilig ist (also z.B. Vorname Nachname). Angenommen der Name ist Heinz Mustermann dann wird die Callerid auf einmal NUR mehr auf Heinz gesetzt und nicht auf Heinz Mustermann! Ich wüsste allerdings nicht, was ich an meiner Config geändert haben könnte...
So verhält sich das Script, wenn ich es manuell aufrufe:
(logischerweise wird nur die EXEC Zeile über STDOUT ausgegeben, der Rest ist Debug über STDERR).
Wenn das Script Asterisk aufruft, macht es aber folgendes draus:
Wie man sieht: Auf einmal steht in er Callerid nur mehr Heinz und nicht Heinz Mustermann!!
Ich bin mir relativ sicher dass das Script damals funktioniert hat und ich glaube dran nichts geändert zu haben; umso ratloser bin ich jetzt wo der Fehler liegt...
Kann mir wer helfen?
Besten Dank!
divB
Ich hab vor langer Zeit einmal ein AGI Script in Perl geschrieben das mir Nummern zu Namen übersetzt. Dazu verwende ich folgenden Befehl:
Code:
$name = "Heinz Mustermann";
$AGI->exec('Set', "CALLERID(name)=\"$name\"");
Früher hat das funktioniert aber irgendwann im Laufe des Jahres hat es angefangen zu spinnen und zwar immer dann wenn der Name mehrteilig ist (also z.B. Vorname Nachname). Angenommen der Name ist Heinz Mustermann dann wird die Callerid auf einmal NUR mehr auf Heinz gesetzt und nicht auf Heinz Mustermann! Ich wüsste allerdings nicht, was ich an meiner Config geändert haben könnte...
So verhält sich das Script, wenn ich es manuell aufrufe:
Code:
asterisk:~# /usr/local/agi-bin/cidlookup.agi
agi_callerid: 067634857646
Callerid: 067634857646
So, our CID now is: 067634857646
Starting SQL backend
Yeah, found lookop. Name is: Heinz Mustermann
EXEC Set "CALLERID(name)="Heinz Mustermann""
asterisk:~#
(logischerweise wird nur die EXEC Zeile über STDOUT ausgegeben, der Rest ist Debug über STDERR).
Wenn das Script Asterisk aufruft, macht es aber folgendes draus:
Code:
-- Executing AGI("CAPI/ISDN1#02/-146", "cidlookup.agi") in new stack
-- Launched AGI Script /usr/local/agi-bin/cidlookup.agi
Mar 28 16:05:17 WARNING[15448]: channel.c:1638 ast_waitfor_nandfds: Thread 1089264560 Blocking 'CAPI/ISDN1#02/-146', already blocked by thread 0 in procedure
(null)
-- AGI Script Executing Application: (Set) Options: (CALLERID(name)=Heinz)
-- AGI Script cidlookup.agi completed, returning 0
Wie man sieht: Auf einmal steht in er Callerid nur mehr Heinz und nicht Heinz Mustermann!!
Ich bin mir relativ sicher dass das Script damals funktioniert hat und ich glaube dran nichts geändert zu haben; umso ratloser bin ich jetzt wo der Fehler liegt...
Kann mir wer helfen?
Besten Dank!
divB