ISDN-Modul Ereignis-Script ?

Hallo,

da ich mit dem ISDN-Modul nicht weiter komme Frage ich mal direkt :rolleyes:

Wie muß das Ereignis-Script aussehen um bei einem Anruf die Rufnummer auszulesen und in eine Variable zu schreiben ?

Hallo Horst,

ich bin an einem ähnlichen Problem angelangt, allerdings im Moment nur auf theoretischer Basis, da ich erst morgen dazu komme aktiv zu testen.
Wenn ich mir die Scripte so ansehe und auch die Funktionen zum ISDN-Modul,
dann schau in den Thread zum Modul und versuche das Script von Robert.

$callinfo müßte ein Array sein, das du dir mit print_r anzeigen lassen kannst. Dann suchst du dir den passenden Unterpunkt und schreibst den in eine Variable.

Beispiel für den 2. Eintrag aus dem Array(Zählen beginnt bei 0):

$Rufnummer = $callinfo[1];

Ob das allerdings funktioniert, das weiß ich nicht … da ungetestet.

Alternativ könnte auch das hier gehen(ebenfalls nur Vermutung):

$Rufnummer = ISDN_GetMSNIncoming( hier die ID vom ISDN Modul /*[ISDN Module]*/);

Leider gibt es bisher nur eine Sammlung der Befehle und keine Vollständige Doku mit Beispielen. Die Liste ist auf der ersten Seite im Thread zum ISDN-Modul oder wenn du ein Script erstellst, dann unter Befehl hinzufügen oder du bist im Script und drückst STRG + Space , dann geht ein Fenster mit allen Befehlen auf, die möglich sind.

edit
Falls du beide Versionen testest, dann gib mal bitte Rückmeldung … :wink:

Gruß
Jens

Horst.

So habe ich es gemacht vielleicht hilfts es Dir weiter.


 $IsdnModul  = 55329 /*[ISDN\ISDN Module]*/;

 $allowed_numbers = Array(); //leer = alle


if($IPS_SENDER == "ISDN")
{
    //Informationen ins Meldungsfenster ausgeben
    echo "Event: ".$ISDN_EVENT."
";

    if($ISDN_EVENT != "Disconnect")
    {
      $callinfo = ISDN_GetConnectionInfo($IsdnModul, $ISDN_CONNECTION);

      //Mehr Informationen ausgeben
      print_r($callinfo);

		//Anrufen in die Variable schreiben.
      $nr= $callinfo['CallingNumber'];
      SetValueInteger(19394 /*[ISDN\LastAnrufer]*/,(int)$nr);
	}

Jürgen

Hallo Jürgen, Danke für das Script.

Aber irgendwie klappt es bei mir nicht.

So habe ich das Sript jetzt bei mir drin

 $IsdnModul  = 50489 /*[Allgemein\Telefon\ISDN Module]*/;

 $allowed_numbers = Array(); //leer = alle


if($IPS_SENDER == "ISDN")
{
    //Informationen ins Meldungsfenster ausgeben
    echo "Event: ".$ISDN_EVENT."
";

    if($ISDN_EVENT != "Disconnect")
    {
      $callinfo = ISDN_GetConnectionInfo($IsdnModul, $ISDN_CONNECTION);

      //Mehr Informationen ausgeben
      print_r($callinfo);

        //Anrufen in die Variable schreiben.
      $nr= $callinfo['CallingNumber'];
      SetValueInteger(27436 /*[Allgemein\Telefon\ISDN Module\ISDNStatus1]*/,(int)$nr);
    }
}

Wenn ich es richtig verstanden habe sollte doch eine Meldung kommen, aber bei mir passiert bei einem Anruf garnichts.

Dieses erscheint im ISDN-Modul bei Debug. Es sieht doch eigentlich so aus als ob Das ISDN-Modul arbeitet.

Noch jemand eine Idee was falsch ist.

Edit: Ich sehe gerade das daß Script sogar ausgeführt wird bei einem anruf (zuletzt ausgeführt ändert sich).

isdn_debug.jpg

Ich habe jetzt mal if($ISDN_EVENT != „Disconnect“) auf Connect geändert.

Jetzt schreibt das Script wenigstens was in die Variable, allerdings hat die Nummer nicht mal annäherd was mit der Rufnummer zu tun.

Also irgendwie komme ich nicht weiter :frowning:

Hallo Horst,

hast Du denn im ISDN Modul auch das Script zugeordnet ??

isdn.png

Ja habe ich, ich sehe auch das das Script ausgeführt wird.

Wie geschrieben wird mir mit dem Conect auch was in die Variable geschrieben, ist nur nicht anähernd die Rufnummer des Anrufers.

<Hallo,

also das Script läuft durch, denn ich sehe das die Zeit aktuallisiert wird.
Allerdings werden keinerlei information geholt, bzw. angezeigt. Woran kann das liegen ? Falsche Treiber? Ich habe eine FritzCard PCI.

So, nach langem rumprobieren scheit es zu laufen. Ich werde es jetzt mal beobachten und mich an die nächste Baustelle machen :rolleyes:

Danke an alle die versucht haben mir zu helfen.:slight_smile:

Hallo Horst,

wäre schön zu wissen was du jetzt alles gemacht hast damit es endlich geht!? … und übrigens … das Forum hat auch ne Editierfunktion :wink:

Gruß
Jens

Hallo,

also es klappt noch nicht wirklich.

Wenn ich mich von meinem Festnetz anrufe steht diese Nummer in der Variablen:

421682*** diese ist richtig

wenn ich von meinem Handy anrufe steht diese Nummer in der Variablen:

2147483647 diese hat keine Ähnlichkeit mit meiner Handynummer (0151151*****)

Ich hatte heute bei einem Anrufer die richtige Nummer und bei einem anderen Anrufer auch eine „Phantasienummer“ in der Variablen.

Langsam habe ich das Gefühl das es mal geht und mal nicht.

Hat noch jemand einen Tip für mich, oder ein Funktionierendes Sript mit dem ich testen kann?

Hier das Ereignis-Script welches ich benutze.


 $IsdnModul  = 17794 /*[Allgemein\Telefon\ISDN Module]*/;

 $allowed_numbers = Array(); //leer = alle


if($IPS_SENDER == "ISDN")
{
    //Informationen ins Meldungsfenster ausgeben
    echo "Event: ".$ISDN_EVENT."
";

    if($ISDN_EVENT != "Disconnect")
    {
      $callinfo = ISDN_GetConnectionInfo($IsdnModul, $ISDN_CONNECTION);


        //Anrufen in die Variable schreiben.
      $nr= $callinfo['CallingNumber'];
      SetValueInteger(56065 /*[Allgemein\Telefon\ISDN Module\ISDNStatus]*/,(int)$nr);
    }
}

Editfunktion, sorry werde ich in Zukunft benutzen.

naja letztendlich 'nen neuen Treiber installiert. Allerdings war die Rufnummer die ich sehen wollte (vom meinem handy) immer noch nicht annähernd richtig.

Irgendwann bin ich dann auf die Idee gekommen mich von meinem festnetz anzurufen, naja und dort wurde mir die Nummer richtig angezeigt. Im Augenblick gehe ich davon aus das es am Handy lag.
Sicherlich kann es noch sein das mir nicht die Rufnummer des Anrufers gezeigt wird, sondern meine eigene aber da warte ich jetzt ab bis mich wer fremdes anruft. Auf jedenfall geht das Script, warum die Rufnummer nicht richtig war/ ist muss ich dann nochmal schauen.

Hallo,

da mein ISDN Modul immer noch nicht die Rufnummer des Anrufers anzeigt, nochmal die Frage ob irgendwer noch einen Tip hat was falsch laufen könnte.

Oder gibt es noch eine andere Möglichkeit sich die Rufnummer anzeigen zu lassen ? Bin langsam am verzweifeln.

Hallo Horst,

ich benutze auch dieses Script testweise … da ich leider noch nicht weiter bin, aber bei mir funktioniert das einwandfrei!!

<?

 if($IPS_SENDER == "ISDN")
 {
    if($ISDN_EVENT != "Disconnect")
    {
      $callinfo = ISDN_GetConnectionInfo(27853 /*[Fritzbox\ISDN Module]*/, $ISDN_CONNECTION);
      $Anrufer = $callinfo['CallingNumber'];

		SetValueString(25486 /*[Fritzbox\ISDN Module\Letzter_Anrufer]*/, $Anrufer);

      //Mehr Informationen ausgeben
      //print_r($callinfo);
     }
 }

?>

Ich nehme mal an, das bei dir in der Grundkonfiguration noch irgendein Fehler vor liegt …

Hast du mal alles gelöscht und neu eingerichtet?

Gruß
Jens

Hallo Jens, mit deinem Script geht es ;-)) Danke.

Hallo Jens,

nee gelöscht und neu angelegt habe ich noch nicht. Werde ich jetzt mal machen.
Wie ich sehe hast Du die Fritzbox, da ich eine Fritz ISDN-karte habe dürften die Unterschiede ja nicht so gross sein.

Melde mich wieder wenn ich getestet habe .

Hi,

ich wollte mich nun auch mal an das ISDN-Modul machen.

Ich habe die Instanz angelegt und das Script aus diesem Thread angepasst und zugeordnet.

Vor der ISDN-Instanz ist ein rotes „!“. Bedeutet also nicht Gutes.

Welche Schritt habe ich vergessen? Als Hardware habe ich eine Fritzbox 7270.

Muss ich noch irgendwelche Treiber installieren?

Gruß

Jimmy

Hallo,

die Treiber für die Fritzbox sollten schon installiert sein, mindestens der Capi Treiber, ich hab hier eine Acer Box und die wollte auch gleich beim anstöpseln einen Treiber installieren den ich ihr auch gegeben habe.

Schöne Grüße
Thomas

Die Fritzbox ist aber übers Netzwerk angeschlossen und nicht direkt. Dafür wird auf jeden Fall die sogenannte NetCapi benötigt. Ne genaue Anleitung hab ich leider nicht zur Hand … ich glaube zur V1 gabs mal ne Anleitung !?

Aber Google hilft da sicher weiter

So, Capi Treiber habe ich jetzt ins System32 Verzeichnis kopiert und Server neu gestartet. In IPS ist das rote „!“ auch weg.

Aber wenn ich auf der im ISDN-Modul angegebenen MSN anrufe, wird das im ISDN-Modul hinterlegte Script nicht aufgerufen (Aktualisiert xx.xx.xxxx).

Ich nutze das Script auf dem 1. Thread und habe nur die ID des ISDN-Moduls geändert.

Bitte um Hilfestellung.

Gruß

Jimmy

Ich glaube die Funktion muss erst an der Box eingeschaltet werden …

edit
Frau Google sagt dazu: Tastenkombination #963

http://www.wehavemorefun.de/fritzbox/FON#Tastencodes

http://www.avm.de/de/Service/Service-Portale/Service-Portal/Sonstige_Dokumente/Tastencodes_zur_FRITZBox_Bedienung_per_Telefon.pdf

Ist eingeschaltet. Das Script bzw. die Instanz reagiert aber immer noch nicht auf einen Anruf.