Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Скрипты
  5. ioBroker скрипты
  6. Скрипт посылает видео mp4 с ip камер в Telegram

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    680

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    5.7k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Скрипт посылает видео mp4 с ip камер в Telegram

Scheduled Pinned Locked Moved ioBroker скрипты
1 Posts 1 Posters 2.6k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • A Offline
    A Offline
    Artem82
    wrote on last edited by
    #1

    Особенности:

    Камера(-ы) подключены к Synology, соответственно путь к файлам на диске динамический. Название папок и самих файлов привязано к дате создания этого видеофайла.

    Я одну из камер назвал door_rtsp. (поток rtsp от домофонной камеры двери)

    http://fastpic.ru/view/89/2017/0301/aa73d6599a313d565fdd19e9eed0d13b.png.html ~~Так как у меня сервер на Linux, то нужно командой:

    sudo mount -t cifs //192.168.1.110/surveillance/door_rtsp /mnt/ -o username=admin,password=pass,iocharset=utf8,file_mode=0777,dir_mode=0777

    смонтировать внешнюю сетевую папку где хранятся видеоизображения.

    В результате получим на сервере iobroker каталог равный каталогу на Synology:

    http://fastpic.ru/view/89/2017/0301/3b8c1f8c4de13d70e4f5f6c7d237338e.png.html ~~Применение:

    Нижеуказанный код у меня используется внутри другого скрипта (кода). Скрипт отслеживает нажатие кнопки вызова видеодомофона и отправляет изображение с камеры видеодомофона, верхней камеры (показывает общую обстановку) и через определенно время видео.

    Собственно сам код:

    `var folder; 
    var filepath;
    var last;  // номер последний файл в директории
    setTimeout(getdate, 100);  
    setTimeout(file, 200);
    setTimeout(sendMP4, 300);
    
    function getdate() {   
       var date = new Date();
       var time = date.getTime();                                                              // Дата вида  миллисекунд от 1970 года
       var year = date.getFullYear();      // Год
       var month = date.getMonth()+1;      // Месяц
       var dd = date.getDate();            // Дата-число
       var hh = date.getHours();           // Часы
    
       var AMPM = 'PM';
       if (hh < 12) AMPM = 'AM';
    
       if (month < 10) month = '0'+(date.getMonth()+1);                                      //Месяц добавляем 0 перед цифрой
       if (dd < 10) dd = '0'+date.getDate(); 
       if (hh < 10) hh = '0'+date.getHours();                                                //Часы добавляем 0 перед цифрой
       folder = year+month+dd+AMPM
       log('folder = '+folder );
    }  //end getdate
    
    function file() { 
    var fs = require('fs');
    var path = '/mnt/door_rtsp/'+folder;     //начальный путь, менять для другой камеры.
    
      if (path.length <= 2) {
         log("Usage: " + __filename + " path/to");
         process.exit(-1);
      }
    /*Здесь мы используем метод readdir класса fs, который получает путь и функцию-коллбек в качестве параметров. 
      Метод читает содержимое директории в память, а когда чтение завершено, то вызывает коллбек с двумя параметрами. */
     fs.readdir(path, function(err, items) {   
        log(items);  
        last = items.length;  // номер последнего файла директории
        log(last);
        for (var i=0; i<items.length; i++)/{/log(items[i]);/}/filepath="items[last-1];" log('filepath="+filepath);
     });
    } //end file
    
    function sendMP4() {
    mp4 = " mnt/door_rtsp/'+folder+'/'+filepath;/log(mp4);/sendto('telegram.0',/{text:/mp4,/user:/'artem',/disable_notification:/true});/end/sendmp4/<e=""></items.length;>`[/i]
    ```~~~~
    1 Reply Last reply
    0

    Hello! It looks like you're interested in this conversation, but you don't have an account yet.

    Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

    With your input, this post could be even better 💗

    Register Login
    Reply
    • Reply as topic
    Log in to reply
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes


    Support us

    ioBroker
    Community Adapters
    Donate

    325

    Online

    32.7k

    Users

    82.6k

    Topics

    1.3m

    Posts
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
    ioBroker Community 2014-2025
    logo
    • Login

    • Don't have an account? Register

    • Login or register to search.
    • First post
      Last post
    0
    • Home
    • Recent
    • Tags
    • Unread 0
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe