Envío de faxes desde Asterisk (correo electrónico a fax) --- ¿Es posible realizar algún comentario?

Envío de faxes desde Asterisk (correo electrónico a fax) --- ¿Es posible realizar algún comentario?

Estoy a punto de crear una puerta de enlace de correo electrónico a fax --- algún programa Python haráAsterisco archivos de llamaday ponerlos en alguna cola (basada en archivos o base de datos).

Luego, otro programa debería tomar "tareas de llamada" de la cola y "alimentarlas" al asterisco (respetando algún límite configurado, porque res_fax_digiumeliminará las tareas demasiado limitadas).

A continuación, supongamos que todo está bien y Asterisk envió con éxito algún documento de fax. ¿Cuál podría ser una forma de obtener el estado de esta operación?

Si el análisis de archivos de registro es lo mejor, probablemente asignaría algo especial accountcode(probablemente pueda jugar con este campo) para colocar los CDR en archivos separados también.

Por favor, ¿qué otras formas debería evaluar?

Respuesta1

Entonces, dejé este enfoque y tomaré otro camino: AMI, API de interfaz de administración de Asterisk.

En un par de palabras.

Habiendo creado un plan de marcado como este:

[01-sendfax]
exten => _X.,1,NoOp()
     same => n,SendFax(${faxfile},f)

Puedo originar llamadas con (usandopyst):

res = mgr.originate(
    'SIP/m2000/1234567',
    '1234567',
    context='01-sendfax',
    priority='1',
    caller_id='7654321',
    async=True,
    variables={
        'TRUNK': 'SIP/m2000',
        'faxfile': '/tmp/file.tiff',
    }
)

Y una vez configurado debug = on, manager.confpuedo escuchar los eventos necesarios:

# will catch a status of `originate` call
# (this does not require `debug = on` in `manager.conf`):
mgr.register_event('OriginateResponse', handle_response)

# will catch `SendFax` application's result:
mgr.register_event('FaxStatus', handle_response)

Entonces, el evento res_fax_digiumde incendio se completa después de que se completa.FaxStatusSendFax

información relacionada