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. Вопросы по написанию скриптов

NEWS

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

  • 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

Вопросы по написанию скриптов

Scheduled Pinned Locked Moved ioBroker скрипты
358 Posts 29 Posters 116.1k 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.
  • H Offline
    H Offline
    Haus
    wrote on last edited by
    #217

    @andrey99986:

    Добавил ещё один драйвер javascript.

    Как создавать и переносить скрипты в новый драйвер js? Не могу найти переключение в админке.

    Хочу чтобы часть скриптов (потенциально опасных) работало под одним,

    Другая часть - отлаженных и отвечающих за безопасность дома под другим.

    Так как уже неоднократно ошибки в скриптах "ложили" драйвер со всеми другими скриптами.

    Надеюсь что при этом глобальные переменные останутся доступны в обоих драйверах. `
    В вкладке скрипты возле названия скрипта у тебя "0" поменяй ” на "1"

    js-controller: 1.5.7 / node.js: v8.15.1/ npm: 6.4.1

    admin: 3.6.0

    javascript: 4.1.10

    web: 2.4.1 vis: 1.1.10

    cloud: 2.6.2

    Server: DELL FX170 / linux: Debian 9.5 Stretch

    Adapter: MegaD-2561, Mega-ES…

    1 Reply Last reply
    0
    • A Offline
      A Offline
      andrey99986
      wrote on last edited by
      #218

      @Haus:

      @andrey99986:

      Добавил ещё один драйвер javascript.

      Как создавать и переносить скрипты в новый драйвер js? Не могу найти переключение в админке.

      Хочу чтобы часть скриптов (потенциально опасных) работало под одним,

      Другая часть - отлаженных и отвечающих за безопасность дома под другим.

      Так как уже неоднократно ошибки в скриптах "ложили" драйвер со всеми другими скриптами.

      Надеюсь что при этом глобальные переменные останутся доступны в обоих драйверах. В вкладке скрипты возле названия скрипта у тебя "0" поменяй ” на "1"
      Понял, спасибо.

      1 Reply Last reply
      0
      • H Offline
        H Offline
        Ho Hum
        wrote on last edited by
        #219

        Можно ли из скрипта изменить значение свойства "unit" существующего объекта?

        Пример - хочу выводить на экран свободное место на диске и, в зависимости от его значения прописывать в unit Gb, Mb, Kb.

        1 Reply Last reply
        0
        • I Offline
          I Offline
          instalator
          wrote on last edited by
          #220

          @Ho Hum:

          Можно ли из скрипта изменить значение свойства "unit" существующего объекта?

          Пример - хочу выводить на экран свободное место на диске и, в зависимости от его значения прописывать в unit Gb, Mb, Kb. `
          в vis выводи Gb, Mb, Kb. отдельным виджетом с формулой. Или создай скрипт и добавляй к цифрам нужное и сохраняй в другой объект

          Высокий уровень Децибел вреден для здоровья!

          http://blog.instalator.ru/

          1 Reply Last reply
          0
          • H Offline
            H Offline
            Ho Hum
            wrote on last edited by
            #221

            Да, про это я тоже думал, просто хотелось сделать покрасивее :)

            Спасибо.

            1 Reply Last reply
            0
            • A Offline
              A Offline
              andrey99986
              wrote on last edited by
              #222

              Для управления контентом в vis надо использовать readFile, writeFile.

              А что использовать для корректного удаления файла?

              Ситуация такая:

              удалил файл:

              fs.unlinkSync(small_img);
              

              в файловой системе файла нет. В проводнике редактора Vis-а тоже нет.

              В браузере (на котором ни разу к этому урлу не обращались, то есть дело не в кэше клиента) на клиенте файл-картинка загружается.

              Перезапускал драйвер vis, web - не помогает.

              1 Reply Last reply
              0
              • S Offline
                S Offline
                spectrekr
                wrote on last edited by
                #223

                Странности с indexof

                ! ````
                var arr_name = [], arr_work = [];
                ! sendTo('sql.0', 'query', "SELECT name FROM work.work GROUP BY name", function(res) {
                if (res.error) {
                console.error(res.error);
                }
                for (var a in res.result) {
                arr_name.push(res.result[a].name);
                }
                ! if(prev_command === name_cust && arr_work.indexOf(command) < 0){
                for (var a in arr_work) {
                log(arr_work[a]);
                }
                log(typeof(arr_work));
                log(arr_work.indexOf(command));

                
                возвращает -1, хо 1 элемент в массиве, хоть несколько. Правда элементы кириллический текст.
                1 Reply Last reply
                0
                • I Offline
                  I Offline
                  instalator
                  wrote on last edited by
                  #224

                  @spectrekr:

                  Странности с indexof

                  ! var arr_name = [], arr_work = [];
                  ! sendTo('sql.0', 'query', "SELECT name FROM work.work GROUP BY name", function(res) {
                  ! if (res.error) {
                  ! console.error(res.error);
                  ! }
                  ! for (var a in res.result) {
                  ! arr_name.push(res.result[a].name);
                  ! }
                  ! if(prev_command === name_cust && arr_work.indexOf(command) < 0){
                  ! for (var a in arr_work) {
                  ! log(arr_work[a]);
                  ! }
                  ! log(typeof(arr_work));
                  ! log(arr_work.indexOf(command));

                  возвращает -1, хо 1 элемент в массиве, хоть несколько. Правда элементы кириллический текст. `
                  Что пишет в лог?

                  ! ```
                  var arr_name = [], arr_work = []; ! sendTo('sql.0', 'query', "SELECT name FROM work.work GROUP BY name", function(res) { if (res.error) { console.error(res.error); } for (var a in res.result) { arr_name.push(res.result[a].name); } log('Масиив = ' + JSON.stringify(arr_name)); ! if(prev_command === name_cust && ~arr_work.indexOf(command)){ for (var b in arr_work) { log(arr_work[b]); } log(typeof(arr_work)); log(arr_work.indexOf(command)); } ! });[/b]

                  Высокий уровень Децибел вреден для здоровья!

                  http://blog.instalator.ru/

                  1 Reply Last reply
                  0
                  • A Offline
                    A Offline
                    andrey99986
                    wrote on last edited by
                    #225

                    Есть ли возможность подписаться на открытие(загрузку) web-страницы, созданной в vis?

                    Другими словами при открытии определённой страницы (/vis/index.html#mypage) надо запустить определённую функцию, созданную в "Скриптах" админки ( на стороне сервера).

                    1 Reply Last reply
                    0
                    • S Offline
                      S Offline
                      spectrekr
                      wrote on last edited by
                      #226

                      Код

                      ! ````
                      sendTo('sql.0', 'query','SELECT SenderNumber, ReceivingDateTime, TextDecoded FROM smsd.inbox WHERE ID = ' + id, function(res) {
                      if (res.error) {
                      log(res.error);
                      }
                      a = {"phone" : res.result[0].SenderNumber,
                      "time" : formatDate(new Date(res.result[0].ReceivingDateTime), 'DD.MM.YYYY hh:mm'),
                      "text" : res.result[0].TextDecoded
                      };
                      setState('sms.in.phone', res.result[0].SenderNumber);
                      setState('sms.in.time', formatDate(new Date(res.result[0].ReceivingDateTime), 'DD.MM.YYYY hh:mm'));
                      setState('sms.in.text', res.result[0].TextDecoded);
                      //setState('sms.in.json', a);
                      setState('sms.in.json', JSON.stringify(res));
                      setState('sms.in.id', id);
                      });

                      1 Reply Last reply
                      0
                      • A Offline
                        A Offline
                        AvaloncheG
                        wrote on last edited by
                        #227

                        Поделитесь кто то скриптом управления шаговым двигателем или ссылкой на форуме где почитать.

                        Планирую с MegaESP через драйвер ULN2003.

                        Спасибо.

                        1 Reply Last reply
                        0
                        • I Offline
                          I Offline
                          instalator
                          wrote on last edited by
                          #228

                          @AvaloncheG:

                          Поделитесь кто то скриптом управления шаговым двигателем или ссылкой на форуме где почитать.

                          Планирую с MegaESP через драйвер ULN2003.

                          Спасибо. `
                          А причем тут скрипт? Пиши прошивку для есп, а из иоб будешь задавать только угол поворота или скорость и шаги

                          Высокий уровень Децибел вреден для здоровья!

                          http://blog.instalator.ru/

                          1 Reply Last reply
                          0
                          • S Offline
                            S Offline
                            spectrekr
                            wrote on last edited by
                            #229

                            @AvaloncheG:

                            Поделитесь кто то скриптом управления шаговым двигателем или ссылкой на форуме где почитать.

                            Планирую с MegaESP через драйвер ULN2003.

                            Спасибо. `
                            Или посмотрите в сторону прошивки wifi-iot, там шаговый реализован, а с iob можно через mqtt связать.

                            1 Reply Last reply
                            0
                            • A Offline
                              A Offline
                              AvaloncheG
                              wrote on last edited by
                              #230

                              @instalator:

                              А причем тут скрипт? `
                              Через скрипт нереально?

                              Просто хотелось какой то унификации, и не выделять одно устройство только для двигателя.

                              Я конечно не программист, но как то не вижу принципиальной разницы ноги будет дергать прошивка, или внешняя прога.

                              Поправьте если ошибаюсь =)

                              1 Reply Last reply
                              0
                              • I Offline
                                I Offline
                                instalator
                                wrote on last edited by
                                #231

                                @AvaloncheG:

                                @instalator:

                                А причем тут скрипт? `
                                Через скрипт нереально?

                                Просто хотелось какой то унификации, и не выделять одно устройство только для двигателя.

                                Я конечно не программист, но как то не вижу принципиальной разницы ноги будет дергать прошивка, или внешняя прога.

                                Поправьте если ошибаюсь =) ` а задержки?

                                Высокий уровень Децибел вреден для здоровья!

                                http://blog.instalator.ru/

                                1 Reply Last reply
                                0
                                • A Offline
                                  A Offline
                                  AvaloncheG
                                  wrote on last edited by
                                  #232

                                  @instalator:

                                  а задержки? `
                                  1-2 секунды или больше?

                                  Мне же не робота строить, а клапаны, шторы открыть/закрыть.

                                  1 Reply Last reply
                                  0
                                  • I Offline
                                    I Offline
                                    instalator
                                    wrote on last edited by
                                    #233

                                    @AvaloncheG:

                                    @instalator:

                                    а задержки? `
                                    1-2 секунды или больше?

                                    Мне же не робота строить, а клапаны, шторы открыть/закрыть. `
                                    Ага, давай прикинем грубо:

                                    Угол одного шага возмем 1.8. Т.е. для одного полного оборота надо 360/1.8 = 200 импульсов.

                                    Если у тебя задержка между импульсами 1-2 сек т.е. 1-0,5 Гц. Дальше продолжать?

                                    Если хочется управлять ШД надо начать с теории.

                                    Высокий уровень Децибел вреден для здоровья!

                                    http://blog.instalator.ru/

                                    1 Reply Last reply
                                    0
                                    • D Offline
                                      D Offline
                                      DAndre
                                      wrote on last edited by
                                      #234

                                      В Log упало сообщение "Спасайся кто может' …......

                                      Нужно включить лампочку по этому сообщению. Как?

                                      Может переменная у loga есть на которую можно оформить подписку?

                                      <size size="50">Ubuntu 14.04 trusty DISTRIB_DESCRIPTION="Ubuntu 14.04.3 LTS, Android v4.4.2"

                                      Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-31-generic x86_64)</size>

                                      1 Reply Last reply
                                      0
                                      • I Offline
                                        I Offline
                                        instalator
                                        wrote on last edited by
                                        #235

                                        @DAndre:

                                        В Log упало сообщение "Спасайся кто может' …......

                                        Нужно включить лампочку по этому сообщению. Как?

                                        Может переменная у loga есть на которую можно оформить подписку? `
                                        надо просто сообщение это не в лог кидать а в переменную

                                        Высокий уровень Децибел вреден для здоровья!

                                        http://blog.instalator.ru/

                                        1 Reply Last reply
                                        0
                                        • D Offline
                                          D Offline
                                          DAndre
                                          wrote on last edited by
                                          #236

                                          Не ясно я объяснил 😢

                                          Пример

                                          mysensors.02016-12-09 19:23:06.993 info mysensors.0 Log :TSP:MSG:SEND 0-0-1-1 s=3,c=1,t=2,pt=0,l=1,sg=0,ft=0,st=fail:0

                                          если st=fail звоним в колокола.

                                          в случае st=ok все ок.

                                          Как то так. т.е нужно анализировать служебный Log.

                                          <size size="50">Ubuntu 14.04 trusty DISTRIB_DESCRIPTION="Ubuntu 14.04.3 LTS, Android v4.4.2"

                                          Ubuntu 16.04.1 LTS (GNU/Linux 4.4.0-31-generic x86_64)</size>

                                          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

                                          474

                                          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