Migración de los fax » History » Version 10

Camila Mosteiro, 01/02/2020 06:43 PM

1 7 Camila Mosteiro
h1. Migración de los fax
2 1 Camila Mosteiro
3 1 Camila Mosteiro
FreePBX no cuenta con un módulo de fax. La solución que ofrece es instalar el módulo Fax Pro, pero el mismo es un módulo comercial, por lo cuál instalarlo tendría un costo.
4 1 Camila Mosteiro
5 1 Camila Mosteiro
En su defecto, podemos instalar Hylafax + iaxmodem para tener una máquina de fax virtual.
6 1 Camila Mosteiro
7 2 Camila Mosteiro
*IAXmodem*
8 1 Camila Mosteiro
9 1 Camila Mosteiro
"IAXmodem es un módem de software escrito en C que usa un canal IAX (comúnmente proporcionado por un sistema Asterisk PBX) en lugar de una línea telefónica tradicional y usa una biblioteca DSP en lugar de conjuntos de chips de hardware DSP."
10 1 Camila Mosteiro
11 2 Camila Mosteiro
*Instalación de IAXmodem*
12 10 Camila Mosteiro
*0-* Lo primero que debemos hacer es instalar lo siguiente:
13 10 Camila Mosteiro
     
14 10 Camila Mosteiro
     dnf install automake
15 10 Camila Mosteiro
     dnf install gcc
16 10 Camila Mosteiro
     dnf install libtool
17 1 Camila Mosteiro
18 2 Camila Mosteiro
*1-* Descargamos IAXmodem desde http://iaxmodem.sourceforge.net en /usr/src
19 1 Camila Mosteiro
20 2 Camila Mosteiro
*2-* Descomprimimos el paquete
21 1 Camila Mosteiro
22 2 Camila Mosteiro
*3-* Entramos a la carpeta iaxmodem-version 
23 1 Camila Mosteiro
24 2 Camila Mosteiro
*4-* Compilamos con los siguientes comandos: 
25 1 Camila Mosteiro
26 5 Camila Mosteiro
   ./configure
27 2 Camila Mosteiro
     make
28 1 Camila Mosteiro
29 1 Camila Mosteiro
*5-* Copiamos el programa en la siguiente carpeta:
30 1 Camila Mosteiro
31 10 Camila Mosteiro
   cp iaxmodem-versión/iaxmodem /usr/local/sbin
32 1 Camila Mosteiro
33 10 Camila Mosteiro
*6-* Creamos el siguiente directorio:
34 1 Camila Mosteiro
35 1 Camila Mosteiro
   mkdir /etc/iaxmodem
36 1 Camila Mosteiro
37 1 Camila Mosteiro
38 10 Camila Mosteiro
*7-* Creamos el siguiente archivo:
39 1 Camila Mosteiro
40 1 Camila Mosteiro
   touch /var/log/iaxmodem/ttyIAX0
41 1 Camila Mosteiro
42 10 Camila Mosteiro
   
43 2 Camila Mosteiro
 
44 1 Camila Mosteiro
*8-* Modificamos el archivo de configuración:
45 2 Camila Mosteiro
46 2 Camila Mosteiro
   nano iaxmodem-cfg.ttyIAX
47 2 Camila Mosteiro
48 2 Camila Mosteiro
El archivo queda de la siguiente manera:
49 2 Camila Mosteiro
50 10 Camila Mosteiro
   device          /dev/ttyIAX0
51 2 Camila Mosteiro
   owner           uucp:uucp
52 2 Camila Mosteiro
   mode            660
53 1 Camila Mosteiro
   port            4569
54 2 Camila Mosteiro
   refresh         300
55 2 Camila Mosteiro
   server          [ip. de nuestro servidor]
56 2 Camila Mosteiro
   peername        [interno]
57 2 Camila Mosteiro
   secret          [secret del interno]
58 2 Camila Mosteiro
   cidname         [nombre del interno]
59 2 Camila Mosteiro
   cidnumber	   [número de interno]
60 10 Camila Mosteiro
   codec           slinear
61 3 Camila Mosteiro
62 3 Camila Mosteiro
63 3 Camila Mosteiro
*9-* Guardamos las modificaciones y copiamos el archivo en la carpeta /etc/iaxmodem que creamos previamente:
64 3 Camila Mosteiro
65 3 Camila Mosteiro
  cp iaxmodem-cfg.ttyIAX /etc/iaxmodem/ttyIAX
66 3 Camila Mosteiro
67 3 Camila Mosteiro
*10-* Luego desde la GUI de FreePBX, editamos la configuración avanzada del interno y cambiamos los siguientes ítems:
68 6 Camila Mosteiro
69 8 Camila Mosteiro
  transfer: si
70 7 Camila Mosteiro
 context: from-internal
71 7 Camila Mosteiro
 host: dynamic
72 7 Camila Mosteiro
 type: friend
73 7 Camila Mosteiro
 port: 4569 (puerto UDP estándar en el que trabaja IAX)
74 7 Camila Mosteiro
 qualify: yes
75 7 Camila Mosteiro
 allow: alaw
76 7 Camila Mosteiro
 dial: IAX2/[número de interno]
77 7 Camila Mosteiro
 deny: 0.0.0.0/0.0.0.0
78 7 Camila Mosteiro
 permit: [ip del servidor]/255.255.255.255
79 7 Camila Mosteiro
 requirecalltoken: No
80 3 Camila Mosteiro
  
81 3 Camila Mosteiro
El resto de las configuraciones dejarlas vacías o con lo que viene por defecto.
82 3 Camila Mosteiro
83 3 Camila Mosteiro
*11-* Con todos los pasos anteriores ya configurados, estamos en condiciones de probar que funciona. 
84 3 Camila Mosteiro
85 3 Camila Mosteiro
  cd /usr/local/sbin
86 3 Camila Mosteiro
87 3 Camila Mosteiro
  ./iaxmodem ttyIAX
88 3 Camila Mosteiro
89 3 Camila Mosteiro
Cuando ejecutamos el comando anterior deberíamos tener una respuesta de este estilo: 
90 3 Camila Mosteiro
91 5 Camila Mosteiro
 [2019-11-27 18:20:07.020032] Modem started
92 5 Camila Mosteiro
 [2019-11-27 18:20:07.020664] Setting device = '/dev/ttyIAX'
93 5 Camila Mosteiro
 [2019-11-27 18:20:07.020732] Setting owner = 'uucp:uucp'
94 5 Camila Mosteiro
 [2019-11-27 18:20:07.020769] Setting mode = '660'
95 5 Camila Mosteiro
 [2019-11-27 18:20:07.020807] Setting port = 4569
96 5 Camila Mosteiro
 [2019-11-27 18:20:07.020842] Setting refresh = 300
97 5 Camila Mosteiro
 [2019-11-27 18:20:07.020910] Setting server = 'X.X.X.X'
98 5 Camila Mosteiro
 [2019-11-27 18:20:07.020970] Setting peername = 'xxxx'
99 5 Camila Mosteiro
 [2019-11-27 18:20:07.021025] Setting secret = 'xxxxxxxxxx'
100 5 Camila Mosteiro
 [2019-11-27 18:20:07.021074] Setting cidname = 'nombre de la extensión'
101 5 Camila Mosteiro
 [2019-11-27 18:20:07.021102] Setting cidnumber = 'número de la extensión'
102 5 Camila Mosteiro
 [2019-11-27 18:20:07.021140] Setting codec = alaw
103 5 Camila Mosteiro
 [2019-11-27 18:20:07.021347] Opened pty, slave device: /dev/pts/2
104 5 Camila Mosteiro
 [2019-11-27 18:20:07.021368] Created /dev/ttyIAX symbolic link
105 3 Camila Mosteiro
 [2019-11-27 18:20:07.023917] Registration completed successfully.
106 1 Camila Mosteiro
 
107 5 Camila Mosteiro
Para pararlo presionamos CTRL + C
108 5 Camila Mosteiro
109 3 Camila Mosteiro
 [2019-11-27 18:20:22.725009] Terminating on signal 2...
110 3 Camila Mosteiro
111 1 Camila Mosteiro
112 1 Camila Mosteiro
*12-* En el caso que el registro no se haga correctamente, podemos ingresar a la consola de asterisk desde otra consola con el comando
113 3 Camila Mosteiro
114 10 Camila Mosteiro
  asterisk -rvvvvvvvvvvv
115 1 Camila Mosteiro
116 4 Camila Mosteiro
y en esta consola nos aparecen algunos de los errores que pudimos haber cometido en la configuración.
117 4 Camila Mosteiro
118 1 Camila Mosteiro
*13-* Ahora tenemos que instalar el script presente en la carpeta de las fuentes de IAXmodem para que éste arranque al boot de Linux:
119 1 Camila Mosteiro
120 10 Camila Mosteiro
  cd iaxmodem-1.3.0
121 4 Camila Mosteiro
122 10 Camila Mosteiro
  mv iaxmodem.init.fedora /etc/init.d/iaxmodem
123 1 Camila Mosteiro
124 4 Camila Mosteiro
*14-* Lo volvemos ejecutable:
125 1 Camila Mosteiro
126 10 Camila Mosteiro
  chmod +x /etc/init.d/iaxmodem
127 1 Camila Mosteiro
128 1 Camila Mosteiro
*15-* Lo configuramos para que arranque automáticamente:
129 1 Camila Mosteiro
130 10 Camila Mosteiro
  chkconfig --add iaxmodem
131 1 Camila Mosteiro
132 10 Camila Mosteiro
  chkconfig iaxmodem on
133 1 Camila Mosteiro
134 1 Camila Mosteiro
 
135 1 Camila Mosteiro
*15-* Por último lo ponemos a funcionar:
136 1 Camila Mosteiro
137 10 Camila Mosteiro
systemctl start iaxmodem.service
138 1 Camila Mosteiro
139 1 Camila Mosteiro
140 10 Camila Mosteiro
*Hylafax*
141 10 Camila Mosteiro
142 10 Camila Mosteiro
*1-* Instalamos Hylafax utilizando dnf, el cual ya nos instala las dependencias:
143 10 Camila Mosteiro
144 10 Camila Mosteiro
  dnf install hylafax
145 10 Camila Mosteiro
146 10 Camila Mosteiro
*2-* Desinstale mgetty-sendfax si está instalado mediante el comando:
147 10 Camila Mosteiro
  
148 10 Camila Mosteiro
  dnf uninstall mgetty-sendfax
149 10 Camila Mosteiro
150 10 Camila Mosteiro
*3-* Ejecutamos:
151 10 Camila Mosteiro
   /usr/sbin/faxsetup 
152 10 Camila Mosteiro
153 10 Camila Mosteiro
y luego:
154 10 Camila Mosteiro
  /usr/sbin/faxaddmodem 
155 10 Camila Mosteiro
156 10 Camila Mosteiro
y respondemos las preguntas acorde a los datos de nuestro país y de nuestro módem.
157 10 Camila Mosteiro
158 10 Camila Mosteiro
*4-* Agreguamos la siguiente línea a /etc/inittab: 
159 10 Camila Mosteiro
 
160 10 Camila Mosteiro
  mo:2345:respawn:/usr/sbin/faxgetty ttyIAX0
161 10 Camila Mosteiro
162 10 Camila Mosteiro
*5-* Por último debemos hacer ejecutable a faxgetty agregando la siguiente línea de código en /etc/rc.local:
163 10 Camila Mosteiro
164 10 Camila Mosteiro
  /usr/sbin/faxgetty ttyIAX0
165 10 Camila Mosteiro
166 10 Camila Mosteiro
Y le damos los permisos correspondientes:
167 10 Camila Mosteiro
168 10 Camila Mosteiro
  chmod +x /etc/rc.d/rc.local
169 10 Camila Mosteiro
170 10 Camila Mosteiro
171 10 Camila Mosteiro
172 10 Camila Mosteiro
Para hacer este manual se consultaron las siguientes páginas:
173 10 Camila Mosteiro
174 10 Camila Mosteiro
1- https://www.voztovoice.org/?q=node/191
175 10 Camila Mosteiro
2- http://iaxmodem.sourceforge.net/howto.php
176 10 Camila Mosteiro
3- https://www.hylafax.org/hylafax-handbook/binary-package-install/