Или …
NEWS
Latest posts made by spectrekr
-
RE: Telegram отправка фото камеры
Во-первых что это даст? А реализовать можно с помощью того же ffmpeg. Им получаете картинку с камеры, формируете промежуточное изображение и его уже высылаете в тгм.
https://forum.iobroker.net/viewtopic.php?f=26&t=10399 реализация, вам нужен пример где камера отдает rtsp поток.
-
RE: [solved] Доступ к брокеру
Если между сетями нет связи, то на роутере организовать проброс порта и обращаться по адресу роутера и настроенному порту.
-
RE: GSM модем + gammu + MYSQL + IOBroker
Можно попробовать создать и в gammu базе, не должна помещать, структура из 2 столбцов, помечать прочитано или нет, я особого смысла не вижу, так как таблица будет вестись не автоматически, а из ващего скрипта, т.е. ее назначение удобная навигация по уже прочитанным СМС.
Примерно так создать таблицу, это 1 раз выполнить.
sendTo('sql.0', 'query',"CREATE TABLE db_gammu.sms_struckt ( id INT NOT NULL PRIMARY KEY, ids VARCHAR(100)")
Заполнять примерно так,
sendTo('sql.0', 'query',"SELECT GROUP_CONCAT(id SEPARATOR ",") as ids FROM db_gammu.inbox WHERE UDH LIKE '"+udh+"%' AND ReceivingDateTime LIKE '" + formatDate(date, 'YYYY-MM-DD') + "%'" , function(res) { if (res.error) { console.error(res.error); } sendTo('sql.0', 'query',"INSERT INTO db_gammu.sms_struckt ids VALUE " + res.result[0].ids);
Код надо проверять, писал по памяти.
-
RE: GSM модем + gammu + MYSQL + IOBroker
Я же тебе предлагал уже решение. Создаешь дополнительную таблицу в базе с 2 полями, первое - уникальный ID, можно автоматический, второй - ID смс. И при получении СМС в данную таблицу заносишь ID пришедшей смс, если составное, то через туже "," вносишь список. Потом уже, когда тебе надо читать СМС, то выборку делаешь сначала с этой таблицы, а потом по полученному ID выборку из inbox.
-
RE: GSM модем + gammu + MYSQL + IOBroker
А почему у тебя дата не приводится к формату YYYY-MM-DD?
И строчка запроса неправильная, у тебя выборка приходит как непонятный формат, а не как строка. Вот этот должен правильно сработать.
"SELECT SenderNumber, ReceivingDateTime, GROUP_CONCAT(TextDecoded ORDER BY UDH SEPARATOR '') as TextDecoded FROM smsd.inbox WHERE UDH LIKE '"+udh+"%' AND ReceivingDateTime LIKE '" + date + "%'"
-
RE: GSM модем + gammu + MYSQL + IOBroker
Так ты опять, где получение самого СМС вставил свой кусок кода, я же тебе его переписывал по другому.
Какая система? Если линукс, то открой консоль и выполни команду
tail -f /opt/iobroker/log/iobroker.log.[сегодняшняя дата]
После этого выполняй код, у тебя в реальном времени будет идти лог.
<size size="50">Ты в телеграмм группе есть?</size>
-
RE: GSM модем + gammu + MYSQL + IOBroker
Переведи драйвер sql в debug режим и посмотри какой формируется запрос, возможно где-то ошибку допускаем. Раз отправка работает, значит ошибка именно в запросе.
-
RE: GSM модем + gammu + MYSQL + IOBroker
Пробуй так.
// () выдаем смс по запросу on("javascript.0.sms.in.requesIDtest", function (obj) { sendTo('sql.0', 'query','SELECT UDH, UpdatedInDB FROM db_gammu.inbox WHERE ID = ' + obj.state.val, function(err, res_udh, fields) { if (res.error) { console.error(res.error); } if(res_udh.result[0].UDH !== ''){ udh = res_udh.result[0].UDH.substring(0, res_udh.result[0].UDH.length - 1); date = res_udh.result[0].UpdatedInDB; sendTo('sql.0', 'query','SELECT SenderNumber, ReceivingDateTime, GROUP_CONCAT(TextDecoded SEPARATOR "") as TextDecoded FROM db_gammu.inbox WHERE UDH LIKE %'+udh+'% AND UpdatedInDB = ' +date, function(err, res, fields) { if (err) throw err; setState("javascript.0.sms.in.requestPHONEtest", res.result[0].SenderNumber); setState("javascript.0.sms.in.requestTIMEtest", res.result[0].ReceivingDateTime); setState("javascript.0.sms.in.requestTEXTtest", res.result[0].TextDecoded); }); } if(res_udh.result[0].UDH === ''){ sendTo('sql.0', 'query','SELECT SenderNumber, ReceivingDateTime, TextDecoded FROM db_gammu.inbox WHERE ID = ' + obj.state.val, function(err, res, fields) { if (res.error) { console.error(res.error); } setState("javascript.0.sms.in.requestPHONEtest", res.result[0].SenderNumber); setState("javascript.0.sms.in.requestTIMEtest", res.result[0].ReceivingDateTime); setState("javascript.0.sms.in.requestTEXTtest", res.result[0].TextDecoded); }); } }); });
Мне кажется он неправильно формирует запрос с подстановкой данных.
-
RE: GSM модем + gammu + MYSQL + IOBroker
База где хранится история объектов и входящие sms на одном сервере? Если да, то просто используете запросы, только в поле где указывали таблицу откуда делать выборку указываете через точку база.таблица. Если пользователи баз разные, то пользователю указанному в настройках драйвера для хранения истории необходимо дать права на чтение с базы SMS.