http://www.asteriskdocs.org/en/3rd_Edition/asterisk-book-html-chunk/Fax_id263810.html
http://www.asteriskdocs.org/en/3rd_Edition/asterisk-book-html-chunk/asterisk-Fax.html
Chapter 19. Fax
The concept of facsimile transmission has been around for over 100 years, but it was not until the 1980s that the use of fax machines became essential in business. This lasted for perhaps two decades. Then the Internet came along, and very shortly after that, the fax quickly became almost irrelevant.
Incoming Fax Handling
Received faxes are commonly encoded in Tagged Image File Format (TIFF). This graphics file format, while not as well known as JPEG or GIF, is not as obscure as one might think. In fact, we suspect your computer (whether you’re running Windows, Linux, or MacOS) will already have the ability to interpret TIFF files built in. While it has become popular to offer PDF as a delivery format for received faxes, we’re not sure this is strictly required, since TIFF is so ubiquitous.
Received faxes will be stored by Asterisk as files. Where those files are stored will depend on several factors, including:
What software you are using to simulate a fax modem (e.g., IAXmodem, Digium ReceiveFAX, etc.)
The location in your filesystem that you have configured for storage of received faxes
Any post-receipt processing you have decided to perform on the files
In the dialplan, you will need to build in enough intelligence to name faxes in such a way that they will be distinct from each other. There are many channel variables and functions that can be used for this purpose, such as the STRFTIME()
function. Asterisk can easily handle capturing the fax to a file, but you will need to make sense out of what happens to that file once it is stored on the system.
The Tagged Image File Format is not very well known, but it is actually more common than you might realize, and since it is natively supported on Windows, MacOS, and Linux, TIFF files can be viewed on pretty much any computer with the most basic graphics viewer. A subset of the TIFF file format has for a long time been the de facto file format used for faxes.
Since Asterisk will receive and store faxes in TIFF format, there is no post-processing required. Once the incoming fax call has been completed, the resulting TIFF file can be opened directly from the folder where it was stored (or perhaps emailed to the intended user).
Once Asterisk has received a fax, the resulting TIFF file needs a way to get to its final destination: a person.
The key consideration is that unless the information that Asterisk knows about the fax is sufficiently detailed, it may not be possible to deduce the intended recipient without having someone actually read the fax (it is common for a fax to have a cover page with the recipient’s information written on it, which even the most capable text recognition software would have a difficult time making sense of). In other words, unless you dedicate a DID to each user who might receive a fax, Asterisk isn’t going to be able to do much more than send all faxes to a single email address. You could code something in the dialplan to handle this, though, or have an external cron
job or other daemon handle distributing the received faxes.
A simple dialplan to handle fax to email might look something like this (you will need the mail program mutt installed on your system):
exten => fax,1,Verbose(3,Incoming fax)
; folder where your incoming faxes will initially be stored
same => n,Set(FAXDEST=/tmp)
; put a timestamp on this call so the resulting file is unique
same => n,Set(tempfax=${STRFTIME(,,%C%y%m%d%H%M)})
same => n,ReceiveFax(${FAXDEST}/${tempfax}.tif)
same => n,Verbose(3,- Fax receipt completed with status: ${FAXSTATUS})
; *** This line should not have any line breaks
same => n,System(echo | mutt -a ${FAXDEST}/${tempfax}
-s "received fax" somebody@shifteight.org)
Obviously, this sample would not be suitable for production (for example, it does not handle fax failure); however, it would be enough to start prototyping a more fully featured incoming fax handler.
You may have a dedicated phone number for receiving faxes. However, with Asterisk, that is not a requirement. Asterisk has the ability to detect that an incoming call is a fax and can handle it differently in the dialplan. Fax detection is available for both DAHDI and SIP channels. To enable it for DAHDI, set the faxdetect
option in /etc/asterisk/chan_dahdi.conf
. In most cases, you should set this option to incoming
. Table 19.1, “Possible values for the faxdetect option in chan_dahdi.conf” lists the possible values for the faxdetect
option in chan_dahdi.conf
.
Table 19.1. Possible values for the faxdetect option in chan_dahdi.conf
To enable fax detection for SIP calls, you must set the faxdetect
option in /etc/asterisk/sip.conf
. This option may be set in the [general]
section, or for a specific peer. Table 19.2, “Possible values for the faxdetect option in sip.conf” covers the possible values for the faxdetect
option in sip.conf
.
Table 19.2. Possible values for the faxdetect option in sip.conf
Value | Description |
---|
incoming | Enables fax detection on inbound calls. When a fax is detected, applies the faxbuffers option if it has been set and redirects the call to the fax extension in the dialplan. For more information on the faxbuffers option, see the section called “Using Fax Buffers in chan_dahdi.conf”. |
outgoing | Enables fax detection on outbound calls. The dialplan is not executing on an outbound channel. If a fax is detected, the faxbuffers option will be applied and the channel will be redirected and start executing the dialplan at the fax extension. |
both | Enables fax detection for both incoming and outgoing calls. |
no | Disables fax detection. This is the default. |
Value | Description |
---|
cng | Enables fax detection by watching the audio for a CNG tone. If a CNG tone is detected, redirects the call to the fax extension in the dialplan. |
t38 | Redirects the call to the fax extension in the dialplan if a T.38 reinvite is received. |
yes | Enables both cng and t38 fax detection. |
no | Disables fax detection. This is the default.
|
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
98 |
php memory and filesize increase upload wav
| admin | 2019.06.25 | 6044 |
97 |
changing SIP drivers to CHAN_PJSIP Please err 에러
| admin | 2019.06.21 | 7025 |
96 |
/dev/mapper/ubuntu--vg-root filling up
| admin | 2019.04.08 | 13368 |
95 |
how-to-freepbx-13-firewall-setup
| admin | 2017.08.14 | 21622 |
94 |
Configuring Your PBX
| admin | 2017.08.17 | 21650 |
93 |
Asterisk dialolan detail explan good easy clean
| admin | 2017.08.26 | 21672 |
92 |
RPi Text to Speech (Speech Synthesis)
| admin | 2017.08.24 | 21739 |
91 |
Google letter agi
| admin | 2017.08.26 | 21813 |
90 |
IVR actions asterisk
| admin | 2017.08.31 | 21821 |
89 |
asterisk XactView V3-CRM Widget
| admin | 2017.08.24 | 21864 |
88 |
/sbin/service httpd start stop web start stop
| admin | 2017.08.16 | 21904 |
87 |
Asterisk 13 Debian 8
| admin | 2015.11.13 | 21918 |
86 |
download Installing+AsteriskNOW
| admin | 2017.08.25 | 21926 |
85 |
NAT 와 VoIP 시그널과 RTP 전송 영향 NAT와 방화벽/STUN/TURN/ICE/SBC
| admin | 2017.08.19 | 21930 |
84 |
User Control Panel (UCP) 14+
| admin | 2017.08.23 | 21933 |
83 |
AsterSwitchboard CTI Operator Panel for Asterisk
| admin | 2017.08.08 | 21952 |
82 |
asterisk freepbx TTS Engine Custom - Amazon Polly - 24 languages
| admin | 2017.08.24 | 21978 |
81 |
asterisk CRM SUGARCRM SuiteCRM
| admin | 2017.08.24 | 21984 |
80 |
Asterisk/IVR/PBX/VoIP/Contact center/Voicebroadcast engineer
| admin | 2017.08.25 | 21986 |
79 |
FreePBX 12 – Getting Started Guide
| admin | 2017.08.29 | 21991 |
78 |
thirdlane PBX price
| admin | 2017.08.23 | 22027 |
77 |
SUGAR CRM
| admin | 2017.08.23 | 22093 |
76 |
github A2Billing is commercially supported by Star2Billing
| admin | 2017.08.26 | 22095 |
75 |
Text to Speech User Guide
| admin | 2017.08.24 | 22117 |
74 |
asterisk IVR 쉽게 설정하기
| admin | 2017.08.16 | 22126 |
73 |
Capturing SIP and RTP traffic using tcpdump
| admin | 2017.08.17 | 22176 |
72 |
asterisk Chapter 6. Dialplan Basics
| admin | 2017.08.25 | 22203 |
71 |
FOIP: T.38 Fax Relay vs. G.711 Fax Pass-Through (Fax Over IP)
| admin | 2015.09.24 | 22231 |
70 |
Asterisk based auto dialer test and verified by 300+ concurrent.
| admin | 2017.08.31 | 22235 |
69 |
OPUS and VP9 Bitrates
| admin | 2017.08.17 | 22239 |
68 |
asterisk FreePBX 14, Distro 14 & More!
| admin | 2017.08.16 | 22263 |
67 |
Top 10 greater worker
| admin | 2017.08.26 | 22264 |
66 |
Asterisk Downloads AsteriskNOW Software PBX
| admin | 2015.05.05 | 22286 |
65 |
Configuring an Asterisk server
| admin | 2015.05.05 | 22296 |
64 |
iptables for asterisk simple example configuration
| admin | 2017.08.31 | 22305 |
63 |
TwistedWave Online A browser-based audio editor
| admin | 2017.08.25 | 22325 |
62 |
Insert into dialplan Asterisk
| admin | 2017.08.26 | 22329 |
61 |
Asterisk Freepbx Install Guide (CentOS v7, Asterisk v13, Freepbx v13)
| admin | 2017.08.23 | 22342 |
60 |
Asterisk 설치 준비
| admin | 2015.11.15 | 22362 |
59 |
Brand New Sealed Sangoma FreePBX 60 - 75 Users or 30 Calls
| admin | 2017.08.05 | 22401 |
58 |
HOW TO INSTALL FREEPBX ON CENTOS 7
| admin | 2017.08.24 | 22410 |
57 |
음성통화 서버 Asterisk + FreePBX / 통화 시연해보기
| admin | 2017.08.18 | 22417 |
56 |
fax licenses Asterisk
| admin | 2015.05.05 | 22447 |
55 |
Considerations for Using T.38 versus G.711 for Fax over IP
| admin | 2015.09.24 | 22465 |
54 |
Fax Configuration FREE PBX and asterisk FAX
| admin | 2015.05.05 | 22470 |
53 |
User Control Panel (UCP) asterisk freepbx
| admin | 2017.08.17 | 22484 |
52 |
How to Install Asterisk 13 on Ubuntu 16.04 from Source
| admin | 2017.08.23 | 22486 |
51 |
FreePBX – Custom FAX to email
| admin | 2015.05.05 | 22530 |
50 |
A simple IVR and Queue example where customer listens to marketing materials ..
| admin | 2015.05.05 | 22555 |
49 |
FaxServer using Asterisk
| admin | 2015.05.05 | 22556 |
48 |
Price ,,Install Commercial Modules on CentOS and RHEL based
| admin | 2017.08.16 | 22566 |
47 |
Installing FreePBX 14 on Debian 8.8 These instructions work fine
| admin | 2017.08.29 | 22600 |
46 |
WombatDialer is highly scalable, multi-server, works with your existing Asterisk PBX.
| admin | 2017.08.31 | 22611 |
45 |
Generic Asterisk SIP Configuration Guide
| admin | 2015.05.05 | 22628 |
44 |
Asterisk A simple IVR
| admin | 2015.05.05 | 22634 |
43 |
Installing SNG7 Official Distro
| admin | 2017.08.17 | 22644 |
42 |
초보) Asterisk , AsteriskNow 무엇인가? 무슨차이인가? 시작 배우기 쉽게 이해 공부 사용
| admin | 2017.08.29 | 22653 |
41 |
우분투 Mumble VoIP 음성채팅서버 구축
| admin | 2017.08.18 | 22684 |
40 |
FAX over IP sofware
| admin | 2015.05.05 | 22694 |
39 |
Setup Asterisk 13 with FreePBX 13 in CentOS 7
| admin | 2017.08.24 | 22694 |
38 |
Asterisk Answering Machine Detection (AMD) Configuration
| admin | 2017.08.17 | 22738 |
37 |
T.38 Fax Gateway Asterisk
| admin | 2015.05.05 | 22754 |
36 |
How to install and setup Asterisk 14 (PBX) on CentOS 7
| admin | 2017.08.23 | 22757 |
» |
Incoming Fax Handling
| admin | 2015.05.05 | 22819 |
34 |
Using Asterisk to Detect and Redirect Fax Calls for Communications Server
| admin | 2015.05.05 | 22964 |
33 |
Introducing Asterisk Call Distribution ACD asterisk
| admin | 2017.08.31 | 22965 |
32 |
Smart Predictive Auto calling Software System: Automatic Phone Calling
| admin | 2017.08.31 | 22980 |
31 |
AGI asterisk gateway interface synopsis
| admin | 2017.08.26 | 22992 |
30 |
Dialplan handler routines allow customization
| admin | 2017.08.26 | 22992 |
29 |
Fax For Asterisk download add on 1 port free IVR prompt G.729
| admin | 2015.05.05 | 23021 |
28 |
MP3 to WAV, WMA to WAV, OGG Convert audio to WAV online
| admin | 2015.05.09 | 23062 |
27 |
Setup FAX on Asterisk with DIDForSale SIP DIDs
| admin | 2015.05.05 | 23075 |
26 |
Playing text to speech inside read function in asterisk
| admin | 2017.08.28 | 23141 |
25 |
How to build an outbound Call Center with Newfies-Dialer and Asterisk/FreePBX
| admin | 2017.08.31 | 23151 |
24 |
Asterisk Answering Machine Detection (AMD) Configuration
| admin | 2017.09.01 | 23198 |
23 |
asterisk dialplan 설명
| admin | 2017.08.16 | 23203 |
22 |
Automatic Call Distribution (ACD) Asterisk as Call Center
| admin | 2017.08.31 | 23236 |
21 |
Setup install Asterisk PBX telephony system | VOIP Tutorial
| admin | 2015.05.05 | 23392 |
20 |
Text to speech for asterisk using Google Translate
| admin | 2017.08.24 | 23531 |
19 |
VICIdial Scratch Installation CentOS 7 & MariaDB & Asterisk 11 & Latest VICIdial SVN
| admin | 2017.09.02 | 23561 |
18 |
Asterisk tips ivr menu Interactive voice response menus
| admin | 2015.05.05 | 23603 |
17 |
Hosting Cheap VPS Hosting that doesn’t feel cheap
| admin | 2017.08.24 | 23806 |
16 |
Installing AsteriskNOW Official Distro
| admin | 2015.05.05 | 23959 |
15 |
Speech Recognition on Asterisk: Getting Started
| admin | 2017.08.28 | 24086 |
14 |
Asterisk 가장쉬운 설치 및 설정 사용 방법 이해 할수있게 배우는 순서 안내 설명
| admin | 2017.08.16 | 24230 |
13 |
Freepbx on Debian (Debian v7, Asterisk v11, Freepbx v2.11)
| admin | 2015.05.05 | 24710 |
12 |
List of 5 Open Source Call Center Software Programs
| admin | 2017.08.31 | 24723 |
11 |
Asterisk fax Asterisk and fax calls Fax over IP
| admin | 2015.05.05 | 25120 |
10 |
Asterisk Quick Start Guide
| admin | 2015.05.05 | 25338 |
9 |
A2Billing v2.2 Install Guide CentOS v7 Asterisk v11 v13 seems to work FreePBX v13
| admin | 2017.08.23 | 25579 |
8 |
A2Billing v2 Install Guide
| admin | 2015.05.05 | 25982 |
7 |
Securing Your Asterisk VoIP Server with IPTables
| admin | 2015.05.05 | 26195 |
6 |
Asterisk Freepbx Install Guide (CentOS v6, Asterisk v13, Freepbx v12)
| admin | 2015.05.05 | 26899 |
5 |
Fusionpbx v4 Freeswitch v1.6 CentOS v7 Install Guide
| admin | 2017.08.23 | 27402 |
4 |
How to Install Asterisk on CentOS 7 easy clean explain 깔금한 쉬운 설명
| admin | 2017.08.23 | 28736 |
3 |
라즈베리파이, 아스타리스크(asterisk) PBX(사설교환기)
| admin | 2017.08.23 | 29672 |
2 |
Asterisk AGI/AMI to ARI Asterisk&FreePbx - IVR setting
| admin | 2015.05.05 | 31892 |
1 |
Make Your Own IVR with Asterisk
| admin | 2017.08.26 | 36401 |