[Программа Win] Видеонаблюдение ContaCam

Модераторы: immortal, newz20

Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 60 раз
Поблагодарили: 532 раза
Контактная информация:

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение Vovix » Пн янв 22, 2018 1:42 pm

ahelper писал(а):Как из программы вызвать метод при движении?....
Поскольку я немного извращенец, то у меня сделано так:
1) Под Windows установлена программа wget - вот описание её похоже - https://techlist.top/wget-for-windows/
2) Создан скрипт startWget.vbs

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

Set objArgs = WScript.Arguments
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run "C:\_Programm\GnuWin32\bin\wget.exe http://192.168.1.100:80/objects/?object=" + objArgs(0) + "&op=m&m=statusChanged&status=1", 0, false
3) Ну и так в настройках ContaCam:
Скриншот 2018-01-22 14.20.43.png
Скриншот 2018-01-22 14.20.43.png (4.46 КБ) 6562 просмотра
возможно можно все упростить! но когда я хочу, что-бы что-то работало - я этого добиваюсь, любым путем!!!
За это сообщение автора Vovix поблагодарил:
ahelper (Пн янв 22, 2018 9:53 pm)
Рейтинг: 1.16%
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
ahelper
Сообщения: 106
Зарегистрирован: Ср фев 08, 2017 5:04 pm
Благодарил (а): 34 раза
Поблагодарили: 67 раз

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение ahelper » Ср янв 24, 2018 9:26 am

Получилось запустить внешнюю программу двумя способами, про галочки не забываем.
Первый:
СпойлерПоказать
motion.jpg
motion.jpg (11.36 КБ) 6517 просмотров
и сам файл выполнения motion.vbs, который запускает скрипт в МД cam_motion
СпойлерПоказать

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

Set WshShell = WScript.CreateObject("WScript.Shell")
obj = WshShell.Run("""C:\_majordomo\htdocs\obj.bat"" script:cam_motion", 0)
set WshShell = Nothing
Второй:
СпойлерПоказать
motion2.jpg
motion2.jpg (12.51 КБ) 6517 просмотров
самый простой, который сразу запускает скрипт в МД cam_motion.

Включение детектора движения по камере с МД:
Создаем файл Start_motion.bat, я его поместил в c:\_majordomo\htdocs\sounds\ с содержимым
СпойлерПоказать

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

@echo off
reg add "HKCU\Software\Contaware\ContaCam\Параметр из реестра камеры" /t REG_DWORD /v VideoProcessorMode /d 1 /f
Создаем скрипт для запуска в МД
СпойлерПоказать
//Для Windows
say('Включаю запись движения');
shell_exec("C:\_majordomo\htdocs\sounds\Start_motion.bat");
Отключение детектора движения по камере с МД:
Создаем файл Stop_motion.bat с содержимым
СпойлерПоказать

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

@echo off
reg add "HKCU\Software\Contaware\ContaCam\Параметр из реестра камеры" /t REG_DWORD /v VideoProcessorMode /d 0 /f
Создаем скрипт для запуска в МД
СпойлерПоказать
//Для Windows
say('Выключаю запись движения');
shell_exec("C:\_majordomo\htdocs\sounds\Stop_motion.bat");
Последний раз редактировалось ahelper Ср янв 24, 2018 12:47 pm, всего редактировалось 2 раза.
За это сообщение автора ahelper поблагодарили (всего 3):
antpino (Пт янв 26, 2018 6:29 am) • Samir77 (Вт июн 05, 2018 11:30 pm) • Jilber (Вс апр 14, 2024 3:55 pm)
Рейтинг: 3.49%
ahelper
Сообщения: 106
Зарегистрирован: Ср фев 08, 2017 5:04 pm
Благодарил (а): 34 раза
Поблагодарили: 67 раз

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение ahelper » Ср янв 24, 2018 9:34 am

Vovix. Еще два вопроса:
Заметил что запускается отдельный сервер Апач. Поделитесь пожалуйста своим решением как Contacam запускать с сервером МД (Апач).
Поделитесь реализацией без парольного входа в локальной сети.
Спасибо.
Аватара пользователя
hc2hunter
Сообщения: 507
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS
Благодарил (а): 228 раз
Поблагодарили: 348 раз

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение hc2hunter » Ср янв 24, 2018 11:33 am

Vovix писал(а):
hc2hunter писал(а):Vovix, а есть ли какие-то преимущества у сабжа перед платформой "Devline IP" ?
(если Вы, конечно, ее пробовали использовать?)

Там тоже можно:
- по одной или все камеры сразу запихнуть на сцену
- без проблем сразу вставить кадр или видео
- есть обвязки и под Adobe Flash и под HTML5
- без проблем цепляются камеры onvif, rtsp, или чудики типа IPwebCam
- очень удобный и наглядный видеоархив, который тоже можно встроить как iframe
- саму платформу можно пользовать и в браузере, и отдельным приложением под Windows
- есть приложение под Android

Спасибо!
Ну дак возьмитесь - установите, попробуйте и опишите результат! :-)
Или времени своего жалко? ;)
Я как только нашел для себя это (ContaCam) попробовал, и выложил сюда результаты!
а как оказалось кто-то в тихоря пользовался и скрывал это от общественности!!!
эм... так нет, вы меня видно не так поняли.
я как раз использую Devline IP. увидел ее описание тут на форуме и решил попробовать - понравилось.
подумал, если вы ее использовали раньше, то, возможно, дадите внятный ответ чем данная система хуже или лучше в сравнении с обсуждаемой ContaCam

а вставлять камеры из devline ip на страницы очень просто:

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

<video poster="http://<ip_сервера_devline>:9786/cameras/1/video?resolution=1280x720&keep_aspect_ratio=1&fps=10&authorization=Basic%20d2ViHnblYd=="  style="height:311px; margin:3px;">
     Браузер не поддерживает HTML5 video tag!
</video>
- сразу можно запросить нужный fps с сервера, указать аспект картинки, авторизацию в формате base64
Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 60 раз
Поблагодарили: 532 раза
Контактная информация:

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение Vovix » Ср янв 24, 2018 1:42 pm

hc2hunter писал(а): ...
эм... так нет, вы меня видно не так поняли.
я как раз использую Devline IP. увидел ее описание тут на форуме и решил попробовать - понравилось.
подумал, если вы ее использовали раньше, то, возможно, дадите внятный ответ чем данная система хуже или лучше в сравнении с обсуждаемой ContaCam

а вставлять камеры из devline ip на страницы очень просто:

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

<video poster="http://<ip_сервера_devline>:9786/cameras/1/video?resolution=1280x720&keep_aspect_ratio=1&fps=10&authorization=Basic%20d2ViHnblYd=="  style="height:311px; margin:3px;">
     Браузер не поддерживает HTML5 video tag!
</video>
 
- сразу можно запросить нужный fps с сервера, указать аспект картинки, авторизацию в формате base64
А, дак вы про Линию!!! она ведь платная!!!???
К тому же еще не установив, я вижу несколько моментов:
1) Платная концепция программы!
Вот информация с их сайта:
Внимание! Версия имеет ограничение!

Не рекомендуем устанавливать демоверсию на готовый объект: возможна полная потеря информации в связи с тем, что запись в архив не ведется.
Функция «Запись в архив» доступна только в коммерческой версии продукта.
Демоверсия предназначена для ознакомительных целей. Использование данного продукта в коммерческих целях недопустимо. 
а вот на форуме у них вопрос про демо и оплату: https://devline.ru/forum/topic/4720-%D0 ... %BC%D0%BE/
Лицензия для подключения одной IP камеры стоит 1 008 руб.
2) Размер установочного файла больше почти в 2 раза. Конечно лишние 15 Мегабайт это не критично, но все же после установки она будет гораздо больше.
3) Наличие лишних (для меня) функций.
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Аватара пользователя
hc2hunter
Сообщения: 507
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS
Благодарил (а): 228 раз
Поблагодарили: 348 раз

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение hc2hunter » Ср янв 24, 2018 4:42 pm

Ну, то есть не пробовали... :oops:
По поводу платности и бесплатности - интернет велик, в любом виде всё есть.

p.s. пойду попробую ContaCam дабы составить собственное впечатление...
было бы очень хорошо, если бы можно было встраивать объекты не iframeами, а готовыми тегами img или video, как это возможно в Devline
За это сообщение автора hc2hunter поблагодарил:
Kris123t (Чт май 10, 2018 1:22 pm)
Рейтинг: 1.16%
Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 60 раз
Поблагодарили: 532 раза
Контактная информация:

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение Vovix » Ср янв 24, 2018 7:38 pm

ahelper писал(а):Vovix. Еще два вопроса:
Заметил что запускается отдельный сервер Апач. Поделитесь пожалуйста своим решением как Contacam запускать с сервером МД (Апач).
Поделитесь реализацией без парольного входа в локальной сети.
Спасибо.
1) Запуск не менял, просто выставил порт отличный от 80, т.е. они друг-другу не мешают!

2)Для входа без пароля в локальной сети нужно редактировать файл authenticate.php в папке с установленным ContaCam
а именно (файл содержит мои пароли в закодированном хеш-функцией виде поэтому привожу только то, что нужно изменить:

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

Примерно после 7 строки(после присвоения хешей) с содержанием:
$invalid_login = 0;

вставить:
-----------------------------------------------------------------------------
if (strpos($_SERVER['REMOTE_ADDR'], "192.168.1") !== false) { 
            $_SESSION['username'] = "$username_hash"; 
            return; // Vovix добавлен if
} else {
------------------------------------------------------------------------------
(часть ip адреса вставьте свою)
и не забыть вставить закрывающую фигурную скобку
------------------------------------------------------------------------------
 } 
------------------------------------------------------------------------------
перед строкой:
if ($httpbasicauth == 1) {
 
должно выглядеть примерно так:
СпойлерПоказать

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

<?php
if (count(get_included_files()) == 1) die('Direct access not permitted');
$username_salt = '---------------------- здесь ваши значения их не меняйте --------------------';
$username_hash = '---------------------- здесь ваши значения их не меняйте --------------------';
$password_salt = '---------------------- здесь ваши значения их не меняйте --------------------';
$password_hash = '---------------------- здесь ваши значения их не меняйте --------------------';
$invalid_login = 0;

if (strpos($_SERVER['REMOTE_ADDR'], "192.168.1") !== false) { 
            $_SESSION['username'] = "$username_hash"; 
            return; // Vovix добавлен if
} else {

        if (isset($_POST['username']) && isset($_POST['password'])) {
            if (hash('sha256', $username_salt . $_POST['username']) == "$username_hash" &&
                hash('sha256', $password_salt . $_POST['password']) == "$password_hash") {
                $_SESSION['username'] = "$username_hash";
                return;
            } else {
                unset($_SESSION['username']);
                $invalid_login = 1;
                sleep(1);
            }
        }
        else if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) {
            if (hash('sha256', $username_salt . $_SERVER['PHP_AUTH_USER']) == "$username_hash" &&
                hash('sha256', $password_salt . $_SERVER['PHP_AUTH_PW']) == "$password_hash") {
                $_SESSION['username'] = "$username_hash";
                return;
            } else {
                unset($_SESSION['username']);
                $invalid_login = 1;
                sleep(1);
            }
        }
        else if (isset($_SESSION['username']) && $_SESSION['username'] == "$username_hash")
            return;
}
if ($httpbasicauth == 1) {
    header('WWW-Authenticate: Basic realm="ContaCam"');
    header('HTTP/1.0 401 Unauthorized');
    die('Not authorized');
}
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="author" content="Oliver Pfister" />
<title>Login</title>
<style type="text/css">
/*<![CDATA[*/
* {
    margin: 0;
    padding: 0;
}
body {
    font-family: Helvetica,Arial,sans-serif;
    font-size: 16px;
    background-color: #333333;
    color: #bbbbbb;
}
input[type='text'], input[type='password'], input[type='submit'] {
    font-size: 14px;
    font-style: normal;
    font-weight: bold;
    font-family: sans-serif,Arial,Helvetica;
    padding: 4px;
    margin: 2px 0;
    color: #111111;
    background-color: #ededed;
    border: 1px solid;
    border-color: #33ccff #039ccf #039ccf #33ccff;
}
input[type='text'], input[type='password'] {
    text-align: left;
}
input[type='submit'] {
    text-align: center;
}
/*]]>*/
</style>
</head>
<body>
<div style="text-align: center">
<form name="login" action="" method="post">
<?php if ($invalid_login): ?>
&#x1F464;<input style="border:1px solid #f00;" type="text" name="username" autocapitalize="none" autofocus /><br />
&#x1f512;<input style="border:1px solid #f00;" type="password" name="password" /><br />
<input type="submit" name="submit" value="Login" />
<?php else: ?>
&#x1F464;<input type="text" name="username" autocapitalize="none" /><br />
&#x1f512;<input type="password" name="password" /><br />
<input type="submit" name="submit" value="Login" autofocus />
<?php endif; ?>
</form>
</div>
</body>
</html>
<?php
exit;
Последний раз редактировалось Vovix Ср янв 24, 2018 7:52 pm, всего редактировалось 1 раз.
За это сообщение автора Vovix поблагодарили (всего 2):
ahelper (Чт янв 25, 2018 2:59 pm) • Kris123t (Чт май 10, 2018 1:23 pm)
Рейтинг: 2.33%
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Аватара пользователя
Vovix
Сообщения: 1155
Зарегистрирован: Пн янв 27, 2014 1:43 am
Откуда: г.Ижевск
Благодарил (а): 60 раз
Поблагодарили: 532 раза
Контактная информация:

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение Vovix » Ср янв 24, 2018 7:50 pm

hc2hunter писал(а):Ну, то есть не пробовали... :oops:
По поводу платности и бесплатности - интернет велик, в любом виде всё есть.

p.s. пойду попробую ContaCam дабы составить собственное впечатление...
было бы очень хорошо, если бы можно было встраивать объекты не iframeами, а готовыми тегами img или video, как это возможно в Devline
объекты можно вставлять и не фреймами, например через JavaScript (как в webcamXP)
к примеру в моём случае: http://<мой локальный ip>:<мой порт>/<имя камеры>/poll.php выдает jpeg который меняется при каждом обращении
Простой Javascript код вы сможете написать сами или вот аналог из webcamXP, только не помню рабочий это вариант или с ошибкой:
(вот это безобразие замените своими данными - <мой локальный ip>:<мой порт>/<имя камеры>)
СпойлерПоказать

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

errorimgcam3= 0;
now=new Date();
DoItcam3();

document.images.webcam3.onload = DoItcam3();
document.images.webcam3.onerror = ErrorImagecam3();

function LoadImagecam3()
{
     document.images.webcam3.src = "http://<мой локальный ip>:<мой порт>/<имя камеры>/poll.php?dummy="++now.getTime();
     document.images.webcam3.onload = DoItcam3();
}

function ErrorImagecam3()
{
      errorimgcam3++;
      if (errorimgcam3>5) {
            console.log("Пять ошибок подряд -> cam3");
            document.images.webcam3.onload = "";
            document.images.webcam3.onerror = "";
            document.images.webcam3.src = "/img/logo_small.png";
       } else {
            document.images.webcam3.src = "http://<мой локальный ip>:<мой порт>/<имя камеры>/poll.php?dummy="+now.getTime();
       }
}

function DoItcam3()
{
        errorimgcam3=0;
        window.setTimeout("LoadImagecam3();", 100);
}
За это сообщение автора Vovix поблагодарил:
hc2hunter (Ср янв 24, 2018 9:47 pm)
Рейтинг: 1.16%
Мой -CONNECT-
Windows 7(PHP 7.2) + Raspberry Pi(освещение на 1-Wire) + MP751(управление) + ESP8266(сенсоры) + LAN(сенсоры)
-=: Если вам помогло моё сообщение, нажмите кнопку "Поблагодарить за сообщение автора: Vovix" (кнопка Спасибо) справа! :=-
Аватара пользователя
hc2hunter
Сообщения: 507
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS
Благодарил (а): 228 раз
Поблагодарили: 348 раз

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение hc2hunter » Ср янв 24, 2018 8:54 pm

Vovix писал(а): объекты можно вставлять и не фреймами, например через JavaScript (как в webcamXP)
к примеру в моём случае: http://<мой локальный ip>:<мой порт>/<имя камеры>/poll.php выдает jpeg который меняется при каждом обращении
Простой Javascript код вы сможете написать сами или вот аналог из webcamXP, только не помню рабочий это вариант или с ошибкой:
(вот это безобразие замените своими данными - <мой локальный ip>:<мой порт>/<имя камеры>)
да, я уже посмотрел страницу, которую генерирует ContaCam.
конечно, ожидал какого-то более современного решения чем вешать на setInterval'ы с приписыванием в конец ссылок кучки таймштампов...

пока, что особенно понравилось, - возможность очень гибко настроить детектор движения! тут тебе и расписание, и скриншоты, и ftp, и запуск приложений по событиям... полный фарш. с другой стороны все печально омрачается невозможностью удобно просмотреть этот архив (просто груда наваленных отрезков). но в чем-то одновременно и удобство, что сразу все нарезается на готовые файлы.
также, при создании камеры, программа просто насыпает в её папку кучу .php, одинаковых с другими камерами, что в 2018 году выглядит как очень наколенная поделка и просто "мусорение"... :/
жаль, что не поддерживается OnVif и PTZ.
Буду смотреть дальше, как с максимальной пользой прикрутить к себе... Пока, по интерфейсу и интеграции с MjDM увидел, что Devline наголову выше... :oops: но тут тоже много интересных возможностей!

Пока не проверял - камера если вдруг отвалится (выключится), после перезапуска - сама прицепится программой и продолжит работать? Или потребуется какое-то ручное вмешательство?

Спасибо Вам за консультации!
Последний раз редактировалось hc2hunter Чт янв 25, 2018 10:20 am, всего редактировалось 1 раз.
Аватара пользователя
hc2hunter
Сообщения: 507
Зарегистрирован: Сб дек 02, 2017 10:45 am
Откуда: RUS
Благодарил (а): 228 раз
Поблагодарили: 348 раз

Re: И снова Видеонаблюдение, встречайте - ContaCam -

Сообщение hc2hunter » Чт янв 25, 2018 10:15 am

Прикрутил к себе...
КартинкаПоказать
ccam.jpg
ccam.jpg (299.71 КБ) 6412 просмотров
Правда, наткнулся на факт, что нельзя завести в системе больше 1 пользователя. Ну и система при внешнем обращении натыкается на авторизацию. Пришлось как и вы слегка переработать authenticate.php , правда я добавил не локальную сеть, а возможность GET'ом передавать логин-пароль...
Пока выглядит это очень криво, т.к. фактически авторизация светится в моем java-скрипте в виде .../?dummy=1512345677&user=xxxxxx&password=yyyyyyy :oops:
Доступ до MjDM, правда, закрыт извне, так что "жопа" слегка прикрыта, но все-равно придется мне подумать, как это попроще обойти... а то писать сложные обвязки через ajax-post и т.п. лениво и слишком громоздко...
Ответить