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

3

Estou prestes a fazer alguns e-mails para o gateway de fax --- algum programa em Python fará Asterisk chame os arquivos e coloque-os em alguma fila (arquivos ou baseado em db).

Em seguida, outro programa deve tirar "tarefas de chamada" da fila e "alimentá-los" para um asterisco (honrando alguns limites configurados, porque res_fax_digium irá reduzir as tarefas limitadas).

Em seguida, vamos supor que tudo está ótimo e o asterisco enviou com sucesso algum documento de fax. O que poderia ser uma maneira de obter o status dessa operação?

Se a análise de arquivos de log for a melhor, eu provavelmente atribuiria um accountcode especial (eu posso jogar com este campo, provavelmente) para descartar CDRs em arquivos separados também.

Por favor, que outras formas devo avaliar?

    
por brownian 18.05.2013 / 10:51

1 resposta

2

Então, eu larguei essa abordagem e vou de outra maneira --- AMI, API de Interface de Gerenciamento do Asterisk.

Em poucas palavras.

Ter criado um plano de discagem como este:

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

Eu posso originar chamadas com (usando pyst ):

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 definir debug = on em manager.conf , posso 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)

Portanto, res_fax_digium aciona FaxStatus evento após a conclusão de SendFax .

    
por 28.05.2013 / 16:55