Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Русский
  3. ioBroker
  4. Скрипты
  5. ioBroker скрипты
  6. Отсутствие deviceId в obj события

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    213

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

Отсутствие deviceId в obj события

Geplant Angeheftet Gesperrt Verschoben ioBroker скрипты
2 Beiträge 2 Kommentatoren 1.7k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • G Offline
    G Offline
    glaz123
    schrieb am zuletzt editiert von
    #1

    Добрый день,

    Разрабатывают взаимодействие с телеграмом, подписался на событие, оно приходит, только вот объект я получаю в котором нет deviceId - и соответственно не могу вытащить атрибуты девайса чтобы вставить его в сообщение.

    Код примерно вот такой (Я уже попробовал по разному вытаскивать значения deviceId, не помогает - возвращает undefined).

    При этом channelId приходит (но json его не видно).

    on({id: /^sonoff\.0\..*\.alive$/, change: 'ne'}, function (obj) {
      objRoom = getObject(obj.id,'rooms');
      if(obj.state.val===true) {
          sendTo('telegram.0', 'Device '+getObject(obj.channelId).common.name+' located in '+objRoom.enumNames+' is connected '+JSON.stringify(obj)+JSON.stringify(objRoom));
      } else {
          sendTo('telegram.0', 'Device '+getObject(obj.channelId).common.name+' located in '+objRoom.enumNames+' is disconnected'+JSON.stringify(obj)+JSON.stringify(objRoom));
      }
     }
    );
    

    Соответсвенно в obj лежит вот такое (нет deviceId)

    {"id":"sonoff.0.DVES_06FDF7.alive",
              "newState":{"val":true,"ts":1526974517438,"ack":true,"lc":1526974517438,"from":"system.adapter.sonoff.0"},
              "oldState":{"val":false,"ts":1526974506646,"ack":true,"lc":1526974295730,"from":"system.adapter.sonoff.0"},
              "state":{"val":true,"ts":1526974517438,"ack":true,"lc":1526974517438,"from":"system.adapter.sonoff.0"}}
    

    В objRoom вот такое

    {"_id":"sonoff.0.DVES_06FDF7.alive",
               "common":{"type":"boolean","role":"indicator.connected","read":true,"write":false,"name":"DVES_06FDF7 alive"},
               "type":"state",
               "from":"system.adapter.sonoff.0",
               "ts":1523040682783,
               "acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"enumIds":[],"enumNames":[]}
    

    Это глюк кого? Адаптера sonoff или системы? Или я что-то не правильно понимаю?

    1 Antwort Letzte Antwort
    0
    • I Offline
      I Offline
      instalator
      schrieb am zuletzt editiert von
      #2

      @glaz123:

      Добрый день,

      Разрабатывают взаимодействие с телеграмом, подписался на событие, оно приходит, только вот объект я получаю в котором нет deviceId - и соответственно не могу вытащить атрибуты девайса чтобы вставить его в сообщение.

      Код примерно вот такой (Я уже попробовал по разному вытаскивать значения deviceId, не помогает - возвращает undefined).

      При этом channelId приходит (но json его не видно).

      on({id: /^sonoff\.0\..*\.alive$/, change: 'ne'}, function (obj) {
        objRoom = getObject(obj.id,'rooms');
        if(obj.state.val===true) {
            sendTo('telegram.0', 'Device '+getObject(obj.channelId).common.name+' located in '+objRoom.enumNames+' is connected '+JSON.stringify(obj)+JSON.stringify(objRoom));
        } else {
            sendTo('telegram.0', 'Device '+getObject(obj.channelId).common.name+' located in '+objRoom.enumNames+' is disconnected'+JSON.stringify(obj)+JSON.stringify(objRoom));
        }
       }
      );
      

      Соответсвенно в obj лежит вот такое (нет deviceId)

      {"id":"sonoff.0.DVES_06FDF7.alive",
                "newState":{"val":true,"ts":1526974517438,"ack":true,"lc":1526974517438,"from":"system.adapter.sonoff.0"},
                "oldState":{"val":false,"ts":1526974506646,"ack":true,"lc":1526974295730,"from":"system.adapter.sonoff.0"},
                "state":{"val":true,"ts":1526974517438,"ack":true,"lc":1526974517438,"from":"system.adapter.sonoff.0"}}
      

      В objRoom вот такое

      {"_id":"sonoff.0.DVES_06FDF7.alive",
                 "common":{"type":"boolean","role":"indicator.connected","read":true,"write":false,"name":"DVES_06FDF7 alive"},
                 "type":"state",
                 "from":"system.adapter.sonoff.0",
                 "ts":1523040682783,
                 "acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"},"enumIds":[],"enumNames":[]}
      

      Это глюк кого? Адаптера sonoff или системы? Или я что-то не правильно понимаю? `
      что такое deviceId?

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

      http://blog.instalator.ru/

      1 Antwort Letzte Antwort
      0
      Antworten
      • In einem neuen Thema antworten
      Anmelden zum Antworten
      • Älteste zuerst
      • Neuste zuerst
      • Meiste Stimmen


      Support us

      ioBroker
      Community Adapters
      Donate

      838

      Online

      32.5k

      Benutzer

      81.8k

      Themen

      1.3m

      Beiträge
      Community
      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
      ioBroker Community 2014-2025
      logo
      • Anmelden

      • Du hast noch kein Konto? Registrieren

      • Anmelden oder registrieren, um zu suchen
      • Erster Beitrag
        Letzter Beitrag
      0
      • Home
      • Aktuell
      • Tags
      • Ungelesen 0
      • Kategorien
      • Unreplied
      • Beliebt
      • GitHub
      • Docu
      • Hilfe