./CapiSpFax -i MEINE_FAX_MSN
--- ds26-15.2/make/rcapid/rcapid.mk 2007/11/03 19:49:16 1341
+++ ds26-15.2/make/rcapid/rcapid.mk 2007/11/15 00:38:21 1412
@@ -1,7 +1,10 @@
RCAPID_VERSION:=0.1
-RCAPID_SOURCE:=rcapid.tgz
-RCAPID_SITE:=http://dsmod.magenbrot.net
-RCAPID_DIR:=$(SOURCE_DIR)/rcapid
+RCAPID_SOURCE:=rcapid-cm.tar.gz
+RCAPID_SITE:=ftp://ftp.melware.de/capi-utils
+RCAPID_DIR:=$(SOURCE_DIR)/rcapid-cm
+#RCAPID_SOURCE:=rcapid.tgz
+#RCAPID_SITE:=http://dsmod.magenbrot.net
+#RCAPID_DIR:=$(SOURCE_DIR)/rcapid
RCAPID_MAKE_DIR:=$(MAKE_DIR)/rcapid
RCAPID_BINARY:=$(RCAPID_DIR)/rcapid
RCAPID_PKG_VERSION:=0.1
@@ -12,16 +15,17 @@
RCAPID_TARGET_BINARY:=$(RCAPID_TARGET_DIR)/root/usr/sbin/rcapid
$(DL_DIR)/$(RCAPID_SOURCE):
- @$(DL_TOOL) $(DL_DIR) $(TOPDIR)/.config $(RCAPID_SOURCE) $(RCAPID_SITE)
+ #@$(DL_TOOL) $(DL_DIR) $(TOPDIR)/.config $(RCAPID_SOURCE) $(RCAPID_SITE)
+ wget -P $(DL_DIR) $(RCAPID_SITE)/$(RCAPID_SOURCE)
$(DL_DIR)/$(RCAPID_PKG_SOURCE):
@$(DL_TOOL) $(DL_DIR) $(TOPDIR)/.config $(RCAPID_PKG_SOURCE) $(RCAPID_PKG_SITE)
$(RCAPID_DIR)/.unpacked: $(DL_DIR)/$(RCAPID_SOURCE)
tar -C $(SOURCE_DIR) $(VERBOSE) -xzf $(DL_DIR)/$(RCAPID_SOURCE)
- for i in $(RCAPID_MAKE_DIR)/patches/*.patch; do \
- $(PATCH_TOOL) $(RCAPID_DIR) $$i; \
- done
+ #for i in $(RCAPID_MAKE_DIR)/patches/*.patch; do \
+ # $(PATCH_TOOL) $(RCAPID_DIR) $$i; \
+ #done
touch $@
$(RCAPID_DIR)/.configured: $(RCAPID_DIR)/.unpacked
Also, hier ist der Output, etwas tut sichja, auch die Nummern stimmen (habe ich hier nur verfälscht), aber ich verstehe nicht so recht was sein sollte:Rufe man das CapiSpFax mit der Option -vv auf, dann kommt einiges an Debug Ausgabe. Beim Anruf sollte zumindest eine Reaktion kommen, daß der Anruf erkannt wurde, evtl. auch, daß der Anruf angenommen oder ignoriert wird.
GenLSPro CapiSpFax-0.0.1 # ./CapiSpFax -vv -i 93xxxx
put_cmsg 'LISTEN_REQ ID=001 #0x0000 LEN=0026
Controller/PLCI/NCCI = 0x1
InfoMask = 0x0
CIPmask = 0x20012
CIPmask2 = 0x0
CallingPartyNumber = default
CallingPartySubaddress = default
' -> 0
get_cmsg 'LISTEN_CONF ID=001 #0x0000 LEN=0014
Controller/PLCI/NCCI = 0x1
Info = 0x0
'
get_cmsg 'CONNECT_IND ID=001 #0xbbdd LEN=0046
Controller/PLCI/NCCI = 0xe01
CIPValue = 0x4
CalledPartyNumber = <c1>93xxxx
CallingPartyNumber = <21 81>9131616yyyy
CalledPartySubaddress = default
CallingPartySubaddress = default
BC = <90 90 a3>
LLC = default
HLC = default
AdditionalInfo = default
'
Call from '9131616yyyy' to '93xxxx', PLCI 0xe01
accept call
put_cmsg 'CONNECT_RESP ID=001 #0xbbdd LEN=0034
Controller/PLCI/NCCI = 0xe01
Reject = 0x0
BProtocol
B1protocol = 0xa
B2protocol = 0x1
B3protocol = 0x0
B1configuration = default
B2configuration = default
B3configuration = default
GlobalConfiguration = default
ConnectedNumber = default
ConnectedSubaddress = default
LLC = default
AdditionalInfo
BChannelinformation = default
Keypadfacility = default
Useruserdata = default
Facilitydataarray = default
SendingComplete = default
' -> 0
get_cmsg 'DISCONNECT_IND ID=001 #0xbbde LEN=0014
Controller/PLCI/NCCI = 0xe01
Reason = 0x0
'
put_cmsg 'DISCONNECT_RESP ID=001 #0xbbde LEN=0012
Controller/PLCI/NCCI = 0xe01
' -> 0
Connection terminated, status -2
CAPI_DISCONNECT_IND
Irgendwelche Abhilfe in Sicht?Die Probleme, die es noch gibt, hängen nicht davon ab, ob das Programm auf der Box läuft, sondern ob die CAPI der Box verwendet wird. Die Hardware oder die CAPI der Box verfälscht manchmal die Daten, so daß der Faxempfang durcheinander kommt. Für einfache Faxe mit kurzer Übertragungsdauer funktioniert es aber meistens. Je länger die Übertragung, umso wahrscheinlicher, daß dabei ein Fehler auftritt.
Wenn Du damit meinst, ich hätte im ds-mod den rcapid von ftp://ftp.melware.de/capi-utils nehmen sollen, dann, ja, den habe ich auch, eingebunden über einen hier im Forum gefundenen Patch (von Pastebin oder so), der verdammt ähnlich diesem hier aussah.Nicht dass es am rcapid liegt?
Das besagt, daß das Programm mitgeteilt bekommt, daß ein Anruf hereinkommt (erste Zeile). Weiter, daß es den Anruf annehmen will (zweite Zeile). Und schließlich, daß der Anruf wieder getrennt wird (DISCONNECT).Code:[B]Call from '9131616yyyy' to '93xxxx', PLCI 0xe01[/B] [B]accept call[/B] get_cmsg '[B]DISCONNECT_IND[/B] ID=001 #0xbbde LEN=0014 Controller/PLCI/NCCI = 0xe01 Reason = 0x0 ' put_cmsg 'DISCONNECT_RESP ID=001 #0xbbde LEN=0012 Controller/PLCI/NCCI = 0xe01 ' -> 0 Connection terminated, status -2 CAPI_DISCONNECT_IND
Ohne Hilfe von AVM wohl kaum.Irgendwelche Abhilfe in Sicht?
Sowohl am Faxgerät, als auch am normalen Telefon hört man gar kein Klingeln. Bei beiden kommt nach etwa 2-3 Sekunden Besetzt-Zeichen, am Telefon höre ich vorher gar nichts, am Fax glaube ich, das Gerät will versuchen eine Verbindung aufzubauen (ist aber nicht dieses typische Analogmodemgepfeife, das kommt wohl wenn überhaupt, später).Jetzt ist noch die Frage, ob das Disconnect sofort nach dem Connect kommt oder erst später. Wenn Du mit einem normalen Telefon die Nummer anrufst, klingelt es dann weiter, oder wird die Verbindung sofort angenommen und beendet?
Kann ich mir eigentlich gar nicht vorstellen, in der Fritzbox sind alle Nebenstellen so eingestellt, daß sie nur an die Haupt-MSN und an meine VoIP-Accounts 'rangehen, denn die beiden anderen MSN's will ich für Fax und für Call-Through verwenden.Kann es sein, daß doch ein anderes Gerät die Verbindung annimmt?
Bleibt uns wohl in dieser Hinsicht nur zu hoffen. Ist das also auf allen FB-Modellen so? Wenn was für die allerneusten in irgendeiner Labor-FW gefixt wird, kann es für unsere älteren Modelle denn auch genutzt werden?Ohne Hilfe von AVM wohl kaum.
Und nach dem, was man liest, funktioniert auch der Fax-Empfang mit dem Programm von AVM in der entsprechenden Labor-Firmware nicht immer zuverlässig.
Kann es denn irgendeinen Einfluß haben, daß in /var/flash/ar7.cfg das AVM-eigene capiovertcp nicht aktiviert ist? Wenn ich über CapiSpFax + rcapid ein Fax sende, erscheint in der Anrufliste als Nebenstelle Fon/Fax PC, genauso wie dann, wenn man capiovertcp und dieses Windows-FritzFax benutzen würde.Die CAPI-Messages aus dem Protokoll deuten darauf hin, daß die CAPI keinen vollständigen Anruf aufbaut, sondern ihn gleich wieder beendet. Das Programm hat darauf keinen Einfluß, es sagt ja bereits, daß es den Anruf haben will.
Ich habe es mal probiert, und zwar die MSN die ich für's Fax benutzen würde, einer Nebenstelle an der ich kein Telefon habe, zugewiesen. Außer daß man nun wenn man von außen diese MSN anruft, es in der Leitung klingeln hört, änderst sich scheinbar nichts, im Output von CapiSpFax sieht es wie vorher aus.Du kannst versuchen, die MSN des Faxgeräts dort an eine Nebenstelle zuzuweisen, zumindest zum Testen.
Eine Datei, die gesendet werden soll, muß als TIFF-Datei mit G3 Fax-Kodierung vorliegen. Mehrseitige TIFF-Dateien sind möglich. Diese Datei kann von verschiedenen Programmen erzeugt werden.
Für den praktischen Gebrauch wäre natürlich ein Umwandlungsprogramm hilfreich, das sich per Skript oder programmatisch einbinden läßt, und das Ausgangsformat automatisch erkennt und umwandelt.
- fax fax ("Group3") 1-D coded image
- text text
- pbm raw PBM (portable bit map)
- tiffg3 TIFF, Group 3 fax compression
- tiffraw TIFF, no compression
- pcx mono PCX
- dcx mono DCX
PATHTOCAPISPFAX="/var/media/ftp/*/*/CapiSpFax"
PATHTOEFIX="/var/html/cgi-bin/mipsel-linux-efix"
OUTGOINGMSN="00000"
Das ist das oben verlinkte "efix" ;-) Der Output von efix in der Standardeinstellung funktioniert zumindest für einseitige Faxe. Die manpage verrät die möglichen Eingangsformate:
ich möchte CapiSpFax eigentlich über remote CAPI auf meinem NAS (also wie wenn es ein anderer PC wäre() benutzen, schließlich mit Hylafax. Nun bin ich noch am Testen, Versenden hat schonmal geklappt vom Desktop-PC aus, an die Web.de Faxnummer, vom NAS ging es anscheinend auch (warte noch auf die Nachricht bei Web.de, das scheint immer zu dauern).