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

Callrouting mit DTMFbox möglich?

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von CayMac, 20 Nov. 2008.

  1. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hallo!

    Auch nach eingehendem Studium der Anleitungen und des Forums habe ich nicht so recht die Hilfe gefunden die ich erhoffte
    (Super Forum btw, kannte ich noch garnicht!)

    Ist es möglich mit DTMF-Box sowas wie Callrouting einzurichten? Sprich ungefähr so:

    Anruf kommt
    Taste 1 gedrückt -> Weiterleitung auf Phone1/MSN1
    Taste 2 gedrückt -> Weiterleitung auf Phone2/MSN2
    Taste 3 gedrückt -> Anrufbeantworter
    etc...

    Für jede Lösung oder einen Hinweis in die richtige Richtung wär ich sehr dankbar, hauptsache es hat nichts mit Linux zu tun, da kann ich nicht so recht mit
    Danke im Voraus!

    PS: Hatte das auch im thread vom Programm selbst geposted, falls das eher dorthin gehörte, den hier bitte löschen.
     
  2. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hat denn niemand einen klitzekleinen Ansatz? Muss ja keine fertige Lösung sein :)
    Ist es überhaupt möglich einen Anruf auf Leitung Y zu routen wenn er auf Leitung X eintrifft?
     
  3. streamilein

    streamilein Neuer User

    Registriert seit:
    27 Feb. 2008
    Beiträge:
    59
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    hast du eine Lösung gefunden? Ich suche nämlich Ähnliches.
     
  4. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Nein leider noch nix hinbekommen :-(
    Ich weiß ja auch noch nicht einmal, ob es überhaupt machbar WÄRE :)
     
  5. Moppel_me

    Moppel_me Neuer User

    Registriert seit:
    23 Mai 2007
    Beiträge:
    43
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Tag! :)
    Auch hier gilt das gleiche wie hier : Link zum Thread vom streamilein

    Es gibt bei der DTMFBox die Möglichkeit, dieser per Skript zu machen. Schaut euch einfach mal das Archiv an. Die Samplescripte müssten bei beiden von euch was brauchbares liefern.

    Ich hoffe das war Anhaltspunkt genug. :) Ich arbeite, wie gesagt, mit der Win32 Version die etwas anders ist. Ärgert mich aber im Moment genauso... :)

    Probierts erstmal selber, ansonsten wird Marco bald schon antworten. Er ist wohl im Moment nur etwas im Streß!

    Grüße!
    René
     
  6. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ahhh ich danke dir! Der erwähnte thread bringts ja noch präziser auf den Punkt was ich suche und ist schonmal ein Hoffnungsschimmer :)
    Danke!
     
  7. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Also ich hänge weiterhin am Simpelsten fest:

    Ich kriegs einfach nicht hin, daß ein Anrufer sofort in irgendein Menü kommt.
    Also irgendwo müsste ich den call-in-event mit nem Menü verknüpfeln, ich hab nur keine Ahnung wie oder wo :)

    Wer immer einen kleinen Tip hat: Nicht zögern bitte ,-)
     
  8. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich bitte erneut verzweifelt um Hilfestellung :)

    Habe nun das Menü so halbwegs hinbekommen, basierend auf dem anti-callcenter-script als Anregung. Funktioniert auch soweit, nur
    die Hauptfunktion á la "1 drücken für (msn1), 2 drücken für (msn2)" bekomme ich beim besten Willen nicht so ganz hin.

    Ich drücke also z.B. die 2, und via

    DST_ID=`$DTMFBOX $SRC_ID -call "$DTMF" "$SRC_NO" "3"

    (kopiert aus diesem Thread)

    klingelt es dann für ein paar Sekunden IRGENDWO und es wird einfach aufgelegt.
    Laut Marcos o.g. Skript sollte dieser Befehl es dann "normal" klingeln lassen. Nur das passiert irgendwie nicht. Egal welche Controller-No ich angebe, ich hab rumprobiert wie ein Blöder, ich peil es nicht :-(

    Sollte ich nicht bald nen Tip bekommen werd ich die Idee leider einstampfen müssen *snüff*

    Sollte ich mich irgendwie nur blöde ausgedrückt haben, hier mal den simplen Ablauf nochmal:

    Anruf kommt
    --> Menü: 1 drücken für Superman, 2 für Batman
    --> Menüpunkt 1: Gespräch an MSN1 leiten (fon1 direkt geht ja leider nicht ODER?)
    --> Menupunkt 2: Gespräch an MSN2 leiten (oder fon2 wenns denn ginge)

    Oder alternativ wenns garnicht machbar wäre:
    --> Menü: 1 für anrufen, 2 für auflegen (jaja, sehr sinnvoll)
    --> 1 => normal das Gespräch "durchstellen"
    --> 2 => auflegen (das kann ich sogar schon *g*)
     
  9. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Hi.
    Sorry. Der Faden ist mir leider jetzt erst aufgefallen.

    Es sollte auf jedenfall nicht IRGENDWO klingeln. Der Sache möchte ich gerne näher auf den Grund gehen.
    Du kannst die folgende Zeile auch auf der Konsole testen:
    Code:
    DST_ID=`$DTMFBOX $SRC_ID -call "$DTMF" "$SRC_NO" "3"
    
    Code:
    ID=`./dtmfbox -call "12345" "diezielrufnummer/msn" "3"`
    ./dtmfbox $ID -speak "Hallo!"
    ./dtmfbox $ID -text "Display-Message!"
    
    [I](siehe auch)[/I]
    ./dtmfbox -call help
    
    Die 3 am Ende steht für den internen S0-Bus (ISDN). Also das was wir suchen.

    Immer ruhig Blut, das klappt schon. Du kannst auch zu Asterisk greifen, wenn du möchtest.
     
  10. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #10 CayMac, 18 Dez. 2008
    Zuletzt bearbeitet: 28 Dez. 2008
    Hi Marco!

    Kein Problem, bin ja froh, daß du überhaupt antwortest :)


    Wenn ich besagte Kommandos auf Konsolenebene durchführe passiert leider garnix. Als Controller die 1 und es klingelt. Bei der 3 passiert nix.
    Also ich hab dtmfbox über web-if gestartet, und deine Befehle hab ich per telnet dann gestartet. Richtig soweit?
    Wir winken uns nämlich auf der DAU-GURU-Skala von entgegengesetzten Enden entgegen :)

    Noch so als Info:
    Telefone sind an FON1-3 und alle analog.



    Nö, deine box gefällt mir super, ich bin halt nur auf Linux und Telefoniegebiet ein ziemlicher DAU. Davon ab versuch ich das nun seit einem Monat, aufgeben ist da eigentlich keine Option mehr.


    Hier mal meine menu.cfg:
    Code:
    [menu:main]
    say=1 Anrufbeantworter. 2 DTMF Befehle. 3 Koolfruh. 4 Sonstiges.
    1=script:am_admin("START")
    2=menu:dtmf_commands
    3=menu:callthrough_pin
    4=menu:misc
    #=lib:speak("1 Anrufbeantworter. 2 DTMF Befehle. 3 Koolfruh. 4 Sonstiges.")
    
    [menu:callrouter_caller]
    1=script:action_callrouter_eins
    2=script:action_callrouter_zwei
    3=script:am_admin("START")
    4=script:action_callrouter_bye
    
    [script:action_callrouter_bye]
    cmd=/var/dtmfbox/script/action_callrouter.sh(/var/dtmfbox/script/action_callrouter.sh, "%event%", "%type%", "%direction%", "%src_id%", "%dst_id%", "%src_no%", "%dst_no%", "%acc_id%", "%dtmf%", "BYE")
    
    [menu:am]
    #=script:am_admin("CHOOSE")
    *=script:am_admin("END")
    
    [menu:am_setup]
    say=Einstellungen. 1 aktivieren, deaktivieren. 2 Ansagen aufnehmen. 3 Aufnahmen loeschen.
    1=script:am_setup("ON_OFF")
    2=menu:am_record_announcement
    3=menu:am_delete
    *=script:am_admin("START")
    
    [menu:am_on_off]
    1=script:am_setup("DO_ON_OFF")
    *=script:am_admin("SETUP")
    
    // TODO: AB (Ansagen aufnehmen)
    [menu:am_record_announcement]
    say=Das Aufnehmen von Ansagen ist nicht implementiert.
    1=script:am_setup("RECORD_ANNOUNCEMENT")
    2=script:am_setup("RECORD_ANNOUNCEMENT_END")
    *=script:am_admin("SETUP")
    
    [menu:am_delete]
    say=Alle Aufnahmen loeschen mit 1, * um abzubrechen.
    1=script:am_setup("DELETE_ALL")
    *=script:am_admin("SETUP")
    
    [menu:dtmf_commands]
    say=DTMF Befehle.
    1#=lib:speak("Befehl 1 nicht hinterlegt!")
    2#=lib:speak("Befehl 2 nicht hinterlegt!")
    3#=lib:speak("Befehl 3 nicht hinterlegt!")
    4#=lib:speak("Befehl 4 nicht hinterlegt!")
    5#=lib:speak("Befehl 5 nicht hinterlegt!")
    *=menu:main
    
    [menu:callthrough_pin]
    say=Koolfruh. Bitte Pin eingeben.
    1234#=menu:callthrough_account
    *=menu:main
    
    [menu:callthrough_account]
    say=Bitte Account 1 bis 10 auswaehlen. 0 fuer Intern.
    0#=menu:callthrough_number(0)
    1#=menu:callthrough_number(1)
    2#=menu:callthrough_number(2)
    3#=menu:callthrough_number(3)
    4#=menu:callthrough_number(4)
    5#=menu:callthrough_number(5)
    6#=menu:callthrough_number(6)
    7#=menu:callthrough_number(7)
    8#=menu:callthrough_number(8)
    9#=menu:callthrough_number(9)
    10#=menu:callthrough_number(10)
    *=menu:main
    
    
    
    [menu:callthrough_number]
    say=Bitte Nummer eingeben fuer Account %$1%.
    *=script:callthrough
    #=script:callthrough
    
    [menu:misc]
    say=Sonstiges. 1 Fritz Box. 2 Wetter. 3 scheck maeil. 4 Radio.
    1=menu:misc_fb
    2=menu:misc_weather
    3=menu:misc_checkmaild
    4=menu:misc_radio
    *=menu:main
    
    [menu:misc_fb]
    say=1 Ei,Pi Adresse. 2 letzter Ribuht. 3 Uhrzeit.
    1=script:misc_fb("IP")
    2=script:misc_fb("LAST_REBOOT")
    3=script:misc_fb("CURRENT_TIME")
    *=menu:misc
    
    [menu:misc_weather]
    say=1 Wetter vorher sage. 2 Bieoo wetter. 3 Pod kahst.
    1=script:misc_weather("FORCAST")
    2=script:misc_weather("BIO")
    3=script:misc_weather("PODCAST")
    *=menu:misc
    
    [menu:misc_checkmaild]
    say=Maeilaekaunt 1 bis 3 waehlen.
    1=script:misc_checkmaild(1)
    2=script:misc_checkmaild(2)
    3=script:misc_checkmaild(3)
    *=menu:misc
    
    [menu:misc_radio]
    say=Radio sztriem waehlen.
    1=script:misc_radio(1)
    2=script:misc_radio(2)
    3=script:misc_radio(3)
    4=script:misc_radio(4)
    5=script:misc_radio(5)
    6=script:misc_radio(6)
    7=script:misc_radio(7)
    8=script:misc_radio(8)
    9=script:misc_radio(9)
    *=menu:misc
    
    ////////////////////////////////////////////////////////////////
    // Skripts und Libs
    ////////////////////////////////////////////////////////////////
    
    [script:am_admin]
    cmd=/var/dtmfbox/script/am_admin.sh(/var/dtmfbox/script/am_admin.sh, "%$1%", "%type%", "%direction%", "%src_id%", "%dst_id%", "%src_no%", "%dst_no%", "%acc_id%", "%dtmf%")
    
    [script:am_setup]
    cmd=/var/dtmfbox/script/am_setup.sh(/var/dtmfbox/script/am_setup.sh, "%$1%", "%type%", "%direction%", "%src_id%", "%dst_id%", "%src_no%", "%dst_no%", "%acc_id%", "%dtmf%")
    
    [script:callthrough]
    cmd=/var/dtmfbox/script/callthrough.sh(/var/dtmfbox/script/callthrough.sh, "%dtmf%", "%src_id%", "%dst_id%", "%acc_id%", "%$1%")
    
    [script:misc_fb]
    cmd=/var/dtmfbox/script/misc_fb.sh(/var/dtmfbox/script/misc_fb.sh, "%$1%", "%src_id%")
    
    [script:misc_weather]
    cmd=/var/dtmfbox/script/misc_weather.sh(/var/dtmfbox/script/misc_weather.sh, "%$1%", "%src_id%")
    
    [script:misc_checkmaild]
    cmd=/var/dtmfbox/script/misc_checkmaild.sh(/var/dtmfbox/script/misc_checkmaild.sh, "%$1%", "%src_id%")
    
    [script:misc_radio]
    cmd=/var/dtmfbox/script/misc_radio.sh(/var/dtmfbox/script/misc_radio.sh, "%$1%", "%src_id%")
    
    [script:action_am]
    cmd=/var/dtmfbox/script/action_am.sh(/var/dtmfbox/script/action_am.sh, "%event%", "%type%", "%direction%", "%src_id%", "%dst_id%", "%src_no%", "%dst_no%", "%acc_id%", "%dtmf%")
    
    [script:action_cbct]
    cmd=/var/dtmfbox/script/action_cbct.sh(/var/dtmfbox/script/action_cbct.sh, "%event%", "%type%", "%direction%", "%src_id%", "%dst_id%", "%src_no%", "%dst_no%", "%acc_id%", "%dtmf%")
    
    [script:action_ctrl5]
    cmd=/var/dtmfbox/script/action_ctrl5.sh(/var/dtmfbox/script/action_ctrl5.sh, "%event%", "%type%", "%direction%", "%src_id%", "%dst_id%", "%src_no%", "%dst_no%", "%acc_id%", "%dtmf%")
    
    [lib:speak]
    library=./menu.plugin.so
    function=speak(%4%,"%$1%")
    
    ////////////////////////////////////////////////////////////////
    // Aktionen
    ////////////////////////////////////////////////////////////////
    

    und hier action_callrouter.sh

    Code:
    #!/var/tmp/sh
    
    # Skripteinstellungen
    . /var/dtmfbox/script.cfg
    
    # Argumente
    THIS_FILE="$0"
    EVENT="$1"
    TYPE="$2"
    DIRECTION="$3"
    SRC_ID="$4"
    DST_ID="$5"
    SRC_NO="$6"
    DST_NO="$7"
    ACC_ID="$8"
    DTMF="$9"
    MODE="$10"
    
    ABORTFILE="/var/dtmfbox/tmp/$SRC_ID.abort_action"
    
    
    
    
    if [ "$EVENT" = "DISCONNECT" ];
    then
    	$DTMFBOX $DST_ID -hook down							
    	if [ -f "$ABORTFILE" ]; then rm "$ABORTFILE"; fi	
    fi 
    
    Ich weiss, da ist noch viel Mist drin und die Hauptfunktion, so es denn überhaupt gehen würde, würde eh nicht gehen, aber ich weiss nicht, wie ich FONx direkt ansprechen sollte :-(
     
  11. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    #11 bodega, 20 Dez. 2008
    Zuletzt bearbeitet: 20 Dez. 2008
    Hallo CayMac,

    Also die Telefone hängen an Fon1-3? Da musst du etwas tricksen (so ähnlich wie hier).

    Also im Prinzip:
    • Im AVM WebIf zwei (Pseudo)-Internettelefonieaccounts anlegen:
      Internetrufnummer: 5001 und 5002
      Benutzername/Pass: 5001 und 5002
      Registrar: localhost
      Rufnummernformat: Alle Haken rausnehmen
      Der Rest sollte leer sein
    • FON1 und FON2 zusätzlich eine eingehende Rufnummer hinterlegen:
      FON1=5001 und FON2=5002
    Nun kann man FON1 und FON2 direkt ansprechen, per SIP.

    Das Skript müsstest du dafür etwas anpassen:
    Code:
    ...
    if [ "$MODE" = "EINS" ];
    then
      $DTMFBOX $SRC_ID -speak "O KEY. Bitte warten."
    	[COLOR="Red"]DST_ID=`$DTMFBOX $SRC_ID -call "$DTMF" "5001@fritz.box:5060"`[/COLOR]
    	$DTMFBOX $SRC_ID -stop menu							
    	$DTMFBOX $SRC_ID -scriptfile "$THIS_FILE"
    	$DTMFBOX $DST_ID -scriptfile "$THIS_FILE"
    fi
    
    if [ "$MODE" = "ZWEI" ];
    then
      $DTMFBOX $SRC_ID -speak "O KEY. Bitte warten."
    	[COLOR="Red"]DST_ID=`$DTMFBOX $SRC_ID -call "$DTMF" "5002@fritz.box:5060"`[/COLOR]
    	$DTMFBOX $SRC_ID -stop menu							
    	$DTMFBOX $SRC_ID -scriptfile "$THIS_FILE"
    	$DTMFBOX $DST_ID -scriptfile "$THIS_FILE"
    fi
    ....
    
    Das wäre auch ein schöner Ansatzpunkt für eine Türsprechanlage über Analog-Telefon. Hoffe, es funktioniert :)
     
  12. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi Marco,

    danke für die fixe Antwort, aber leider klappt das irgendwie nicht so ganz.

    Einstellungen WebIF:
    Einstellungen dtmfbox:
    Wenn ich nun anrufe und z.B. die 1 auswähle, hab ich zwar Freizeichen, aber es klingelt nirgendwo :)

    Teste ich es nun in der Konsole via...
    Code:
    dtmfbox -call src=12345 dst=5001@fritz.box:5060 ctrl=1
    
    ...klingelt nix. Egal ob dst=5001 oder port 5061 oder ctrl=1/3/x

    Ein...
    Code:
     dtmfbox -call src=12345 dst=[MSN] ctrl=1
    
    Funktioniert prima, also gehts im Prinzip ja.
    Hab ich was übersehen?
     
  13. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    #13 bodega, 20 Dez. 2008
    Zuletzt bearbeitet: 20 Dez. 2008
    Die Einstellungen des Registrar-Modus sind nicht nötig, da in diesem Fall keine Anmeldung per SIP-Client statt findet.
    Ansonsten alles ok, solange FON1-3 eine Internetrufnummer zugewiesen wurde.

    Du darfst beim Testen nicht den Controller mit angeben (ctrl=x), da sonst der Anruf wieder über CAPI statt findet.

    Also nur
    Code:
    dtmfbox -call src=12345 dst=5001@fritz.box:5060
    oder
    dtmfbox -call src=12345 dst=5001@192.168.178.1
    oder
    dtmfbox -call src=12345 dst=5001@localhost
    
    EDIT:
    Ich habe es gerade mal probiert. Beim Internettelefonieaccount muss man doch einen Registrar-Server eintragen. Diser muss nicht zwangsläufig existieren, aber dann geht es. Mein Fehler.
     
  14. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi Marco,

    habe nen nicht-existenten registrar im web-if eingetragen, nun sind die nummern auch "nicht angemeldet" statt "deaktiviert".
    Alle deine Beispiele führen in der Konsole allerdings zu rein garnichts :-(

    Hab extra den Skript geändert, nicht daß der plötzlich drangeht.
    Die einzige Konsolenrückmelden ist eine "0".

    Was könnt ich denn noch so gravierend falsch gemacht haben?
    Unter ACC1-3 hab ich die MSNs hinterlegt. Richtig? Falsch? Halbrichtig?

    Bei dtmfbox hab ich Registrarmode und voip aus und an gehabt, kein Unterschied, es sei denn ich hab dort was falsches stehen?

    So nah dran, das ist gemein :)
     
  15. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Hallo CayMac,

    Acc1-3 ist richtig so. Die MSN ohne Vorwahl. Das Menü geht auch bereits ran, also richtig :)

    Ctrl. 3 (ISDN/intern) geht bei dir leider nicht, da so wie du sagst, die Telefone an FON1-3 hängen (also Analog).

    Ctrl. 1 (ISDN/extern) kannst du für die Weiterleitung leider auch nicht verwenden, da zu wenige B-Kanäle zur Verfügung stehen würden (max. 2 Verbindungen). Zudem soll das Gespräch ja intern weitergeleitet werden.

    VoIP muss auf jedenfall an sein, da sonst kein SIP-Rufaufbau möglich wäre.

    Ich müsste jetzt raten, aber du hast auf jedenfall auch den Telefoniegeräten die Internetrufnummer zugewiesen (Ankommende Anrufe: Internet 5001)?

    Ein Log von dem Wählvorgang wäre hilfreich.
     
  16. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi Marco,

    Ja. Die Nummern hab ich zugewiesen und mittlerweile 10x nachgesehen :)

    Hier mal das Log. Ich erkenne da leider nicht allzuviel hilfreiches für mich, du hoffentlich eher.

    [Edit frank_m24: Bitte benutzt CODE Tags für lange Ausgaben.]
    Code:
     19:11:07.032      dtmfbox.c dtmfbox 0.5.0-beta1
     19:11:07.033      dtmfbox.c PJSIP 0.9.0-release
     19:11:07.053          pjlib select() I/O Queue created (0x2ac46070)
     19:11:07.054 sip_endpoint.c Module "mod-msg-print" registered
     19:11:07.055    voip_ctrl.c Init VOIP...
     19:11:07.059    voip_ctrl.c Resolve IP from host 192.168.0.1 ...
     19:11:07.060    voip_ctrl.c Use IP: 192.168.0.1
     19:11:07.061    udp0x5483f0 SIP UDP transport started, published address is 192.168.0.1:5061
     19:11:07.062    voip_ctrl.c UDP server listening on port 5061
     19:11:07.065 sip_endpoint.c Module "mod-tsx-layer" registered
     19:11:07.066 sip_endpoint.c Module "mod-stateful-util" registered
     19:11:07.070 sip_endpoint.c Module "mod-ua" registered
     19:11:07.071 sip_endpoint.c Module "mod-100rel" registered
     19:11:07.071 sip_endpoint.c Module "mod-invite" registered
     19:11:07.072 sip_endpoint.c Module "dtmfbox" registered
     19:11:07.076          pjlib select() I/O Queue created (0x56d7ec)
     19:11:07.083    voip_ctrl.c Conference bridge created (22050hz/16/1)
     19:11:07.087        funcs.c Allocate 10 connections with 4 RTP/RTCP transports
     19:11:07.095    voip_ctrl.c RTP/RTCP: 192.168.0.1:4000-4001
     19:11:07.098    voip_ctrl.c RTP/RTCP: 192.168.0.1:4002-4003
     19:11:07.101    voip_ctrl.c RTP/RTCP: 192.168.0.1:4004-4005
     19:11:07.103    voip_ctrl.c RTP/RTCP: 192.168.0.1:4006-4007
     19:11:07.104    voip_ctrl.c RTP/RTCP media transport created
     19:11:07.108    voip_ctrl.c VOIP initialized!
     19:11:07.108    capi_ctrl.c Init CAPI...
     19:11:07.109    capi_ctrl.c CAPI controller: 5
     19:11:07.110    capi_ctrl.c Found controller #1 with 2 B-channel(s)
     19:11:07.110    capi_ctrl.c Found controller #2 with 2 B-channel(s)
     19:11:07.110    capi_ctrl.c Found controller #3 with 2 B-channel(s)
     19:11:07.111    capi_ctrl.c Found controller #4 with 1 B-channel(s)
     19:11:07.111    capi_ctrl.c Found controller #5 with 3 B-channel(s)
     19:11:07.118    capi_ctrl.c CAPI registered!
     19:11:07.119    alaw_ulaw.c Build a-law/pcm table buffer
     19:11:07.265    voip_ctrl.c Start VoIP listen loop...
     19:11:09.343    capi_ctrl.c CAPI initialized!
     19:11:09.509      plugins.c [plugin.menu]: lib:speak loaded (2 entries)
     19:11:09.512      plugins.c [plugin.menu]: menu:am loaded (2 entries)
     19:11:09.517      plugins.c [plugin.menu]: menu:am_delete loaded (3 entries)
     19:11:09.520      plugins.c [plugin.menu]: menu:am_on_off loaded (2 entries)
     19:11:09.523      plugins.c [plugin.menu]: menu:am_record_announcement loaded (4 entries)
     19:11:09.527      plugins.c [plugin.menu]: menu:am_setup loaded (5 entries)
     19:11:09.531      plugins.c [plugin.menu]: menu:callthrough_account loaded (13 entries)
     19:11:09.536      plugins.c [plugin.menu]: menu:callthrough_number loaded (3 entries)
     19:11:09.540      plugins.c [plugin.menu]: menu:callthrough_pin loaded (3 entries)
     19:11:09.544      plugins.c [plugin.menu]: menu:dtmf_commands loaded (7 entries)
     19:11:09.547      plugins.c [plugin.menu]: menu:main loaded (6 entries)
     19:11:09.553      plugins.c [plugin.menu]: menu:misc loaded (6 entries)
     19:11:09.558      plugins.c [plugin.menu]: menu:misc_checkmaild loaded (5 entries)
     19:11:09.563      plugins.c [plugin.menu]: menu:misc_fb loaded (5 entries)
     19:11:09.569      plugins.c [plugin.menu]: menu:misc_radio loaded (11 entries)
     19:11:09.574      plugins.c [plugin.menu]: menu:misc_weather loaded (5 entries)
     19:11:09.581      plugins.c [plugin.menu]: script:action_am loaded (1 entries)
     19:11:09.588      plugins.c [plugin.menu]: script:action_cbct loaded (1 entries)
     19:11:09.594      plugins.c [plugin.menu]: script:action_ctrl5 loaded (1 entries)
     19:11:09.614      plugins.c [plugin.menu]: script:am_admin loaded (1 entries)
     19:11:09.620      plugins.c [plugin.menu]: script:am_setup loaded (1 entries)
     19:11:09.626      plugins.c [plugin.menu]: script:callthrough loaded (1 entries)
     19:11:09.632      plugins.c [plugin.menu]: script:misc_checkmaild loaded (1 entries)
     19:11:09.638      plugins.c [plugin.menu]: script:misc_fb loaded (1 entries)
     19:11:09.645      plugins.c [plugin.menu]: script:misc_radio loaded (1 entries)
     19:11:09.651      plugins.c [plugin.menu]: script:misc_weather loaded (1 entries)
     19:11:09.659      plugins.c [plugin.menu]: 33 menues/actions loaded!
     19:11:09.660      plugins.c [plugin.menu]: Initialized!
     19:11:09.660      plugins.c #1 - Plugin "/var/dtmfbox/menu.plugin.so" loaded!
     19:11:09.668        funcs.c Set low priority
     19:11:09.670    capi_ctrl.c (0x3ff) - Listen to CAPI controller 1...
     19:11:09.671    capi_ctrl.c (0x3ff) - Listen to CAPI controller 3...
     19:11:09.672    capi_ctrl.c (0x3ff) - Listen to CAPI controller 4...
     19:11:09.672    capi_ctrl.c (0x3ff) - Listen to CAPI controller 5...
     19:11:09.673    capi_ctrl.c (CNF, CTRL 1) - CAPI_LISTEN
     19:11:09.675    capi_ctrl.c (CNF, CTRL 3) - CAPI_LISTEN
     19:11:09.676    capi_ctrl.c (CNF, CTRL 4) - CAPI_LISTEN
     19:11:09.676    capi_ctrl.c (CNF, CTRL 5) - CAPI_LISTEN
     19:11:25.031   conference.c Port 2 (capi port [0]) transmitting to port 1 (null port)
     19:11:25.031   conference.c Port 1 (null port) transmitting to port 2 (capi port [0])
     19:11:25.032   capi_funcs.c (CTRL 1, SRC: 123456, DST: [email]5001@fritz.box[/email]:5061) - CONNECT_REQ
     19:11:25.033 script_funcs.c [-1] (SCRIPT) - CAPI-CALL - 123456 -> [email]5001@fritz.box[/email]:5061 [1]
     19:11:25.036    capi_ctrl.c (CNF, CTRL 1, PLCI: 3073) - CAPI_CONNECT
     19:11:25.045     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.048     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.063 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "CONNECT" "CAPI" "OUTGOING" "0" "-1" "123456" "5001@fritz.box:5061" "1" ""
     19:11:25.077     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.095     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.123        funcs.c Set high priority
     19:11:25.125     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.135     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.155     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     19:11:25.163  capi_events.c (IND, CTRL 1, PLCI: 3073) - CAPI_INFO (0x0008) - CAUSE (0x02)
     19:11:25.164  capi_events.c (IND, CTRL 1, PLCI: 3073) - CAPI_INFO (0xc000) - UNKNOWN INFO
     19:11:25.165  capi_events.c (IND, CTRL 1, PLCI: 3073) - CAPI_DISCONNECT
     19:11:25.166   capi_funcs.c CAPI 0x349c - Invalid number format
     19:11:25.166   conference.c Port 2 (capi port [0]) stop transmitting to port 1 (null port)
     19:11:25.167   conference.c Port 1 (null port) stop transmitting to port 2 (capi port [0])
     19:11:25.185 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "DISCONNECT" "CAPI" "OUTGOING" "0" "-1" "123456" "5001@fritz.box:5061" "1" "13468"
     19:11:25.207        funcs.c Set low priority
    
    Aber ich verstehe dich soweit richtig, daß es technisch eigentlich gehen MÜSSTE oder?
     
  17. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Du gibst immer noch den Controller an. Aber warum?
    Oder kann es zufällig sein, dass die Nummer "123456" bereits in der dtmfbox als CAPI-Account hinterlegt wurde? Bitte gib mal eine andere Quellrufnummer an.
     
  18. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ne, tu ich garnicht, zumindest nicht bewusst :)

    dtmfbox -call src=(msn) dst=5001@fritz.box:5061

    Das war genau was ich eingab.
    Im log hab ich nur die msn mit der 12345 ausgetauscht.
    Und ja, selbige ist als capi-acc hinterlegt.
    Hab mal einen ACC mit entsprechender MSN deaktiviert und es mit dieser nochmal versucht. Es klingelt trotzdem nix, allerdings sieht das log nützlicher aus.
    Also:

    dtmfbox -call src=123456 dst=5001@fritz.box:5061

    Code:
     20:58:15.493   voip_funcs.c Initialize outgoing call from '<sip:123456@192.168.0.1:5061>' to '<sip:5001@fritz.box:5061>'
     20:58:15.496   voip_funcs.c Create SDP...
     20:58:15.497   voip_funcs.c Create invite session...
     20:58:15.502  voip_events.c Call state changed to CALLING [port=0]
     20:58:15.503 script_funcs.c [-1] (SCRIPT) - VOIP-CALL - <sip:123456@192.168.0.1:5061> -> <sip:5001@fritz.box:5061>
     20:58:15.505  voip_events.c RX-REQUEST 754 bytes Request msg INVITE/cseq=31590 (rdata0x5494d4) from UDP 192.168.0.1:5061
     20:58:15.506  voip_events.c RX-SIP:
    
    INVITE sip:5001@fritz.box:5061 SIP/2.0
    Via: SIP/2.0/UDP 192.168.0.1:5061;rport;branch=z9hG4bKPjbudBl6wIkvnf6D4cJ2xv61VLZZBjt7it
    Max-Forwards: 70
    From: <sip:123456@192.168.0.1>;tag=0zm28fOxMIPpBO3BCwNiXsuM2UGK497i
    To: <sip:5001@fritz.box>
    Contact: <sip:192.168.0.1:5061;transport=UDP>
    Call-ID: JudBGWyTnhtMHiLN9JT5MGphiP4kpfZQ
    CSeq: 31590 INVITE
    Allow: PRACK, INVITE, ACK, BYE, CANCEL, UPDATE, INFO, REGISTER
    Supported: 100rel
    Content-Type: application/sdp
    Content-Length:   261
    
    v=0
    o=- 3438791895 3438791895 IN IP4 192.168.0.1
    s=pjmedia
    c=IN IP4 192.168.0.1
    t=0 0
    m=audio 4000 RTP/AVP 0 8 101
    a=rtcp:4001 IN IP4 192.168.0.1
    a=rtpmap:0 PCMU/8000
    a=rtpmap:8 PCMA/8000
    a=sendrecv
    a=rtpmap:101 telephone-event/8000
    a=fmtp:101 0-15
    
    
     20:58:15.509  voip_events.c Incoming call for unknown account [sip:123456@192.168.0.1 -> sip:5001@fritz.box] (ignoring)
     20:58:15.511  voip_events.c Call DISCONNECTED [port=0, reason=400 (Bad Request)]
     20:58:15.512  voip_events.c Hangup [0]
     20:58:15.514  voip_events.c RX-REQUEST 323 bytes Request msg ACK/cseq=31590 (rdata0x5494d4) from UDP 192.168.0.1:5061
     20:58:15.514  voip_events.c RX-SIP:
    
    ACK sip:5001@fritz.box:5061 SIP/2.0
    Via: SIP/2.0/UDP 192.168.0.1:5061;rport;branch=z9hG4bKPjbudBl6wIkvnf6D4cJ2xv61VLZZBjt7it
    Max-Forwards: 70
    From: <sip:123456@192.168.0.1>;tag=0zm28fOxMIPpBO3BCwNiXsuM2UGK497i
    To: <sip:5001@fritz.box>
    Call-ID: JudBGWyTnhtMHiLN9JT5MGphiP4kpfZQ
    CSeq: 31590 ACK
    Content-Length:  0
    
    
    
     20:58:15.515  voip_events.c Request not supported (2)!
     20:58:15.535 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "CONNECT" "VOIP" "OUTGOING" "0" "-1" "123456" "5001@fritz.box:5061" "-1" ""
     20:58:15.586 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "DISCONNECT" "VOIP" "OUTGOING" "0" "-1" "123456" "5001@fritz.box:5061" "-1" "400"
    
     
  19. bodega

    bodega Aktives Mitglied

    Registriert seit:
    6 Juni 2006
    Beiträge:
    1,980
    Zustimmungen:
    1
    Punkte für Erfolge:
    0
    Ort:
    NRW
    Port 5061? Damit rufst du die dtmfbox an, anstatt den voipd! Ich hatte doch ein Beispiel in #13 geposted? voipd=5060, dtmfbox=5061. Warum dann plötzlich 5061?

    Deaktivieren solltest du den Account nicht. Das geht zwar auch, aber es macht die Sache unnötig kompliziert (Menü geht nicht mehr). Es reicht aus, die Quellrufnummer beim '-call' zu ändern. Das ist die Nummer, die am Display angezeigt wird und normalerweise nicht deine MSN ist, sondern die Anrufernummer. Wenn noch der Port stimmt, dann klingelt es.

    Eigentlich das, was ich bereits geschrieben habe. Relativ einfache Sache, die man auch mit Probieren rausbekommt.
     
  20. CayMac

    CayMac Neuer User

    Registriert seit:
    19 Nov. 2008
    Beiträge:
    13
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #20 CayMac, 21 Dez. 2008
    Zuletzt bearbeitet: 22 Dez. 2008
    EDIT:
    Es läuft! Ich weiß zwar nicht genau woran es nun lag, aber egal :)


    Jedenfalls nochmal dickes Danke für deine Hilfe, ich weiß das zu schätzen. Gratis Software entwickeln und auch noch supporten wird oftmals als "normal" angesehen. Das ist es aber nicht. Also danke für die Soft und den Support!


    Verständnisproblem :)
    Aber hatte eh auch 5060 probiert, Ergebnis war aber das Gleiche.


    Es lag, gottseidank, nicht an meiner Doofheit...habe nun dtmfbox mit defaults resetted weil ich den Fehler einfach nicht fand, und siehe da: nun gehts.
    Auf den ersten Blick sahen die Defaults aber auch nicht anders aus, also keine Ahnung WAS es nun verhinderte.

    Leider bringt mich das aber zum Ursprungsproblem zurück: Anrufe werden nicht weitergeleitet :)

    Hier das Log an der relevanten Stelle, (das FON1-3 klingeln lassen per Konsole geht nun)

    12345=MSN1
    67890=Anrufer (in diesem Fall ne VOIP)
    Skript wie oben.
    Bei -call gibt es EIN(!) Freizeichen und dann ist Totenstille.

    Code:
    15:47:55.940      plugins.c [plugin.menu] (#2): script: /var/dtmfbox/script/action_callrouter.sh(/var/dtmfbox/script/action_callrouter.sh, "DTMF", "CAPI", "INCOMING", "0", "-1", "67890", "12345", "2", "2", "ZWEI")
     15:47:56.393   conference.c Port 4 (capi port [1]) transmitting to port 1 (null port)
     15:47:56.394   conference.c Port 1 (null port) transmitting to port 4 (capi port [1])
     15:47:56.394   conference.c Port 4 (capi port [1]) transmitting to port 2 (capi port [0])
     15:47:56.394   conference.c Port 2 (capi port [0]) transmitting to port 4 (capi port [1])
     15:47:56.395   capi_funcs.c (CTRL 1, SRC: 67890, DST: 5002@fritz.box:5060) - CONNECT_REQ
     15:47:56.396 script_funcs.c [0] (SCRIPT) - CAPI-CALL - 67890 -> 5002@fritz.box:5060 [1]
     15:47:56.400    capi_ctrl.c (CNF, CTRL 1, PLCI: 5121) - CAPI_CONNECT
     15:47:56.404   conference.c Port 5 (tone port [1]) transmitting to port 2 (capi port [0])
     15:47:56.406     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.426     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.429     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.451     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.467     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.470 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "CONNECT" "CAPI" "OUTGOING" "1" "0" "67890" "5002@fritz.box:5060" "2" ""
     15:47:56.496     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.504     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.526     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.535  capi_events.c (IND, CTRL 1, PLCI: 5121) - CAPI_INFO (0x0008) - CAUSE (0x02)
     15:47:56.536  capi_events.c (IND, CTRL 1, PLCI: 5121) - CAPI_INFO (0xc000) - UNKNOWN INFO
     15:47:56.537  capi_events.c (IND, CTRL 1, PLCI: 5121) - CAPI_DISCONNECT
     15:47:56.537   capi_funcs.c CAPI 0x349c - Invalid number format
     15:47:56.547   conference.c Port 5 (tone port [1]) stop transmitting to port 2 (capi port [0])
     15:47:56.549     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:47:56.554   conference.c Port 2 (capi port [0]) stop transmitting to port 4 (capi port [1])
     15:47:56.554   conference.c Port 4 (capi port [1]) stop transmitting to port 2 (capi port [0])
     15:47:56.555   conference.c Port 4 (capi port [1]) stop transmitting to port 1 (null port)
     15:47:56.555   conference.c Port 1 (null port) stop transmitting to port 4 (capi port [1])
     15:47:56.697 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "DISCONNECT" "CAPI" "OUTGOING" "1" "0" "67890" "5002@fritz.box:5060" "2" "13468"
     15:47:57.207 script_funcs.c [0] (SCRIPT) - change scriptfile to "/var/dtmfbox/script/action_callrouter.sh"
     15:48:01.607     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:48:01.610     scombdb-up Underflow, buf_cnt=0, will generate 1 frame
     15:48:07.928     scombdb-up Buffer size adjusted from 1764 to 1295 (eff_cnt=1260)
     15:48:08.179  capi_events.c (IND, CTRL 1, PLCI: 4353) - CAPI_INFO (0x8045) - DISCONNECT
     15:48:08.180  capi_events.c (IND, CTRL 1, PLCI: 4353) - CAPI_INFO (0x001e) - PROGRESS INDICATOR (0x02)
     15:48:08.181  capi_events.c (IND, CTRL 1, PLCI: 4353) - CAPI_INFO (0x0008) - CAUSE (0x0a)
     15:48:08.182  capi_events.c (IND, CTRL 1, PLCI: 4353) - CAPI_INFO (0xc000) - UNKNOWN INFO
     15:48:08.184  capi_events.c (IND, CTRL 1, PLCI: 4353, NCCI: 135425) - CAPI_DISCONNECT_B3
     15:48:08.198 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/action_callrouter.sh" "UNCONFIRMED" "CAPI" "INCOMING" "0" "-1" "67890" "12345" "2" ""
     15:48:08.211     scombdb-up Underflow, buf_cnt=413, will generate 1 frame
     15:48:08.220     scombdb-up Underflow, buf_cnt=413, will generate 1 frame
     15:48:08.246     scombdb-up Underflow, buf_cnt=413, will generate 1 frame
     15:48:08.266     scombdb-up Underflow, buf_cnt=413, will generate 1 frame
     15:48:08.286     scombdb-up Underflow, buf_cnt=413, will generate 1 frame
     15:48:08.300  capi_events.c (IND, CTRL 1, PLCI: 4353) - CAPI_DISCONNECT
     15:48:08.302   capi_funcs.c CAPI 0x3490 - Normal call clearing
     15:48:08.303   conference.c Port 2 (capi port [0]) stop transmitting to port 1 (null port)
     15:48:08.303   conference.c Port 1 (null port) stop transmitting to port 2 (capi port [0])
     15:48:08.592        funcs.c Set low priority
     15:48:08.979 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/action_callrouter.sh" "DISCONNECT" "CAPI" "INCOMING" "0" "-1" "67890" "12345" "2" "13456"