Hi all, I would like to announce the availability of an initial test version of a totally software FAX facility, suitable for use with Asterisk. This is a first public test release, so don't expect a solid polished product just yet. People have shown interest in what I am doing, and here is the evidence that it is not vapourware. If the notion of a software FAX machine is new to you, what I have basically implemented is this. Asterisk contains software to transcode GSM to A-law, A-law to u-law, and so on. These are DSP functions implemented on the server's main CPU(s), with no hardware support from special DSP processors or cards. What I have done is similar. I have implemented the DSP for the key FAX modem standards in software for the server. Without any special DSP hardware, this can send and receive faxes through the PSTN interfaces. It has been tested with an E400P card so far. However, it should work for calls passing through the T100P, T400P, E100P, E400P, TE410P, X100P, or TDM40P cards, using any of the available signalling methods. Don't expect it to work for calls received by VoIP - its a modem, not a miracle worker. You can find the software at <http://www.opencall.org>. It currently consists of two parts: The main part is spandsp, a DSP library for telephony at 8000 samples per second. This contains a number of functions. Some are complete, and some are works in progress. The FAX facility is part of this library. The FAX facility consists of implementations of V.21 (complete, but not optimised for speed), V.29 (functional, but not optimised for speed or bad lines), V.27ter (only the tx side is anything like complete), T.30 - the fax protocol (somewhat messy, and still in need of work to make it robust), and T.4 (fax compression). The T.4 handling makes use of libtiff, so you will need libtiff installed on a machine to use spandsp. You will also need libxml2 - the FAX facility doesn't use it, but some other parts of spandsp do. The other part is a pair of very elementary demonstration apps for Asterisk, similar to the record and play apps, but for fax TIFF files. Why TIFF? TIFF is *the* standard for computer fax. Few other graphics file formats allow for multi-page documents. Apart from some dumb proprietary file formats (e.g. WinFAX) from the early 90s, I've never seen computer fax handled in any other way. If someone would like to adapt the Asterisk voicemail2 app to turn received faxes into attached e-mails, this would be a good thing. :-) I have only implemented the early features of the FAX standards, where any patents have long since expired. If you look at the ITU's patent declaration database you will see a long list of patent claims against the fax standards. Note these apply to features added during the life of the standards, and most apply to things like colour fax, which few people use. The basic 9600bps V.29 fax spec. is more than 20 years old, so no patents can still be in force for these original features. Is this limiting? Not really. Only a small percentage of fax machines seem to support many of the newer features. Only a few simple to implement things, like super-fine mode, have been added to most machines. The files for spandsp all say GPL. I have given an additional disclaimer to Digium, so the code can be merged into Asterisk, once it is a bit more polished and stable. In the meantime it is easy to use as an external library. If it doesn't work for you, don't be too surprised. Feed back anything you find, and lets try to make things better. I suspect, from experience and things I have read on the web, that a lot of fax machines do not follow the standards very well. In that case, a number of tweaks are probably needed before this new software is adequately tolerant of the behaviour of real world machines. Enjoy, Steve
On Mon, 2003-10-20 at 08:36, Steve Underwood wrote:> Hi all, > > I would like to announce the availability of an initial test version of > a totally software FAX facility, suitable for use with Asterisk. This is > a first public test release, so don't expect a solid polished product > just yet. People have shown interest in what I am doing, and here is the > evidence that it is not vapourware. >[snip] Thanks Steve! I know a lot of us have been anxiously waiting for something like this, and I just wanted to publicly thank you for your time and effort. Jared Smith
Good job.. now that the cat is out of the bag i'm sure you will get alot of requests or ideas and maybe code! bkw On Mon, 20 Oct 2003, Steve Underwood wrote:> Hi all, > > I would like to announce the availability of an initial test version of > a totally software FAX facility, suitable for use with Asterisk. This is > a first public test release, so don't expect a solid polished product > just yet. People have shown interest in what I am doing, and here is the > evidence that it is not vapourware. > > If the notion of a software FAX machine is new to you, what I have > basically implemented is this. Asterisk contains software to transcode > GSM to A-law, A-law to u-law, and so on. These are DSP functions > implemented on the server's main CPU(s), with no hardware support from > special DSP processors or cards. What I have done is similar. I have > implemented the DSP for the key FAX modem standards in software for the > server. Without any special DSP hardware, this can send and receive > faxes through the PSTN interfaces. It has been tested with an E400P card > so far. However, it should work for calls passing through the T100P, > T400P, E100P, E400P, TE410P, X100P, or TDM40P cards, using any of the > available signalling methods. Don't expect it to work for calls received > by VoIP - its a modem, not a miracle worker. > > You can find the software at <http://www.opencall.org>. It currently > consists of two parts: > > The main part is spandsp, a DSP library for telephony at 8000 samples > per second. This contains a number of functions. Some are complete, and > some are works in progress. The FAX facility is part of this library. > The FAX facility consists of implementations of V.21 (complete, but not > optimised for speed), V.29 (functional, but not optimised for speed or > bad lines), V.27ter (only the tx side is anything like complete), T.30 - > the fax protocol (somewhat messy, and still in need of work to make it > robust), and T.4 (fax compression). The T.4 handling makes use of > libtiff, so you will need libtiff installed on a machine to use spandsp. > You will also need libxml2 - the FAX facility doesn't use it, but some > other parts of spandsp do. > > The other part is a pair of very elementary demonstration apps for > Asterisk, similar to the record and play apps, but for fax TIFF files. > Why TIFF? TIFF is *the* standard for computer fax. Few other graphics > file formats allow for multi-page documents. Apart from some dumb > proprietary file formats (e.g. WinFAX) from the early 90s, I've never > seen computer fax handled in any other way. If someone would like to > adapt the Asterisk voicemail2 app to turn received faxes into attached > e-mails, this would be a good thing. :-) > > I have only implemented the early features of the FAX standards, where > any patents have long since expired. If you look at the ITU's patent > declaration database you will see a long list of patent claims against > the fax standards. Note these apply to features added during the life of > the standards, and most apply to things like colour fax, which few > people use. The basic 9600bps V.29 fax spec. is more than 20 years old, > so no patents can still be in force for these original features. Is this > limiting? Not really. Only a small percentage of fax machines seem to > support many of the newer features. Only a few simple to implement > things, like super-fine mode, have been added to most machines. > > The files for spandsp all say GPL. I have given an additional disclaimer > to Digium, so the code can be merged into Asterisk, once it is a bit > more polished and stable. In the meantime it is easy to use as an > external library. > > If it doesn't work for you, don't be too surprised. Feed back anything > you find, and lets try to make things better. I suspect, from experience > and things I have read on the web, that a lot of fax machines do not > follow the standards very well. In that case, a number of tweaks are > probably needed before this new software is adequately tolerant of the > behaviour of real world machines. > > Enjoy, > Steve > > > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users >
On Mon, 2003-10-20 at 16:36, Steve Underwood wrote:> If it doesn't work for you, don't be too surprised. Feed back anything > you find, and lets try to make things better.At the moment I'm having the devils own job to get it compiled on MDK 9.0. or 9.2 -- Dave Cotton <dcotton@linuxautrement.com>
Hi, Citeren Steve Underwood <steveu@coppice.org>:> If it doesn't work for you, don't be too surprised. Feed back anything > you find, and lets try to make things better. I suspect, from experience > and things I have read on the web, that a lot of fax machines do not > follow the standards very well. In that case, a number of tweaks are > probably needed before this new software is adequately tolerant of the > behaviour of real world machines.First off, let me start by saying I think this is a great new step that is greatly appreciated (at least by me) toward a complete telephony platform. Second off, I just tried to build and install. Some comments up till now: - The compilation process asks for libaudiofile headerfiles (-dev package) - this was not default on my box. Should be added to documentation I guess :) - On my Debian box libtiff is an empty package (sucks) so I downloaded the tiff package source code. Installation here sucks once more: the mentioned tiffiop.h is not installed in /usr/local/include as I suppose it should, same goes for several other header files. Easiest was to just point the Makefile in your src/ tree toward the libtiff source. - The linker tries to access fftw (Fourier libraries). Not default installed on my system, should probably be added to documentation - The linker tries to access unicall. What is this ? Not installed on my system and no candidates on my searchlist (apt-get and a quick google search). How to continue ? Thanks, and I hope to continue this adventure soon :-) -- Met vriendelijke groet, Florian Overkamp ObSimRef BV
The same problem with tif_dir.h is on RH9, make fails because of that. Alex Zarubin -----Original Message----- From: Dave Cotton [mailto:dcotton@linuxautrement.com] Sent: Tuesday, October 21, 2003 11:45 AM To: Asterisk List Subject: Re: [Asterisk-Users] A software FAX modem On Tue, 2003-10-21 at 16:22, Steve Underwood wrote:> I did say this was a first test release :-) I can't be held responsible > for libtiff being empty on your machine, but they other issues are my > fault. I have put a new tarball up, which should need nothing more than > libtiff for the library to work. All the other libraries you had issues > with are only needed by the test programs. "./configure" will now only > set things up to build the library. "./configure --enable-doc > --enable-tests --enable-itutests" will set things up to be everything.Looks like I've got a specific Mandrake problem. Is any one else trying MDK 9.0? 9.0 does not have the aclocal-1.6/automake-1.6 combination so Makefile.am fails, I'll have to update them. With 9.2 ./configure works but make barks because tiffiop.h requires tif_dir.h which is nowhere to be found. Has anyone got a copy of that, or know which package it is in? I really want to give this a try because the one thing I haven't got is a working fax. Thanks for your hard work Steve, you've done the hardest bit now it's just to sort out Mandrake, comme d'habitude. -- Dave Cotton <dcotton@linuxautrement.com> _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20031021/b5296b50/attachment.htm
Found tif_dir.h, make and install look OK. Now it's a coredump: #0 0x4b4ba652 in _TIFFFax3fillruns () from /usr/lib/libtiff.so.3 (gdb) bt #0 0x4b4ba652 in _TIFFFax3fillruns () from /usr/lib/libtiff.so.3 #1 0x4b4074d4 in t4_rx_end_page () from /usr/lib/asterisk/modules/app_rxfax.so #2 0x4b40062e in key () from /usr/lib/asterisk/modules/app_rxfax.so #3 0x4b4055c1 in v29_rx () from /usr/lib/asterisk/modules/app_rxfax.so #4 0x4b40399b in fax_rx_process () from /usr/lib/asterisk/modules/app_rxfax.so #5 0x4b400145 in rxfax_exec (chan=0x81b68a8, data=0x4b8ffb6c) at app_rxfax.c:183 #6 0x080633ca in pbx_exec (c=0x81b68a8, app=0x81b1580, data=0x4b8ffb6c, newstack=1) at pbx.c:396 #7 0x0806a611 in pbx_extension_helper (c=0x81b68a8, context=0x81b69fc "webley_pstn", exten=0x4b8ffb6c "/usr/tmp/asteriskfax.tif", priority=1, callerid=0x80d6d58 "8478106018", action=136013992) at pbx.c:1151 #8 0x0806528c in ast_pbx_run (c=0x81b68a8) at pbx.c:1635 #9 0x0806acd1 in pbx_thread (data=0x74) at pbx.c:1856 #10 0x4003e9b1 in pthread_start_thread () from /lib/i686/libpthread.so.0 (gdb) Comments are welcome. Thank you. Alex Zarubin -----Original Message----- From: Dave Cotton [mailto:dcotton@linuxautrement.com] Sent: Tuesday, October 21, 2003 11:45 AM To: Asterisk List Subject: Re: [Asterisk-Users] A software FAX modem On Tue, 2003-10-21 at 16:22, Steve Underwood wrote:> I did say this was a first test release :-) I can't be held responsible > for libtiff being empty on your machine, but they other issues are my > fault. I have put a new tarball up, which should need nothing more than > libtiff for the library to work. All the other libraries you had issues > with are only needed by the test programs. "./configure" will now only > set things up to build the library. "./configure --enable-doc > --enable-tests --enable-itutests" will set things up to be everything.Looks like I've got a specific Mandrake problem. Is any one else trying MDK 9.0? 9.0 does not have the aclocal-1.6/automake-1.6 combination so Makefile.am fails, I'll have to update them. With 9.2 ./configure works but make barks because tiffiop.h requires tif_dir.h which is nowhere to be found. Has anyone got a copy of that, or know which package it is in? I really want to give this a try because the one thing I haven't got is a working fax. Thanks for your hard work Steve, you've done the hardest bit now it's just to sort out Mandrake, comme d'habitude. -- Dave Cotton <dcotton@linuxautrement.com> _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20031021/82a75889/attachment.htm
> -----Original Message----- > From: Steve Underwood [mailto:steveu@coppice.org] > Sent: Tuesday, October 21, 2003 8:23 PM > To: asterisk-users@lists.digium.com > Subject: Re: [Asterisk-Users] A software FAX modem > > > Hi, > > Interesting. I am using RH9 for testing. The only piece of > libtiff that > was missing for me was tiffiop.h. That is why I put a copy on the FTP > site. Do you have the libtiff-devel package installed? None of the > libraries can be used to build anything on RH without the xxxx-devel > package installed.The biggest TIFF related problem for me was that tif_dir.h was included from tiffiop.h, but not installed in /usr/local/include. I built from the original spandsp-20031020.tgz tarball on RH9 with some help from the tiff-v3.5.7 tarball.> > It seems you are not the only one getting this coredump. I assume you > are using exactly the same libtiff as me, since you are using RH9.I never saw a coredump or crash. I did rebuild libtiff from source while I was looking for the missing header file, but I'm still linking against the stock RH9 libtiff.so in /usr/lib (my built libtiff is in /usr/local/lib).> Strange. Still, it seems people are getting some communication at the > V.21 and V.29 modem level now. That is certainly progress :-)Yep. I couldn't successfully receive a fax from a faxmodem, but app_rxfax is definitely communicating at the FAX level. Here is an example from the Asterisk console on my test system: *CLI> -- Starting simple switch on 'Zap/1-1' -- Hungup 'Zap/1-1' -- Starting simple switch on 'Zap/1-1' -- Executing RxFAX("Zap/1-1", "/tmp/testfax.tif") in new stack Changed from phase 0 to 1 Start receiving document Changed from phase 1 to 4 Sending ident>>> CSI: 40 38 37 36 35 34 33 32 31 20 20 20 20 20 20 20 20 20 20 20 20DIS: Store and forward Internet fax: no Real-time Internet fax: no Preferred octets: 256 Can receive fax Data signalling rate: V.29 R8x7.7lines/mm and/or 200x200pels/25.4mm OK 2D coding OK Scan line length: 215mm Recording length: A4 (297mm) Receiver's minimum scan line time: 0ms at 3.85 l/mm: T7.7 = T3.85 R8x15.4lines/mm OK Inch-based resolution preferred: no Metric-based resolution preferred: no Minimum scan line time for higher resolutions: T15.4 = T7.7>>> DIS: 80 00 c6 f0 80 80 01HDLC underflow in state 9 Changed from phase 4 to 3 <<< TSI: 43 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 78 61 46 TSI without final frame tag Remote fax gave TSI as: "Fax " <<< DCS: 83 00 c6 70 DCS with final frame tag In state 9 DCS: Store and forward Internet fax: no Real-time Internet fax: no Can receive fax Data signalling rate: V.29, 9600bps R8x7.7lines/mm and/or 200x200pels/25.4mm OK 2D coding OK Scan line length: 215mm Recording length: A4 (297mm) Minimum scan line time: 0ms Get at V.29 Changed from phase 3 to 5 Fast carrier up Fast carrier down Changed from phase 5 to 4 0 bad bits in trainability test Start rx document - compression 2 Start rx page>>> CFR: 84HDLC underflow in state 5 Post trainability Changed from phase 4 to 5 Fast carrier up Fast carrier down Fast carrier up Fast carrier down Fast carrier up Fast carrier training failed Fast carrier down Fast carrier up Fast carrier down Fast carrier up Fast carrier training failed Fast carrier down Fast carrier up Fast carrier down Fast carrier up Fast carrier down -- Hungup 'Zap/1-1'> > I will try to provoke the software some more, and see if I > can reproduce > this problem. I have sent a couple of rolls of FAX > successfully from my > soft-fax to a real FAX machine (plus some that didn't go so well, of > course), and quite a few files the other way. This thing really is > basically capable of working in its current state. >Any luck with receiving from fax modems? The example above was a transmission from an old Hayes Optima 288. I can test with a variety of Hayes, Megahertz, USR, and MultiTech modems if that information would be useful to you. Thanks for the great work, Steve. This is going to be killer when it gets polished up. Randy Johnson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20031022/dea78c8e/attachment.htm
Steve Underwood wrote:> > You can find the software at <http://www.opencall.org>. It currently > consists of two parts: >I cannot get that domain to resolve tonight. FYI. B.
Same here. Could someone who has the latest tarball post a mirror? thanx -----Original Message----- From: Brian Capouch [mailto:brianc@palaver.net] Sent: Thursday, October 23, 2003 1:07 AM To: asterisk-users@lists.digium.com Subject: Re: [Asterisk-Users] A software FAX modem Steve Underwood wrote:> > You can find the software at <http://www.opencall.org>. It currently > consists of two parts: >I cannot get that domain to resolve tonight. FYI. B. _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users
On Thu, 2003-10-23 at 09:07, Edwin Silva wrote:> Same here. Could someone who has the latest tarball post a mirror? > thanxDone, These are from when I downloaded them for my use. These are the originals, and not the slightly modified versions to make it work on my system. http://www.drunkenlogic.com/asterisk/> -----Original Message----- > From: Brian Capouch [mailto:brianc@palaver.net] > Sent: Thursday, October 23, 2003 1:07 AM > To: asterisk-users@lists.digium.com > Subject: Re: [Asterisk-Users] A software FAX modem > > > Steve Underwood wrote: > > > > You can find the software at <http://www.opencall.org>. It currently > > consists of two parts: > > > > > I cannot get that domain to resolve tonight. > > FYI. > > B. > > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users-- Steven Critchfield <critch@basesys.com>
Thanks Steven :) -----Original Message----- From: Steven Critchfield [mailto:critch@basesys.com] Sent: Thursday, October 23, 2003 10:40 AM To: asterisk-users@lists.digium.com Subject: RE: [Asterisk-Users] A software FAX modem On Thu, 2003-10-23 at 09:07, Edwin Silva wrote:> Same here. Could someone who has the latest tarball post a mirror? > thanxDone, These are from when I downloaded them for my use. These are the originals, and not the slightly modified versions to make it work on my system. http://www.drunkenlogic.com/asterisk/> -----Original Message----- > From: Brian Capouch [mailto:brianc@palaver.net] > Sent: Thursday, October 23, 2003 1:07 AM > To: asterisk-users@lists.digium.com > Subject: Re: [Asterisk-Users] A software FAX modem > > > Steve Underwood wrote: > > > > You can find the software at <http://www.opencall.org>. It currently> > consists of two parts: > > > > > I cannot get that domain to resolve tonight. > > FYI. > > B. > > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users > _______________________________________________ > Asterisk-Users mailing list > Asterisk-Users@lists.digium.com > http://lists.digium.com/mailman/listinfo/asterisk-users-- Steven Critchfield <critch@basesys.com> _______________________________________________ Asterisk-Users mailing list Asterisk-Users@lists.digium.com http://lists.digium.com/mailman/listinfo/asterisk-users
Hi all i just test the /Steve Underwood software fax modem it works with my CVS version of asterik ( 20 october 2003 ) I can receive fax into tiff file : in my extension.conf , i put this line : exten => fax,1,RxFAX(/home/steveu/testfax2.tif) and i can receive fax now my problem, is how can i do to send fax ? I cannot see how to send a fax . thanks for help /
On Fri, 2003-10-24 at 10:19, sparc wrote:> Hi all > > i just test the /Steve Underwood software fax modem > it works with my CVS version of asterik ( 20 october 2003 ) > > I can receive fax into tiff file : > in my extension.conf , i put this line : exten => > fax,1,RxFAX(/home/steveu/testfax2.tif) > and i can receive fax > > now my problem, is how can i do to send fax ? > I cannot see how to send a fax .The way I did it was to use a sample.call file like below to use the tiff file you have listed above. Channel: Zap/g2/XXXXXXX Application: txfax Data: /home/steveu/testfax2.tif -- Steven Critchfield <critch@basesys.com>
Steven Critchfield wrote:>On Fri, 2003-10-24 at 10:19, sparc wrote: > > >>Hi all >> >>i just test the /Steve Underwood software fax modem >>it works with my CVS version of asterik ( 20 october 2003 ) >> >>I can receive fax into tiff file : >>in my extension.conf , i put this line : exten => >>fax,1,RxFAX(/home/steveu/testfax2.tif) >>and i can receive fax >> >>now my problem, is how can i do to send fax ? >>I cannot see how to send a fax . >> >> > >The way I did it was to use a sample.call file like below to use the >tiff file you have listed above. > > >Channel: Zap/g2/XXXXXXX > >Application: txfax >Data: /home/steveu/testfax2.tif > > > >Ok, so what i need to put in my extension.conf to activate the sample.call file ? Thanks for the answer
> -----Original Message----- > From: Steven Critchfield [mailto:critch@basesys.com] > Sent: Friday, October 24, 2003 11:28 AM > To: asterisk-users@lists.digium.com > Subject: Re: [Asterisk-Users] A software FAX modem > > > On Fri, 2003-10-24 at 10:19, sparc wrote: > > Hi all > > > > i just test the /Steve Underwood software fax modem > > it works with my CVS version of asterik ( 20 october 2003 ) > > > > I can receive fax into tiff file : > > in my extension.conf , i put this line : exten => > > fax,1,RxFAX(/home/steveu/testfax2.tif) > > and i can receive fax > >I'm just not having any success receiving faxes--what are you guys doing differently? After trying various fax machines will calls coming in to Asterisk over a T100P, I've tried a fax modem directly on an Asterisk USB FXS port, and the modems still never properly negotiate and transmit the fax. I'm just wondering what your setup is--type of fax machine or modem, T1 or analog incoming, TDM400P FXS port or a channel bank, CPU speed, etc. I would really, really love to get past the "I got a fax!" step with this... Thanks, Randy Johnson -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20031024/c31cc538/attachment.htm
Hi all, We are thinking of changing our Nortel Meridian PBX to Asterisk. Before we jump into this we would like to know if we can support some important for us functionalities on Asterisk. We would like to know if we can 1. Have menu based voice mail with Asterisk? (like press 1 for sales, press 2 for tech support ...) 2. If we can login, logout make ourselves unavailable with Asterisk ACD? If Asterisk will route alls FIFO bases to the loggedin and available personal. 3. Can we have regular PBX functionalities Call Forwarding Call Transfer Conference Call Music on Hold 4. Can we point DID directly to the extension? No need to dial a main number and than an extension. 5. Is it possible to monitor a call in Asterisk for training or coaching purposes. If a new person is doing a tech support can we monitor (listen to conversation)? If yes, would it be possible to record conversation - like a voicemail? 6. Can we get our voicemail in our e-mail mailbox? (Can we delete, make new, forward voicemail from e-mail client? 7 Can we send and receive faxes from PC? Thank you in advance for taking time and answering our questions. Aram