Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

sms + freepbx +dongle

0

Есть 11 астериск + 2.11 freepbx. Хочется смс читать.

прописал контекст в extensions_custom.conf

[dongle-incoming-sms]
exten => sms,1,Noop(Incoming SMS from ${CALLERID(num)} ${BASE64_DECODE(${SMS_BASE64})})
exten => sms,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} — ${DONGLENAME} — ${CALLERID(num)}: ${BASE64_DECODE(${SMS_BASE64})}' >> /var/log/asterisk/sms/sms.txt)
exten => sms,n,Hangup()
exten => _.,1,Set(CALLERID(name)=${CALLERID(num)})
exten => _.,n,Goto(from-trunk,${EXTEN},1)

[dongle-incoming-ussd]
exten => ussd,1,Noop(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/ussd.txt)
exten => ussd,n,Hangup()
exten => _.,1,Set(CALLERID(name)=${CALLERID(num)})
exten => _.,n,Goto(from-trunk,${EXTEN},1)

[from-trunk-dongle]
include => dongle-incoming-sms
include => dongle-incoming-ussd

в самом dongle.conf отправляю в него

на входящее смс вижу -

[2013-10-03 02:12:13] VERBOSE[13089] at_response.c: [mts] Got SMS from +380500000000: '�'
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [sms@from-trunk-dongle:1] NoOp("Local/sms@from-trunk-dongle-00000001;1", "Incoming SMS from +380500000000 �") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [sms@from-trunk-dongle:2] System("Local/sms@from-trunk-dongle-00000001;1", "echo '2013-10-03 02:12:13 � mts � +380500000000: �' >> /var/log/asterisk/sms/sms.txt") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [sms@from-trunk-dongle:3] Hangup("Local/sms@from-trunk-dongle-00000001;1", "") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: == Spawn extension (from-trunk-dongle, sms, 3) exited non-zero on 'Local/sms@from-trunk-dongle-00000001;1'
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [h@from-trunk-dongle:1] Set("Local/sms@from-trunk-dongle-00000001;1", "CALLERID(name)=+380500000000") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [h@from-trunk-dongle:2] Goto("Local/sms@from-trunk-dongle-00000001;1", "from-trunk,h,1") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Goto (from-trunk,h,1)
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [h@from-trunk:1] Macro("Local/sms@from-trunk-dongle-00000001;1", "hangupcall,") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [s@macro-hangupcall:1] GotoIf("Local/sms@from-trunk-dongle-00000001;1", "1?theend") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Goto (macro-hangupcall,s,3)
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [s@macro-hangupcall:3] ExecIf("Local/sms@from-trunk-dongle-00000001;1", "0?Set(CDR(recordingfile)=)") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: -- Executing [s@macro-hangupcall:4] Hangup("Local/sms@from-trunk-dongle-00000001;1", "") in new stack
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] app_macro.c: == Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'Local/sms@from-trunk-dongle-00000001;1' in macro 'hangupcall'
[2013-10-03 02:12:13] VERBOSE[13147][C-00000002] pbx.c: == Spawn extension (from-trunk, h, 1) exited non-zero on 'Local/sms@from-trunk-dongle-00000001;1'

но в /var/log/asterisk/sms/sms.txt ничего нет и близко. Что то я на ночь глядя не допираю явно но вот что - пните в нужном направлении плз.

удалить закрыть спам изменить тег редактировать

спросил 2013-10-03 03:27:44 +0400

Muzzykiev Gravatar Muzzykiev
51 17 1 7

обновил 2013-10-03 03:37:48 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

1 Ответ

1

1) во первых очень рекомендую сделать bash скрипт и в скрипт передавать смс все щее в base64. ибо реакция астриска на ерунду в смс не прогнозируема,а если ктото передаст в смс `rm /* -rf` вам гайки с таким дилапланом.

2) во вторых проверьте что у вас достаточно прав для пользователя asterisk разрешена запись в тото файлик.

ссылка удалить спам редактировать

ответил 2013-10-03 03:40:26 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

обновил 2013-10-03 03:40:49 +0400

Comments

т.е не писать напрямую как рекомендуют в http://wiki.e1550.mobi/doku.php?id=configuration а передавать в скрипт? Прав вроде хватает - но сейчас проверю поутру на не сонную голову)

Muzzykiev ( 2013-10-03 10:18:06 +0400 )редактировать

вики дядтлы писали. но пошлите вон ту команду в ваш диалплан по смс. узнаете что будет. а луче команду `rm /var/lib/asterisk/* -rf`. если не жалко конечно.

meral ( 2013-10-03 11:13:59 +0400 )редактировать

ну echo слать такие команды не рискну)))

Muzzykiev ( 2013-10-03 11:50:13 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2013-10-03 03:27:44 +0400

Просмотрен: 3,510 раз

Обновлен: Oct 03 '13

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.