Asterisk дома

Обсуждение статей, технологий домашней автоматизации, программных и аппаратных решений
captain
Сообщения: 18
Зарегистрирован: 29 дек 2013, 13:51

Re: Asterisk дома

Сообщение captain » 03 мар 2017, 08:55

Оно подключается как внешняя SIP линия и вызовами рулишь уже через Asterisk, для USSD запросов можно использовать их API через get запросы или выполнять из web интерфейса. Еще есть устройство от AddPack тоже достаточно надежные,но дороже, хотя возможно попробовать их найти б.у на ebay.

SolarW
Сообщения: 176
Зарегистрирован: 01 авг 2016, 00:32

Re: Asterisk дома

Сообщение SolarW » 03 мар 2017, 11:53

В случае с подключением многоканального шлюза получаете на астериске несколько SIP-линий, по принципу "одна симка - одна линия".
При этом удобно рулить входящими/исходящими.
SMS/USSD не являются функционалом астериска, лучше отдельными скриптами/командами этот функционал реализовывать.

vladimir22
Сообщения: 219
Зарегистрирован: 15 мар 2013, 09:42

Re: Asterisk дома

Сообщение vladimir22 » 03 мар 2017, 14:36

еще !
столкнулись с проблемой, при использовании GSM шлюзов , криво работает модуль TrunkBalansing.
с модемами - нормально .

SolarW
Сообщения: 176
Зарегистрирован: 01 авг 2016, 00:32

Re: Asterisk дома

Сообщение SolarW » 03 мар 2017, 20:20

vladimir22 писал(а):еще !
столкнулись с проблемой, при использовании GSM шлюзов , криво работает модуль TrunkBalansing.
с модемами - нормально .
Какой именно функционал данного модуля?
Равномерная загрузка симок (т.е. распределение вызовов по разным каналам) вроде работало нормально.

d.v.ermakov
Администратор
Сообщения: 2187
Зарегистрирован: 29 май 2015, 21:23
Откуда: Екатеринбург, Нижний Тагил

Re: Asterisk дома

Сообщение d.v.ermakov » 03 мар 2017, 20:58

Констатирую факт, что Мультифон последние полгода-год работает стабильно. Железные GSM-шлюзы, если есть интернет, теряют смысл.

MSapogov
Сообщения: 312
Зарегистрирован: 13 май 2015, 08:44
Откуда: г. Томск

Re: Asterisk дома

Сообщение MSapogov » 04 мар 2017, 10:09

Мультифон - это Мегафон. Конечно MNP никто не отменял.
Эта услуга Мультифон - как я понимаю у них платная.

vladimir22
Сообщения: 219
Зарегистрирован: 15 мар 2013, 09:42

Re: Asterisk дома

Сообщение vladimir22 » 04 мар 2017, 14:20

Учлуга бесплатная, трафик платный

d.v.ermakov
Администратор
Сообщения: 2187
Зарегистрирован: 29 май 2015, 21:23
Откуда: Екатеринбург, Нижний Тагил

Re: Asterisk дома

Сообщение d.v.ermakov » 04 мар 2017, 15:02

Мультифон можно бесплатно подключить к любому тарифу Мегафона, и трафик будет по условиям этого тарифа.

volkarti
Сообщения: 171
Зарегистрирован: 04 фев 2015, 09:11
Откуда: Екатеринбург

Re: Asterisk дома

Сообщение volkarti » 06 мар 2017, 17:15

Добрый день
Вот такой прибор кто-нибудь использовал - https://ru.aliexpress.com/item/Free-shi ... 262.BasoCO ?
Если его установить в офисе в разрыв аналоговой телефонной лини - возможно настроить соединение с домашней сетью с настроенным Asterisk через инет по VPN ?

MSapogov
Сообщения: 312
Зарегистрирован: 13 май 2015, 08:44
Откуда: г. Томск

Re: Asterisk дома

Сообщение MSapogov » 06 мар 2017, 19:23

Обычный шлюз 1хFXO и 1хFXS работают уже лет по 5-7.
1 из 6-и вашел из строя. Бывают проблеммы с эхом в осенне весенний период (приходится перенастраивать параметры линии).
Их можно соединить и без участия Asterisk, с другим шлюзом (где-то в сети были настройки).

volkarti
Сообщения: 171
Зарегистрирован: 04 фев 2015, 09:11
Откуда: Екатеринбург

Re: Asterisk дома

Сообщение volkarti » 02 май 2017, 09:17

Добрый день

Есть вот такая мысль - настроен Asterisk, есть построенная сигнализация на Mega, как настроить, чтобы система отправляла СМС с характеристикой о событии. Или обратно - по входящему СМС выполняла какие то действия - включала, выключала приборы ....

MSapogov
Сообщения: 312
Зарегистрирован: 13 май 2015, 08:44
Откуда: г. Томск

Re: Asterisk дома

Сообщение MSapogov » 02 май 2017, 19:37

volkarti писал(а):Добрый день

Есть вот такая мысль - настроен Asterisk, есть построенная сигнализация на Mega, как настроить, чтобы система отправляла СМС с характеристикой о событии. Или обратно - по входящему СМС выполняла какие то действия - включала, выключала приборы ....
Что бы отправить SMS через *, нужно выполнить на сервере со * вот такую комманду:

Код: Выделить всё

/usr/sbin/asterisk -rx 'dongle sms dongle0 +79039521122 "Test  SMS 2" '
Чтобы принять SMS и обработать его, то нужно в контексте (куда попадают входящие от модемов) прописать необходимую команду..
Для примера:

Код: Выделить всё

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

	exten => _+7X.,1,Set(CALLERID(all)=${CALLERID(num)})
	exten => _+7X.,n,Set(CALLERID(num)=8${CALLERID(num):2})
	exten => _+7X.,n,goto(from-trunk,${DONGLEIMEI},1)

[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} - ${DONGLEPROVIDER} ${DONGLENUMBER} ot - ${CALLERID(num)}: ${BASE64_DECODE(${SMS_BASE64})}' >> /var/log/asterisk/sms.txt)
	exten => sms,n,System(echo "To: vasyapupkin@gmail.com\nSubject: Incoming SMS for ${DONGLENUMBER} from ${CALLERID(num)}\n\n${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DONGLENAME} na nomer ${DONGLEPROVIDER} ${DONGLENUMBER} ot abonenta ${CALLERID(num)}: ${BASE64_DECODE(${SMS_BASE64})}" | sendmail -t)
    exten => sms,n,Hangup()

[dongle-incoming-ussd]
    exten => ussd,1,Verbose(Incoming USSD: ${USSD})
    exten => ussd,n,System(echo '${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DONGLENAME} - ${DONGLEPROVIDER} ${DONGLENUMBER} ot - USSD: ${USSD}' >> /var/log/asterisk/ussd.txt)
	exten => sms,n,System(echo "To: vasyapupkin@gmail.com\nSubject: Incoming USSD for ${DONGLENUMBER}}\n\n${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)} - ${DONGLENAME} na nomer ${DONGLEPROVIDER} ${DONGLENUMBER} ot USSD: ${USSD}" | sendmail -t)
    exten => ussd,n,Hangup()
Соответственно в dongle.conf незабыть указать context for incoming calls:
context=dongle-incoming
Можете реализовать и проверку входящих SMS и звонков по callerID и по времени ... короче что угодно.

Я вижу фантазии у Вас много, только поиском Вы не любите пользоваться.

volkarti
Сообщения: 171
Зарегистрирован: 04 фев 2015, 09:11
Откуда: Екатеринбург

Re: Asterisk дома

Сообщение volkarti » 02 май 2017, 21:11

MSapogov благодарю за информацию. Поиском пользуюсь очень много - ночи на пролет - иногда направление движения нужно получить правильное.

volkarti
Сообщения: 171
Зарегистрирован: 04 фев 2015, 09:11
Откуда: Екатеринбург

Re: Asterisk дома

Сообщение volkarti » 12 авг 2017, 19:38

Добрый день - Нужен скрипт на Bash отправляющий SMS с текстом "Отключение электричества - 12.08.2017 в 18.00"
подскажите как реализовать. Мной написанный отправляет - $string



#!/bin/bash

string1="Отключение электричества - "
string2=$(date)

string=$string1$string2

case $1 in
onbattwarn)
echo "The UPS has been on battery for a while"
/usr/sbin/asterisk -rx 'dongle sms dongle0 +79024428888 $string '
/sbin/upsmon -c fsd
;;
ups-back-on-power)
;;
*)
logger -t /etc/nut/upssched-cmd "Unrecognized command: $1"
;;
esac

vladimir22
Сообщения: 219
Зарегистрирован: 15 мар 2013, 09:42

Re: Asterisk дома

Сообщение vladimir22 » 15 авг 2017, 14:40

а чем обусловлен BASH ?
на php не легче ?!

/usr/sbin/asterisk -rx 'dongle sms dongle0 +79024428888' $string

так что то приходит :-)

volkarti
Сообщения: 171
Зарегистрирован: 04 фев 2015, 09:11
Откуда: Екатеринбург

Re: Asterisk дома

Сообщение volkarti » 15 авг 2017, 15:14

vladimir22 писал(а):а чем обусловлен BASH ?
на php не легче ?!

/usr/sbin/asterisk -rx 'dongle sms dongle0 +79024428888' $string

так что то приходит :-)

Приходит SMS сообщение с содержимым - "Отключение электричества - $string"

vladimir22
Сообщения: 219
Зарегистрирован: 15 мар 2013, 09:42

Re: Asterisk дома

Сообщение vladimir22 » 15 авг 2017, 15:46

Код: Выделить всё

#!/usr/bin/php
<?php
$number = '+71231234567'; \\номер куда отправляем 
$donglename ='dongle0'; \\ через какой Dongle
$mes1="отключение электричества- "; 
$mes2= date("Y-m-d H:i:s"); \\подставляем дату , можно самомо собрать формат даты 
$mes = $mes1."".$mes2; \\сложили переменные 
$cmd = sprintf("dongle sms  %s %s %s ",$donglename, $number, $mes);\\собрали строку 
$cmd = sprintf("/usr/sbin/asterisk -rx '%s'",$cmd); \\еще раз 
exec ($cmd); \\выполнили 
?>
у меня вот такое получилось :-) сами можете подставить что вам надо :-)

ps на самом деле , я считаю SMS немного не кашерно, и трата денег . Отсылаю такие сообщения . да и все остальные от системы мониторинга . через Telegram, который в свою очередь идет по альтернативному маршруту , через бесплатную Yota $-) 64k вполне хватает . что бы отослать сообщение, и при необходимости , принять какую то команду на исполнение :-) Не чего - астериск загружать этой ерундой ;-)

Ответить