Enviando faxes do Asterisk (e-mail para fax) --- algum feedback é possível?

Enviando faxes do Asterisk (e-mail para fax) --- algum feedback é possível?

Estou prestes a enviar um e-mail para o gateway de fax --- algum programa python faráAsterisco arquivos de chamadae coloque-os em alguma fila (com base em arquivos ou banco de dados).

Em seguida, outro programa deve pegar as "tarefas de chamada" da fila e "alimentá-las" para o asterisco (honrando algum limite configurado, pois res_fax_digiumeliminará tarefas excessivamente limitadas).

A seguir, vamos supor que tudo esteja ótimo e o asterisco tenha enviado com sucesso algum documento de fax. Qual poderia ser uma maneira de obter o status desta operação?

Se a análise dos arquivos de log for a melhor, eu provavelmente atribuiria algum especial accountcode(provavelmente posso brincar com esse campo) para colocar os CDRs em arquivos separados também.

Por favor, quais outras formas devo avaliar?

Responder1

Então, abandonei essa abordagem e seguirei outro caminho --- AMI, API Asterisk Management Interface.

Em algumas palavras.

Tendo criado dialplan como este:

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

Posso originar chamadas com (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',
    }
)

E depois de configurado debug = on, manager.confposso ouvir os eventos necessários:

# 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)

Então, res_fax_digiumdispara FaxStatuso evento após SendFaxa conclusão.

informação relacionada