Для Chan Dongle, как перенаправить входящие sms / ussd от каждого ключа на разные адреса электронной почты? - PullRequest
0 голосов
/ 05 августа 2020

У меня к звездочке подключено два ключа. Звонки идут нормально. У меня проблемы с sms / ussd. Как переслать sms / ussd с каждого электронного ключа на другой адрес электронной почты? В настоящее время SMS-сообщения с обоих ключей пересылаются на один адрес электронной почты.

Ниже представлена ​​моя текущая конфигурация в extensions_custom.conf

[from-trunk-dongle]
exten => sms,1,Verbose(Incoming SMS from ${CALLERID(num)} ${BASE64_DECODE(${SMS_BASE64})})
exten => sms,n,System(echo "To: abc@xyz.com\nSubject: Incoming SMS from ${CALLERID(num)}\n\n${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DONGLENAME} - ${CALLERID(num)}: " > /tmp/sms.txt)
exten => sms,n,Set(FILE(/tmp/sms.txt,,,a)=${BASE64_DECODE(${SMS_BASE64})})
exten => sms,n,System(sendmail -t < /tmp/sms.txt)
exten => sms,n,Hangup()

exten => ussd,1,Verbose(Incoming USSD: ${BASE64_DECODE(${USSD_BASE64})})
exten => ussd,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DONGLENAME}: ${BASE64_DECODE(${USSD_BASE64})}' >> /var/log/asterisk/ussd.txt)
exten => ussd,n,Hangup()

exten => _.,1,Set(CALLERID(name)=${CALLERID(num)})
exten => _.,n,Goto(from-trunk,${EXTEN},1)

Ниже представлена ​​моя текущая конфигурация в dongle.conf

[dongle0]
exten=+15141234567               ; exten for start incoming calls, only in case of Subscriber Number not available!, also set to CALLERID(ndid)
audio=/dev/ttyUSB1              ; tty port for audio connection;        no default value
data=/dev/ttyUSB2               ; tty port for AT commands;             no default value

[dongle1]
exten=+14161234567               ; exten for start incoming calls, only in case of Subscriber Number not available!, also set to CALLERID(ndid)
audio=/dev/ttyUSB4              ; tty port for audio connection;        no default value
data=/dev/ttyUSB5               ; tty port for AT commands;             no default value

Можно ли иметь индивидуальную настройку для каждого электронного ключа в [from-trunk-dongle], а затем пересылать sms / ussd в зависимости от того, какой донгл / sim поступает? от (направляется на каждый адрес электронной почты).

Спасибо

1 Ответ

0 голосов
/ 06 августа 2020

Самый простой способ (для новичков) - создавать разные контексты для каждого установленного имени контекста.

Или проверять переменную CONTEXT.

Более сложный способ - использовать DumpChan и увидеть разницу или переписать chan_dongle, чтобы поставить имя ключа в переменную.

...