Priority in Extensions.conf bei Fax mit spandsp

pcexperte

Neuer User
Mitglied seit
9 Apr 2005
Beiträge
22
Punkte für Reaktionen
0
Punkte
0
Hallo alle zusammen,

ich habe meinen * komplett am laufen und faxen tut er auch wunderbar
aber mich quält die Fehlerbehandlung, hat hier einer schon einmal eine Lösung gefunden?

Problem: Ich erstelle ein Callfile z.B. folgendes

Code:
Channel:CAPI/1234:1233
Callerid: +49 7202 1234
MaxRetries: 3
RetryTime: 10
WaitTime: 10
Context: faxout
Extension: s
Priority: 1
SetVar: FAXFILE=testfax.tif

In der extensions.conf steht folgendes:

Code:
[faxout]
;Fax Outgoing
exten => s,1,txfax(${FAXFILE})
exten => s,2,System(rm ${FAXFILE})
exten => s,101,System(rm ${FAXFILE})
exten => s,201,System(rm ${FAXFILE})

Auch folgendes geht nicht, dachte ich hätte das mit dem n+101
falsch verstanden:

Code:
[faxout]
;Fax Outgoing
exten => s,1,txfax(${FAXFILE})
exten => s,2,System(rm ${FAXFILE})
exten => s,102,System(rm ${FAXFILE})
exten => s,202,System(rm ${FAXFILE})

Also eigentlich soll der * zum einen bei der Anwahl des entfernten
Faxgerätes über die Capi die Callerid aus dem Callfile übermitteln,
macht er nicht.

Zum anderen sollte er sofern ich bei den Priorities richtig liege, und
genau das ist mein Problem, wenn das Ziel besetzt ist einfach die Zeile
mit der Priority 101 ausführen und wenn das Ziel nicht erreichbar ist die
Zeile mit der 201. Also jeweils das Fax-File löschen.

Aber es klappt nur wenn das Fax korrekt übertragen wurde, dann wird
korrekt mit der Priority 2 weitergemacht und das File gelöscht.

Bin für jeden Denkanstoss und jede Hilfe unheimlich dankbar!!!! ;)
 
Probiers mal mit
exten => h,1,System(rm ${FAXFILE})

...Spandsp legt nach erfolgter Übertragung auf, von daher wird nach dem rxfax/txfax-Aufruf nur noch h ausgeführt
 
BTW: 1+101=102
Das 2. Beispiel waere also schon eher richtig. :)
 
Danke ihr beiden aber ich muss in Zukunft unterscheiden können
ob ein Fehler (Besetzt oder kein Anschluss) aufgetreten ist, geht das mit
spandsp überhaupt nicht?

Das mit der h Extension hatte ich schon, das geht ist aber nicht die
Lösung die ich brauche :(
 
Das kannst du so nicht erkennen. RxFax wird bei deinem Beispiel erst dann gestartet, wenn der ausgehende Anruf angenommen wurde. Bei Besetzt/Verwaehlt wird RxFax also z.B. gar nicht gestartet. Du mussst beim abgehenden Channel sowas angeben wie Local/<nummer>@<context> und dann das ganze damit im Dialplan abfangen.
 
Danke Maik,

wenn ich dich richtig verstehe sowas wie einen context in den das Callfile springt und der dann erst DIAL ausführt!?

Ist die Syntax Local/s@faxout z.B. korrekt wenn ich es als
Channel im Callfile angebe?
 
Genau. Die Syntax waere sogar eigentlich auch korrekt, allerdings muesstest du dann hier die nummer, die du anrufen willst in ner Variable speichern, da * sonst nicht weisst, wo es hintelefonieren soll. ;)
 
Also wenn ich folgendes Callfile generiere geht es nicht, es werden
einfach keine Variablen übergeben.

Code:
Channel:Local/s@faxout 
Callerid: 1234 
MaxRetries: 3 
RetryTime: 10 
WaitTime: 10 
Context: faxout 
Extension: s 
Priority: 1 
SetVar: FAXNUMMER=2345
SetVar: FAXFILE=testfax.tif

Die extensions.conf sieht dabei so aus:


Code:
[faxout] 
;Fax Outgoing 
exten => s,1,Dial(CAPI/${CALLERID}:${FAXNUMMER})
exten => s,2,txfax(${FAXFILE}) 
exten => s,3,System(rm ${FAXFILE}) 
exten => s,102,System(rm ${FAXFILE}) 
exten => s,202,System(rm ${FAXFILE}) 
exten => t,1,System(rm ${FAXFILE})


Noch jemand eine Idee?
 
Da hast du mich falsch verstanden. Ich meinte eher sowas wie Local/<nummer>@sonstwas an mit faxout,s,1 verbinden. Jetzt versuchst du eine Nummer anzurufen und verbindest sie mit dem Dial-Kommando, dass wieder die gleiche Nummer waehlt. Zumindest waere es so, wenn das mit den Variablen funktionieren wuerde.
 
HAllo Maik,

da hatte ich wohl ein Brett vor dem Kopf jetzt ist mir alles klar ;)

Danke!
 
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.