Callrouting mit DTMFbox möglich?

CayMac

Neuer User
Mitglied seit
19 Nov 2008
Beiträge
13
Punkte für Reaktionen
0
Punkte
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.
 
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?
 
hast du eine Lösung gefunden? Ich suche nämlich Ähnliches.
 
Nein leider noch nix hinbekommen :-(
Ich weiß ja auch noch nicht einmal, ob es überhaupt machbar WÄRE :)
 
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.

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é
 
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!
 
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 ,-)
 
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*)
 
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.

CayMac schrieb:
Sollte ich nicht bald nen Tip bekommen werd ich die Idee leider einstampfen müssen *snüff*
Immer ruhig Blut, das klappt schon. Du kannst auch zu Asterisk greifen, wenn du möchtest.
 
Hi Marco!

bodega schrieb:
Hi.
Sorry. Der Faden ist mir leider jetzt erst aufgefallen.

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


bodega schrieb:
Es sollte auf jedenfall nicht IRGENDWO klingeln. Der Sache möchte ich gerne näher auf den Grund gehen.

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.



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

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 :-(
 
Zuletzt bearbeitet:
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" "[email protected]: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" "[email protected]: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 :)
 
Zuletzt bearbeitet:
Hi Marco,

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

Einstellungen WebIF:
Anderer Anbieter
Benutzername 5001
Kennwort 5001
DTMF-Übertragung AUTO
Rufnummernunterdrückung (CLIR) DEAKTIVIERT
Alle anderen Haken oder Felder AUS/LEER

Einstellungen dtmfbox:
VoIP: Aktiviert
Registrar-Modus: Aktiviert
Registrar-Modus: Max. Clients: 4
Registrar-Modus: Authentication-Realm: fritz.box
SIP Port: 5061
RTP/RTCP Start-Port: 4000
Rest Standard/Leer

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 [email protected]: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?
 
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 [email protected]:5060
oder
dtmfbox -call src=12345 [email protected]
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.
 
Zuletzt bearbeitet:
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 :)
 
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.
 
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][email protected][/email]:5061) - CONNECT_REQ
 19:11:25.033 script_funcs.c [-1] (SCRIPT) - CAPI-CALL - 123456 -> [email][email protected][/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" "[email protected]: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" "[email protected]: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?
 
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.
 
Ne, tu ich garnicht, zumindest nicht bewusst :)

dtmfbox -call src=(msn) [email protected]: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 [email protected]:5061

Code:
 20:58:15.493   voip_funcs.c Initialize outgoing call from '<sip:[email protected]:5061>' to '<sip:[email protected]: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:[email protected]:5061> -> <sip:[email protected]: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:[email protected]:5061 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.1:5061;rport;branch=z9hG4bKPjbudBl6wIkvnf6D4cJ2xv61VLZZBjt7it
Max-Forwards: 70
From: <sip:[email protected]>;tag=0zm28fOxMIPpBO3BCwNiXsuM2UGK497i
To: <sip:[email protected]>
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:[email protected] -> sip:[email protected]] (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:[email protected]:5061 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.1:5061;rport;branch=z9hG4bKPjbudBl6wIkvnf6D4cJ2xv61VLZZBjt7it
Max-Forwards: 70
From: <sip:[email protected]>;tag=0zm28fOxMIPpBO3BCwNiXsuM2UGK497i
To: <sip:[email protected]>
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" "[email protected]:5061" "-1" ""
 20:58:15.586 script_funcs.c RUN SCRIPT: "/var/dtmfbox/script/userscript.sh" "DISCONNECT" "VOIP" "OUTGOING" "0" "-1" "123456" "[email protected]:5061" "-1" "400"
 
CayMac schrieb:
Ne, tu ich garnicht, zumindest nicht bewusst

dtmfbox -call src=(msn) [email protected]:5061

Das war genau was ich eingab.
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?

CayMac schrieb:
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.
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.
 
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!


bodega schrieb:
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?

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


Deaktivieren solltest du den Account nicht. Das geht zwar auch, aber es macht die Sache unnötig kompliziert (Menü geht nicht mehr).
Eigentlich das, was ich bereits geschrieben habe. Relativ einfache Sache, die man auch mit Probieren rausbekommt.

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: [email protected]:5060) - CONNECT_REQ
 15:47:56.396 script_funcs.c [0] (SCRIPT) - CAPI-CALL - 67890 -> [email protected]: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" "[email protected]: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" "[email protected]: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"
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.