.titleBar { margin-bottom: 5px!important; }

Versuch mit AGI Script

Dieses Thema im Forum "Asterisk Skripte" wurde erstellt von wpfundstein, 24 Feb. 2006.

  1. wpfundstein

    wpfundstein Mitglied

    Registriert seit:
    24 Nov. 2005
    Beiträge:
    267
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Hallo zusammen,

    Ich versuche mich in agi einzuarbeiten und habe hierzu ein kleines Script geschrieben.

    #!/usr/bin/perl -w
    #!/usr/bin/perl

    #main
    {
    my $result = "1"
    }
    exit($result);

    hab erst mal keine Ahnung ob das so funktioniert

    gespeichert hab ich esl als test.pl in das agi-bin Verzeichnis und ausführbar gemacht.

    im Dialplan steht

    exten => 1,1,agi(test.pl|1)

    Jetz krieg ich aber folgende Fehlermeldung

    ERROR[8201]: pbx.c:1372 ast_func_read: Function Agi not registered

    Muss ich das irgendwie noch was freischalten?

    Gruß, Werner
     
  2. betateilchen

    betateilchen Grandstream-Guru

    Registriert seit:
    30 Juni 2004
    Beiträge:
    12,882
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    am Letzenberg
    agi ist keine Funktion !

    Probiers mal mit

    Code:
    exten => 1,1,agi,test.pl|1
     
  3. wpfundstein

    wpfundstein Mitglied

    Registriert seit:
    24 Nov. 2005
    Beiträge:
    267
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Mensch Betateilchen, bist ne Wucht.

    das wars.


    Jetzt hab ich eine Frage. Wie kriege ich Werte wieder zurück?

    Beispiel: ich rufe auf agi,test.pl!${a}|${b}

    im Code steht dann:

    $ARG[1] = $ARG[0]

    nach dem Aufruf hat sich aber nichts getan.

    Bestimmt hast Du hierzu auch eine Antwort.

    Danke und Gruß, Werner




    Danke und Gruß, Werner
     
  4. rbaer

    rbaer Mitglied

    Registriert seit:
    7 Okt. 2004
    Beiträge:
    280
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    München
    Schau dir mal das agi-test.agi an.

    Das sub checkresult, sowie die darüber befindlichen while und foreach Schleifen solltest du als Template speichern und für jedes Script verwenden.

    Die eine liefert dir die Variablen die du übergibst, die andere eine ganze Menge nützlicher Werte die Asterisk vor Aufruf des scripts initialisiert.

    Du musst nach jedem Befehl, den dein Script übermittelt, das Resultat auswerten und dazu dient checkresult.