NEWS
Таскер, реакция на входящий вызов(проговаривание)
-
Прикрутил скрипт из этой темы
<u>http://forum.iobroker.net/viewtopic.php … 25830c4ae3</u>
к asterisk, и вспомнил что по приходу домой мой сотовый телефон встаёт на вибро и домашние не смогут
дозвонится когда я в другой комнате и тут понеслось:)
Так у меня iobroker стал озвучивать входящие с мобильника.
Может кому пригодится.
51_screenshot_2015-08-17-16-45-16.png
51_screenshot_2015-08-17-16-45-50.png
51_screenshot_2015-08-17-16-45-43.png -
Пригодится для жены, а что за программу используете?
-
Пригодится для жены, а что за программу используете? `
на телефоне tasker(https://play.google.com/store/apps/deta … kerm&hl=ru),на стороне сервера iobroker+скрипт(http://forum.iobroker.net/viewtopic.php?f=26&t=775) который написал vtec изначально для ip pbx asterisk,
и у которого нашлось ещё одно применение
3435_20180201_195642.jpg
3435_20180201_195619.jpg -
Сделал себе такой скриптик:
on('javascript.0.Voice.Caller', function (obj) { var wifi = getState('ping.0.Server-PC.192_168_1_15').val; /*My Phone*/ var sleep = getState('javascript.0.Sleep').val; var algone = getState('javascript.0.Allgone').val; calling = obj.newState.val; var date = new Date(); var day = date.getDay(); // 0-воскр. 6-суббота var hour = date.getHours(); var min = (date.getMinutes()<10?'0':'') + date.getMinutes(); // если минута меньше 10, то добавляем 0 calling = calling.replace(/\+/g, " "); calling = calling.replace(/\%2B/g, ""); //log(calling); if (wifi && calling !=='ok' && sleep=='false' && hour >= 8 && hour <= 23 ){ if (isValidPhone(calling)){ // Имя не определено calling = 'Входящий звонок, Абонент неопределён'; setState('sayit.0.tts.text', calling); setState('javascript.0.Voice.Caller', 'ok'); } else { calling = 'Входящий звонок, звонит ' + calling; setState('sayit.0.tts.text', calling); setState('javascript.0.Voice.Caller', 'ok'); } } function isValidPhone(calling) { return /^((8|\+7)[\- ]?)?(\(?\d{3}\)?[\- ]?)?[\d\- ]{7,10}$/.test(calling); } });
На телефоне Tasker настроил так:
Сработка на любой входящий
А дальше условия,-
если подключен к домашнему WiFi то проверяем есть ли абонент в телефонке(т.е. проверям есть ли CNAME), если есть то передаем имя абонента из телефонки.
-
если нет то получаем CNUM (номер абонента) и передаем на сервер.
-