Простые устройства / Simple Devices

Новые релизы, обновления и т.п.

Модератор: immortal

ингвар
Сообщения: 142
Зарегистрирован: Вт ноя 25, 2014 2:06 pm
Благодарил (а): 33 раза
Поблагодарили: 0

Re: Простые устройства / Simple Devices

Сообщение ингвар » Вт сен 19, 2017 10:27 am

xor писал(а): добавьте debmes($result); после строки $result = preg_replace('/<!--.+-->/is', '', $result);
и посмотрите,что возвращается.
По тексту ожидается ответ ОК, иначе выдается ошибка.
У меня давно что-то подобное было из-за неверной кодировки сохраненной программы.
добавил, все равно идут эти ошибки и ни какого ОК нету
и этих ошибок стало меньше чем было раньше
СпойлерПоказать

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

10:24:00 0.28228700 Error executing job Sensor_humidity03_updateTime (13322811): (/var/www/lib/common.class.php)
10:24:00 0.25692500 Error executing job Motion04_updateTime (13322814): (/var/www/lib/common.class.php)
10:23:00 0.25358200 Error executing job Motion04_updateTime (13322670): (/var/www/lib/common.class.php)
10:22:00 0.13049700 Error executing job Motion04_updateTime (13322511): (/var/www/lib/common.class.php)
10:22:00 0.10673400 Error executing job Sensor_temp03_updateTime (13322504): (/var/www/lib/common.class.php)
10:21:59 0.00703900 Error executing job XiMotion03_updateTime (13322487): (/var/www/lib/common.class.php)
10:21:20 0.33867200 Error executing job Motion04_updateTime (13322403): (/var/www/lib/common.class.php)
10:21:20 0.30703500 Error executing job Motion04_updateTime (13322402): (/var/www/lib/common.class.php)
10:21:00 0.13812200 Error executing job Sensor_humidity03_updateTime (13322352): (/var/www/lib/common.class.php)
10:19:20 0.21867300 Error executing job Sensor_humidity03_updateTime (13322104): (/var/www/lib/common.class.php)
10:18:40 0.31944700 Error executing job Motion04_updateTime (13322002): (/var/www/lib/common.class.php)
10:18:30 0.20058700 Error executing job Sensor_humidity03_updateTime (13321972): (/var/www/lib/common.class.php)
Windows 10 + Raspberry Pi3 + ESP8266
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Вт сен 19, 2017 10:43 am

tarasfrompir1 писал(а):Уважаемый Сергей.
Можно ли сделать еще один тип устройства DVR камера ...
Аналог IP - камера... Почему ?
Одно есть но в IP камера нет приема почтовых сообщений о событии Движение из DVR -регистратора ... А так по функционалу вроде бы похоже... Выкинуть логин и пассворд и ЮРЛ статического снимка...
логин, пассворд, URL статического снимка -- это всё не обязательные поля.
а как происходит "приём почтовых сообщений"? не очень понимаю...

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Простые устройства / Simple Devices

Сообщение tarasfrompir » Вт сен 19, 2017 4:12 pm

Настраиваем в ДВР название камеры по месту нахождения точь в точь как название комнтаты ну типа Hall
Настраиваем свой ДВР на отправку почты на свой же почтовый сервер, а скрипт принимает
Что типа этого - но уменя оно жестко прописано на 2660 порт и работает исключительно (правда иногда не открывает порт)
СпойлерПоказать
$serverport = $_SERVER['SERVER_PORT'];
set_time_limit(0);
$address = "";
$port = 2660;

// открываем сокет
$mysock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
// биндим сокет
socket_bind($mysock, $address, $port);
// слушаем сокет
socket_listen($mysock, 1);
// запуск функции в цикле производит сам скрипт цикла
$client = socket_accept($mysock);
$i="220 192.168.6.120 ESMTP Sat, 11 Aug 2017 17:32:14 +0400";
socket_write($client, $i, 10);
$input = socket_read($client, 2048);
$i="EHLO vasya";
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$i="334 VXNlcm5hbWU6";
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$i="334";
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$i='235 Authentication succeeded';
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$namedvr = $input;
$i='250 OK';
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$i='250 Accepted';
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$i='354 Enter message, ending with "." on a line by itself';
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
$i='250 OK id=1IiR72-000ONs-00';
socket_write($client, $i, strlen($i));
$input = socket_read($client, 2048);
//определиня типа письма старт или конец движения
if (strripos($input,'Старт')>0) {
// получено извещение о движении
$str1 = "№ канала входного сигнала тревоги: ";
$str2 = "IP отправителя: ";
$array = explode(PHP_EOL, $input);
foreach ($array as $key => $value)
if (strpos($value, $str1) !== false) $keys[]=$key;
for ($i=0; isset($keys[$i]); $i++) $cam = $array[ $keys[$i] ];
foreach ($array as $key => $value)
if (strpos($value, $str2) !== false) $keys[]=$key;
for ($i=0; isset($keys[$i]); $i++) $ip= $array[ $keys[$i] ];
$cam = str_replace($str1, "", $cam);
$cam = substr($cam,0,-3);
$cam = str_replace(' ', '', $cam);
$ip = str_replace($str2, "", $ip);
$namedvr = substr($namedvr,12,-3);
// otpravlyaem srabotku dvigeniya если она присутствует в записях
$curl = curl_init('http://127.0.0.1:80/objects/?object='.$ ... onActivity');
$out = curl_exec($curl);
curl_close($curl);
ПС Я уже и модуль написал https://github.com/tarasfrompir/moveDVRindicate и он же у меня распознает лицо и его же и идентифицирует правда только для Винды но все никак руки не доходят его выложить на показ... (программа идентификации в пайтоне - есть мелочи пока что довожу до кондиции)
Спасибо нам ПОМОЖЕТ..!
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Простые устройства / Simple Devices

Сообщение xor » Вт сен 19, 2017 9:48 pm

ингвару:
а чего у вас в подписи указано Windows 10, а в эррорах линуксовые пути (/var/www/lib/common.class.php)?
debmes ничего не возвращает?
перепишите его как-нибудь так, чтобы видно было:

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

      
      $result = trim(getURL($url, 0));
      debmes('result1>'.$result.'<'); //add debug
      $result = preg_replace('/<!--.+-->/is', '', $result);
      debmes('result2>'.$result.'<'); //add debug
      if (!preg_match('/OK$/', $result))
Если резалт пустой, то надо разбираться с кодом базы
Аватара пользователя
sergejey
Site Admin
Сообщения: 4284
Зарегистрирован: Пн сен 05, 2011 6:48 pm
Откуда: Минск, Беларусь
Благодарил (а): 75 раз
Поблагодарили: 1559 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение sergejey » Ср сен 20, 2017 1:04 pm

tarasfrompir1 писал(а):Настраиваем в ДВР название камеры по месту нахождения точь в точь как название комнтаты ну типа Hall
Настраиваем свой ДВР на отправку почты на свой же почтовый сервер, а скрипт принимает
Что типа этого - но уменя оно жестко прописано на 2660 порт и работает исключительно (правда иногда не открывает порт)
...
ПС Я уже и модуль написал https://github.com/tarasfrompir/moveDVRindicate и он же у меня распознает лицо и его же и идентифицирует правда только для Винды но все никак руки не доходят его выложить на показ... (программа идентификации в пайтоне - есть мелочи пока что довожу до кондиции)
Извините, всё равно пока не вижу причин что-то добавлять в ядро... Ваш скрипт может быть очень полезен и никоим образом не хочу уменьшить его ценность, но в данном случае можно обойтись существующей структурой устройств, при необходимости расширив её добавлением новых свойств и/или методов. А модуль SMTP-сервера на самом деле может пригодиться для перехватывания событий о движении для тех камер, которые других способов интеграции не поддерживают.

Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
ингвар
Сообщения: 142
Зарегистрирован: Вт ноя 25, 2014 2:06 pm
Благодарил (а): 33 раза
Поблагодарили: 0

Re: Простые устройства / Simple Devices

Сообщение ингвар » Ср сен 20, 2017 2:13 pm

xor писал(а):ингвару:
а чего у вас в подписи указано Windows 10, а в эррорах линуксовые пути (/var/www/lib/common.class.php)?
debmes ничего не возвращает?
перепишите его как-нибудь так, чтобы видно было:

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

      
      $result = trim(getURL($url, 0));
      debmes('result1>'.$result.'<'); //add debug
      $result = preg_replace('/<!--.+-->/is', '', $result);
      debmes('result2>'.$result.'<'); //add debug
      if (!preg_match('/OK$/', $result)) 
Если резалт пустой, то надо разбираться с кодом базы
вставил и вот что выдает
СпойлерПоказать

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

14:06:05 0.94550800 result1>OK<
14:06:00 0.89425800 Error executing job Sensor_temp03_updateTime (13566425): (/var/www/lib/common.class.php)
14:06:00 0.89412100 result2><
14:06:00 0.89391000 result1><
14:06:00 0.84393200 result2>OK<
14:06:00 0.84345400 result1>OK<
14:05:55 0.75518500 Error executing job XiMotion03_updateTime (13566414): (/var/www/lib/common.class.php)
14:05:55 0.75505100 result2><
14:05:55 0.75485100 result1><
14:05:55 0.73416900 result2>OK<
14:05:55 0.73395600 result1>OK<
14:05:50 0.69070100 result2>OK<
14:05:50 0.69049300 result1>OK<
14:05:50 0.65357200 result2>OK<
14:05:50 0.65335800 result1>OK<
14:05:45 0.58587600 result2>OK<
14:05:45 0.58564900 result1>OK<
14:05:45 0.55252800 result2>OK<
14:05:45 0.55227100 result1>OK<
14:05:40 0.49902500 result2>OK<
14:05:40 0.49881800 result1>OK<
14:05:40 0.46335500 result2>OK<
14:05:40 0.46314200 result1>OK<
14:05:38 0.42241800 result2>OK<
14:05:38 0.42220000 result1>OK<
14:05:35 0.37873000 result2>OK<
14:05:35 0.37851400 result1>OK<
14:05:30 0.33032100 result2>OK<
14:05:30 0.33011700 result1>OK<
14:05:30 0.29494400 result2>OK<
14:05:30 0.29472900 result1>OK<
14:05:15 0.21726200 result2>OK<
14:05:15 0.21706300 result1>OK<
14:05:14 0.17805800 result2>OK<
14:05:14 0.17785500 result1>OK<
14:05:14 0.14227000 result2>OK<
14:05:14 0.14206200 result1>OK<
14:05:14 0.10697400 result2>OK<
14:05:14 0.10676200 result1>OK<
14:05:14 0.04289000 result2>OK<
14:05:14 0.04268000 result1>OK<
14:04:30 0.87559400 result2>OK<
14:04:30 0.87534800 result1>OK<
14:04:22 0.81714700 result2>OK<
14:04:22 0.81687000 result1>OK<
14:04:22 0.77588200 result2>: %<br/>: %<br/>/dev: 0%<br/>/dev/shm: 0%<br/>/run: 2%<br/>/run/lock: 1%<br/>/sys/fs/cgroup: 0%<br/>/var/tmp: 0%<br/>/tmp: 42%<br/>/boot: 35%<br/>/run/user/1000: 0%<br/>OK<
14:04:22 0.77567000 result1>: %<br/>: %<br/>/dev: 0%<br/>/dev/shm: 0%<br/>/run: 2%<br/>/run/lock: 1%<br/>/sys/fs/cgroup: 0%<br/>/var/tmp: 0%<br/>/tmp: 42%<br/>/boot: 35%<br/>/run/user/1000: 0%<br/>OK<
14:04:20 0.72324000 result2>OK< 
а по поводу подписи просто стояла система на винде (сейчас она так и стоит у родителей) а у себя пользуюсь RPI3 ,а подпись забыл поменять :)
Windows 10 + Raspberry Pi3 + ESP8266
Ujin778
Сообщения: 62
Зарегистрирован: Вт апр 28, 2015 8:26 pm
Благодарил (а): 14 раз
Поблагодарили: 2 раза

Re: Простые устройства / Simple Devices

Сообщение Ujin778 » Ср сен 20, 2017 3:04 pm

Здравствуйте!
Создал устройство - "Датчик атмосферного давления", но при добавлении его на панель отображается только пустой прямоугольник. Если же добавить его на сцену то выскакивает ошибка "Warning: constant(): Couldn't find constant LANG_M_PRESSURE in /var/www/lib/objects.class.php on line 1093". Как это можно поправить?
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Простые устройства / Simple Devices

Сообщение xor » Ср сен 20, 2017 8:31 pm

2 ингвар
<отмазка>
по линуксу я не копенгаген.
Могу давать советы с точки зрения здравого смысла.
Права на файлы, особенности платформы RPI не моё.
</отмазка>
14:06:00 0.89425800 Error executing job Sensor_temp03_updateTime (13566425): (/var/www/lib/common.class.php)
14:06:00 0.89412100 result2><
14:06:00 0.89391000 result1><
...
14:05:55 0.75518500 Error executing job XiMotion03_updateTime (13566414): (/var/www/lib/common.class.php)
14:05:55 0.75505100 result2><
14:05:55 0.75485100 result1><
...
В приведенном отрывке видим, что два джоба вернули пустой резалт, что и дало ошибку. Можно дальше копать.
Sensor_temp03 и XiMotion03 всегда дают ошибку или раз на раз не приходится?
Что было в это время в системе, мб, какой-нибудь ресурсоёмкий процесс шёл?

Переписка интересна народу в этой теме или в личку перейти?
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Ср сен 20, 2017 8:37 pm

Интересна)) у меня те же ошибки иногда валятся...
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
ингвар
Сообщения: 142
Зарегистрирован: Вт ноя 25, 2014 2:06 pm
Благодарил (а): 33 раза
Поблагодарили: 0

Re: Простые устройства / Simple Devices

Сообщение ингвар » Чт сен 21, 2017 2:12 pm

xor писал(а):2 ингвар

14:06:00 0.89425800 Error executing job Sensor_temp03_updateTime (13566425): (/var/www/lib/common.class.php)
14:06:00 0.89412100 result2><
14:06:00 0.89391000 result1><
...
14:05:55 0.75518500 Error executing job XiMotion03_updateTime (13566414): (/var/www/lib/common.class.php)
14:05:55 0.75505100 result2><
14:05:55 0.75485100 result1><
...
В приведенном отрывке видим, что два джоба вернули пустой резалт, что и дало ошибку. Можно дальше копать.
Sensor_temp03 и XiMotion03 всегда дают ошибку или раз на раз не приходится?
Что было в это время в системе, мб, какой-нибудь ресурсоёмкий процесс шёл?

Переписка интересна народу в этой теме или в личку перейти?
таких уж трудоемких процессов у меня нет
а датчики не только эти , они все попадают в список этот
они от разных устройств от xiaomi и esp с прошивкой wifi-iot
сейчас вот решил все убрать данные с простых устройств ( хорошо что хоть не такие и важные они) и посмотреть что будет
Windows 10 + Raspberry Pi3 + ESP8266
Ответить