Видеонаблюдение

Всё, что не подходит под вышеперечисленные разделы

Модератор: immortal

directman66
Сообщения: 2801
Зарегистрирован: Пн дек 26, 2016 9:51 am
Откуда: Екатеринбург
Благодарил (а): 380 раз
Поблагодарили: 693 раза
Контактная информация:

Re: Видеонаблюдение

Сообщение directman66 » Пт сен 20, 2019 6:34 am

stellhawk писал(а):
Пт сен 20, 2019 6:21 am
directman66 писал(а):
Чт сен 19, 2019 9:56 pm
Тоже ищу адекватное аппаратное решение. В свое время висел ivideon, также камеры пишут на китайский NVR за 2000 руб, который никуда не интегрируется. Как вариант еще - на xpenology есть встроенный servivance. В нем вроде без лицензии можно держать 2 камеры. Тоже есть нормальная вэб морда.
а этот китайский nvr шару /фтп или что-то еще отдает для доступа?
Нет. Он отдает на своем китайском прототоколе. Смотреть архив можно через приложения ICSEE и аналоги. Но если честно, я сомневаюсь, что регик хиквижн сильно функциональней в этом плане.
Если вам помогло данное сообщение, не поленитесь нажать кнопку "спасибо".
CONNECT | Оборудование | Блог | Дополнения | Email | Telegram
Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 60 раз
Поблагодарили: 531 раз
Контактная информация:

Re: Видеонаблюдение

Сообщение Vovix » Пт сен 20, 2019 10:38 pm

stellhawk писал(а):
Чт сен 19, 2019 2:51 pm
протестировал модуль камшотер. начало присланного видео в телегу отстает от события в среднем на 20 секунд, что в корне не бьется с моим кон....
Ну вот, а я что говорил!

Как реализовал я у себя:
IMG_0368.jpg
IMG_0368.jpg (214.98 КБ) 4501 просмотр
1) Отдельный видеорегистратор с выдачей RTSP
2) ContaCam на сервере MDM
3) Тем не менее есть камеры которые НЕ заведены на регистратор (самые не ответственные), но в ContaCam заведены все
4) Для некоторых камер в ContaCam сделано создание gif после движения в кадре (в т.ч. с захватом несколько секунд до движения)
5) Некоторые камеры из ContaCam дергают метод sensorMovement1.statusChanged (каждая со своим sensorMovement)
6) В методе в т.ч. регистрируется registerEvent и проверяется не прошло ли заданное время
т.е. проверяется наличие долгого отсутствия движения (например часа 3)
7) Если это так и уже 3 часа, до движения сейчас, движения ранее не было, то вот тогда вызывается скрипт с параметрами для отправки в телеграм, но с задержкой на 28 секунд! (вывел экспериментально для себя, с учетом времени для записи gif и т.п.)
вот его код:
СпойлерПоказать

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

$camN = ($params['cam'] == '') ?  "cam1" : $params['cam'];
$where = ($params['where'] == '') ?  "C:/ContaCam" : $params['where'];
// отправка в телегу
    
$y2 = gg('ThisComputer.DateY');
$m2 = gg('ThisComputer.DateM');
$d2 = gg('ThisComputer.DateD');
$dir2 = $where.'/'.$camN.'/'.$y2.'/'.$m2.'/'.$d2.'/';

$fgif2 = scandir($dir2, 1);

include_once(DIR_MODULES . 'telegram/telegram.class.php');
$telegram_module = new telegram();
if (!$fgif2) {
	$telegram_module->sendMessageToAll("В папке:".$dir2." нет файлов gif");
} else {
	$telegram_module->sendFileToAll($dir2.$fgif2[0]);
 	$telegram_module->sendMessageToAll($fgif2[0]);
}

8) То есть по сути скрипт смотрит папку с записями gif от ContaCam и выбирает последний сегодня файл gif (для упращения поиска) у нужной камеры. (согласен, не совсем корректно, например при переходе суток - проблема, решается конечно доп. проверкой, но лень делать :D )

итого получаю при долгом отсутствии gif ....................................... с хождением кошек по дому :D

Да конечно, лучше это завязать не на долгое отсутствие, а например на somebodyHome или (и) режим под охраной и т.п.

Update:
Да забыл сказать: к видеорегистратору есть отдельный удаленный доступ и он не зависит от MDM ни как!

И дополнительно бонусом сделал команды с кнопками в телеге, примерно такого содержания:

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

runScript("gif2telega", array("cam"=>"cam1"));
return;
и теперь всегда могу запросить последнюю запись gif по камере в ручном режиме!
За это сообщение автора Vovix поблагодарил:
Molostov (Пн сен 23, 2019 12:00 am)
Рейтинг: 1.16%
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
shefus
Сообщения: 84
Зарегистрирован: Вт мар 08, 2016 4:57 pm
Благодарил (а): 17 раз
Поблагодарили: 2 раза

Re: Видеонаблюдение

Сообщение shefus » Пн ноя 04, 2019 12:11 pm

Всем привет!
Чтобы не создавать новую тему - прошу помощи здесь.
У "Линии" есть такой бесплатный сервис rtsp.me. Добавил туда камеру по rstp и вставил в сцену по прямой ссылке:

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

<iframe width="240" height="180" src="https://rtsp.me/embed/xxxxxx/" frameborder="0" allowfullscreen></iframe>
Все работает, но! - доступ к изображению камеры имеют все кому не лень. rtsp.me предлагают доступ с авторизацией через API. Пример кода:
СпойлерПоказать

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

<?php
$url = 'https://rtsp.me/api/';
$params = array(
    'email' => 'PUT_EMAIL', 
    'password' => 'PUT_PASSWORD', 
    'id' => 'PUT_ID', 
);
$result = file_get_contents($url, false, stream_context_create(array(
    'http' => array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => http_build_query($params)
    )
)));
$json=json_decode($result,yes);
echo "<iframe width='640' height='480' src='{$json[cameras][0][url]}' frameborder='0' allowfullscreen></iframe>";
?>
И тут вопрос "чайника": куда и как воткнуть этот код на сцену. Пробовал на сцене в блок HTML - фрейм рисует, но внутри куча барахла ввиде:
СпойлерПоказать
xxxx@list.ru', 'password' => 'xxxxxx', 'id' => '', ); $result = file_get_contents($url, false, stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => http_build_query($params) ) ))); $json=json_decode($result,yes); echo

Not Found
The requested URL was not found on this server.

Apache/2.4.29 (Ubuntu) Server at 192.168.5.113 Port 80
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Видеонаблюдение

Сообщение tarasfrompir » Пн ноя 04, 2019 1:11 pm

shefus писал(а):
Пн ноя 04, 2019 12:11 pm
Всем привет!
Чтобы не создавать новую тему - прошу помощи здесь.
У "Линии" есть такой бесплатный сервис rtsp.me. Добавил туда камеру по rstp и вставил в сцену по прямой ссылке:

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

<iframe width="240" height="180" src="https://rtsp.me/embed/xxxxxx/" frameborder="0" allowfullscreen></iframe>
Все работает, но! - доступ к изображению камеры имеют все кому не лень. rtsp.me предлагают доступ с авторизацией через API. Пример кода:
СпойлерПоказать

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

<?php
$url = 'https://rtsp.me/api/';
$params = array(
    'email' => 'PUT_EMAIL', 
    'password' => 'PUT_PASSWORD', 
    'id' => 'PUT_ID', 
);
$result = file_get_contents($url, false, stream_context_create(array(
    'http' => array(
        'method'  => 'POST',
        'header'  => 'Content-type: application/x-www-form-urlencoded',
        'content' => http_build_query($params)
    )
)));
$json=json_decode($result,yes);
echo "<iframe width='640' height='480' src='{$json[cameras][0][url]}' frameborder='0' allowfullscreen></iframe>";
?>
И тут вопрос "чайника": куда и как воткнуть этот код на сцену. Пробовал на сцене в блок HTML - фрейм рисует, но внутри куча барахла ввиде:
СпойлерПоказать
xxxx@list.ru', 'password' => 'xxxxxx', 'id' => '', ); $result = file_get_contents($url, false, stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => http_build_query($params) ) ))); $json=json_decode($result,yes); echo

Not Found
The requested URL was not found on this server.

Apache/2.4.29 (Ubuntu) Server at 192.168.5.113 Port 80
А авторизация на само видео разве отсутствует ?
типа так rtsp://admin:@192.168.1.100:554/ch1_unicast_0 ?

Вот из форума ПО Линия
Здравствуйте!
При использовании версии «Линия» для Linux и наших регистраторов можно использовать простой запрос вида:
СпойлерПоказать
http://admin:1234@192.168.1.222:9786/ca ... 190106.mp4
в котором:

admin:1234 - авторизация на регистраторе;
192.168.1.222:9786 - адрес и порт регистратора;
cameras/1 - номер канала (нумерация начинается с нуля, т.е. при запросе первого канала указываем 0);
streaming/sub.mp4 - запрос потока, для первого потока - main.mp4, для второго - sub.mp4;
time=2019-10-06T10:05:15 - дата и время начало экспорта;
duration=00:10 - экспортируемое время (в данном примере 10 секунд);
audio=0 - экспорт без звука, audio=1 - со звуком;
download=1 - указывает на наличие заголовка "Content-Disposition";
filename=CAM00_20190106.mp4 - название сохраняемого файла;

На примере демо сервера, фрагмент архива с первой камеры можно получить так:

http://admin:@demo.devline.ru:1818/came ... 190920.mp4
Если что-то дополнительно требуется именно со стороны "Линии" - прошу описать подробнее.
Спасибо нам ПОМОЖЕТ..!
shefus
Сообщения: 84
Зарегистрирован: Вт мар 08, 2016 4:57 pm
Благодарил (а): 17 раз
Поблагодарили: 2 раза

Re: Видеонаблюдение

Сообщение shefus » Пн ноя 04, 2019 2:07 pm

tarasfrompir писал(а):
Пн ноя 04, 2019 1:11 pm

А авторизация на само видео разве отсутствует ?
типа так rtsp://admin:@192.168.1.100:554/ch1_unicast_0 ?

Все верно - это авторизация при подключении их rtsp сервиса к моей камере. Так и сделано. Далее они ретранслируют поток для вставки на сайт (HTML5). И тут 2 варианта (как я и писал):
1. Вставка публичной ссылки - но при этом любой набрав в браузере https://rtsp.me/embed/xxxxxx/ увидит мой поток.
2. Закрыть авторизацией - пример кода (см. выше) - вот по нему и вопрос: как реализовать?
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Видеонаблюдение

Сообщение tarasfrompir » Пн ноя 04, 2019 2:14 pm

shefus писал(а):
Пн ноя 04, 2019 2:07 pm
tarasfrompir писал(а):
Пн ноя 04, 2019 1:11 pm

А авторизация на само видео разве отсутствует ?
типа так rtsp://admin:@192.168.1.100:554/ch1_unicast_0 ?

Все верно - это авторизация при подключении их rtsp сервиса к моей камере. Так и сделано. Далее они ретранслируют поток для вставки на сайт (HTML5). И тут 2 варианта (как я и писал):
1. Вставка публичной ссылки - но при этом любой набрав в браузере https://rtsp.me/embed/xxxxxx/ увидит мой поток.
2. Закрыть авторизацией - пример кода (см. выше) - вот по нему и вопрос: как реализовать?
так подожди - это почему его должно быть видно ? по такому адресу - ? это я так могу любую камеру увидеть ?
Так не должно быть - это по идее Ваши настройки до такого его довели ...
Утверждать не буду - но по идее так...
Спасибо нам ПОМОЖЕТ..!
shefus
Сообщения: 84
Зарегистрирован: Вт мар 08, 2016 4:57 pm
Благодарил (а): 17 раз
Поблагодарили: 2 раза

Re: Видеонаблюдение

Сообщение shefus » Пн ноя 04, 2019 2:31 pm

так подожди - это почему его должно быть видно ? по такому адресу - ? это я так могу любую камеру увидеть ?
Так не должно быть - это по идее Ваши настройки до такого его довели ...
Утверждать не буду - но по идее так...
Принцип такой - сервис rtsp получает доступ к моей камере по rtsp с паролем, далее он этот поток ретранслирует во вне множеству пользователям уже либо открыто, либо с авторизацией (настраивается в личном кабинете). С открытым доступом поместить на сцену MDM проблем нет (см. выше). А для закрытого, чтобы вывести на сцену нужно запросить авторизацию POST запросом, пример на PHP я дал выше. Но ввиду слабых познаний, я не знаю как его воткнуть на сцену.
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Видеонаблюдение

Сообщение tarasfrompir » Пн ноя 04, 2019 2:39 pm

shefus писал(а):
Пн ноя 04, 2019 2:31 pm
так подожди - это почему его должно быть видно ? по такому адресу - ? это я так могу любую камеру увидеть ?
Так не должно быть - это по идее Ваши настройки до такого его довели ...
Утверждать не буду - но по идее так...
Принцип такой - сервис rtsp получает доступ к моей камере по rtsp с паролем, далее он этот поток ретранслирует во вне множеству пользователям уже либо открыто, либо с авторизацией (настраивается в личном кабинете). С открытым доступом поместить на сцену MDM проблем нет (см. выше). А для закрытого, чтобы вывести на сцену нужно запросить авторизацию POST запросом, пример на PHP я дал выше. Но ввиду слабых познаний, я не знаю как его воткнуть на сцену.
да я понял что и как - тут вопрос в том как авторизацию тебе подсунуть? Правильно ? Но я же говорю что авторизация не работает перед адресом потока ?
Спасибо нам ПОМОЖЕТ..!
shefus
Сообщения: 84
Зарегистрирован: Вт мар 08, 2016 4:57 pm
Благодарил (а): 17 раз
Поблагодарили: 2 раза

Re: Видеонаблюдение

Сообщение shefus » Пн ноя 04, 2019 2:46 pm

tarasfrompir писал(а):
Пн ноя 04, 2019 2:39 pm

да я понял что и как - тут вопрос в том как авторизацию тебе подсунуть? Правильно ? Но я же говорю что авторизация не работает перед адресом потока ?
Неа.. только через их API POST запросом.
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин
Благодарил (а): 223 раза
Поблагодарили: 815 раз

Re: Видеонаблюдение

Сообщение tarasfrompir » Пн ноя 04, 2019 4:20 pm

Ну тогда сделай пхп страницу - там же и авторизация и там же вывод картинки - как примерно тут описано -https://webformyself.com/esli-nuzhen-sa ... pridetsya/
И указывай адрес внутренней пхп страницы
За это сообщение автора tarasfrompir поблагодарил:
shefus (Вт ноя 05, 2019 10:20 am)
Рейтинг: 1.16%
Спасибо нам ПОМОЖЕТ..!
Ответить