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. English
  3. ioBroker general
  4. Simple API Use SOLVED

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.2k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Simple API Use SOLVED

Scheduled Pinned Locked Moved ioBroker general
apisimple api
22 Posts 5 Posters 4.9k Views 4 Watching
  • 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.
  • UncleSamU UncleSam

    @ap2017 So, did you copy the state ID the way I asked you to?

    Because it seems to me that the name should be javascript.0.variables.PI-detection

    A Offline
    A Offline
    ap2017
    wrote on last edited by ap2017
    #11

    @UncleSam Thank you, with subfolder "variables" added I am getting browser response
    {"id":"javascript.0.variables.PI-detection","value":true,"val":true}

    Now I need to figure out how MotionEye notification work, since I PI-detection does not change in response to motion

    1 Reply Last reply
    0
    • UncleSamU UncleSam

      @ap2017 So, did you copy the state ID the way I asked you to?

      Because it seems to me that the name should be javascript.0.variables.PI-detection

      A Offline
      A Offline
      ap2017
      wrote on last edited by
      #12

      @UncleSam Everything works now. I did not realized that I have to reset the web hook variable after motion is detected.

      T 1 Reply Last reply
      1
      • A ap2017

        @UncleSam Everything works now. I did not realized that I have to reset the web hook variable after motion is detected.

        T Offline
        T Offline
        tehMilcho
        wrote on last edited by
        #13

        Hey there,

        i got the same Error but little different problem. I have copyed the Object-Path with the little button.

        so i build this URL:
        http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=false&prettyPrint

        The Url works fine in any browser but when i try to use it in my code i get:

        "error: no value found for "0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1". Use /set/id?value=1 or /set/id?value=1&wait=1000"

        I will use it in a Lua Script that runs on the "Fibaro Home center lite". When i rebuild the URL to "toggle" it works fine.. i have no clue whats the issue .. because it makes no sense for me.

        Lua Code:

        local value = fibaro.getValue(52, "value")
        local url
        
        -- Deside if value should be true or false
        if (fibaro.getValue(52, "value") == true) then
        url = 'http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=true&prettyPrint'
        elseif (fibaro.getValue(52, "value") == false) then
        url = 'SERVER/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=false&prettyPrint'
        else 
        print ("No Match")
        end
        
        print(url)
        
        local selfhttp = net.HTTPClient()
        
        local headers = {
                ["Accept"] = "application/json",
                ["Content-Type"] = 'application/json',
                ["Cache-Control"] = "no-cache"
            }
        
        selfhttp:request(url, {
          options={
            method = 'GET',
            headers = headers,
            timeout = 5000
          },
         success = function(response) 
                    print(response.status)
                    print(response.data)
            end,
            error = function(message)
                    print("error:", message)
            end
        })
         
        

        anyone knows something? i think i had the same issue by try to use something like this in Android App - Tasker, but then give out and used toggle.

        1 Reply Last reply
        0
        • M Offline
          M Offline
          MCU
          wrote on last edited by
          #14

          @tehmilcho sagte in Simple API Use SOLVED:

          http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=true&prettyPrint

          Try to encode the URL

          let encodedUrl = encodeURIComponent(url);
          

          NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
          Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

          T 1 Reply Last reply
          0
          • M MCU

            @tehmilcho sagte in Simple API Use SOLVED:

            http://SERVER:8087/set/0_userdata.0.VirtualDevices.hc3lite.FlurPIR-1?value=true&prettyPrint

            Try to encode the URL

            let encodedUrl = encodeURIComponent(url);
            
            T Offline
            T Offline
            tehMilcho
            wrote on last edited by
            #15

            @mcu said in Simple API Use SOLVED:

            let encodedUrl = encodeURIComponent(url);

            the Lua Script in Fibaro seems not happy about it:

            [24.11.2023] [22:43:48] [ERROR] [SCENE29]: (load):15: syntax error near 'encodedUrl

            M 1 Reply Last reply
            0
            • T tehMilcho

              @mcu said in Simple API Use SOLVED:

              let encodedUrl = encodeURIComponent(url);

              the Lua Script in Fibaro seems not happy about it:

              [24.11.2023] [22:43:48] [ERROR] [SCENE29]: (load):15: syntax error near 'encodedUrl

              M Offline
              M Offline
              MCU
              wrote on last edited by
              #16

              @tehmilcho In LUA seems to be

              local encodedUrl = url.escape(url)
              

              NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
              Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

              T 1 Reply Last reply
              0
              • M MCU

                @tehmilcho In LUA seems to be

                local encodedUrl = url.escape(url)
                
                T Offline
                T Offline
                tehMilcho
                wrote on last edited by
                #17

                @mcu said in Simple API Use SOLVED:

                local encodedUrl = url.escape(url)

                mhh seems like fibaro specail lua?

                [24.11.2023] [22:54:25] [ERROR] [SCENE29]: (load):23: attempt to call a nil value (field 'escape')

                M 1 Reply Last reply
                0
                • T tehMilcho

                  @mcu said in Simple API Use SOLVED:

                  local encodedUrl = url.escape(url)

                  mhh seems like fibaro specail lua?

                  [24.11.2023] [22:54:25] [ERROR] [SCENE29]: (load):23: attempt to call a nil value (field 'escape')

                  M Offline
                  M Offline
                  MCU
                  wrote on last edited by
                  #18

                  @tehmilcho Do you use it so?

                  url = url.escape(url)
                  
                  selfhttp:request(url, {
                    options={
                      method = 'GET',
                      headers = headers,
                      timeout = 5000
                    },
                    success = function(response) 
                      print(response.status)
                      print(response.data)
                    end,
                    error = function(message)
                      print("error:", message)
                    end
                  })
                  

                  NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                  Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                  T 1 Reply Last reply
                  0
                  • M MCU

                    @tehmilcho Do you use it so?

                    url = url.escape(url)
                    
                    selfhttp:request(url, {
                      options={
                        method = 'GET',
                        headers = headers,
                        timeout = 5000
                      },
                      success = function(response) 
                        print(response.status)
                        print(response.data)
                      end,
                      error = function(message)
                        print("error:", message)
                      end
                    })
                    
                    T Offline
                    T Offline
                    tehMilcho
                    wrote on last edited by
                    #19

                    @mcu yep this leads to "[24.11.2023] [22:54:25] [ERROR] [SCENE29]: (load):23: attempt to call a nil value (field 'escape')"

                    M 1 Reply Last reply
                    0
                    • T tehMilcho

                      @mcu yep this leads to "[24.11.2023] [22:54:25] [ERROR] [SCENE29]: (load):23: attempt to call a nil value (field 'escape')"

                      M Offline
                      M Offline
                      MCU
                      wrote on last edited by
                      #20

                      @tehmilcho sagte in Simple API Use SOLVED:

                      :23: attempt to call a nil value (field 'escape')

                      Try this

                      url = url:gsub("([^A-Za-z0-9_])", function(c) return string.format("%%%02X", string.byte(c)) end)
                      

                      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
                      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

                      T 1 Reply Last reply
                      0
                      • M MCU

                        @tehmilcho sagte in Simple API Use SOLVED:

                        :23: attempt to call a nil value (field 'escape')

                        Try this

                        url = url:gsub("([^A-Za-z0-9_])", function(c) return string.format("%%%02X", string.byte(c)) end)
                        
                        T Offline
                        T Offline
                        tehMilcho
                        wrote on last edited by
                        #21

                        @mcu said in Simple API Use SOLVED:

                        url = url:gsub("([^A-Za-z0-9_])", function(c) return string.format("%%%02X", string.byte(c)) end)

                        then it seems to get stuck, no error but will not finsh and also the state in iobroker is not changed, when you Output the new string you will get:

                        http%3A%2F%2F192%2E168%2E178%2E37%3A8087%2Fset%2F0_userdata%2E0%2EVirtualDevices%2Ehc3lite%2EFlurPIR%2D1%3Fvalue%3Dtrue%26prettyPrint

                        T 1 Reply Last reply
                        0
                        • T tehMilcho

                          @mcu said in Simple API Use SOLVED:

                          url = url:gsub("([^A-Za-z0-9_])", function(c) return string.format("%%%02X", string.byte(c)) end)

                          then it seems to get stuck, no error but will not finsh and also the state in iobroker is not changed, when you Output the new string you will get:

                          http%3A%2F%2F192%2E168%2E178%2E37%3A8087%2Fset%2F0_userdata%2E0%2EVirtualDevices%2Ehc3lite%2EFlurPIR%2D1%3Fvalue%3Dtrue%26prettyPrint

                          T Offline
                          T Offline
                          tehMilcho
                          wrote on last edited by
                          #22

                          @MCU but this brings me on track, i now swap the "?" with "%3F" now it works .. damn @MCU you are f****** smart :) Thanks a lot. spend already hours on this :)

                          1 Reply Last reply
                          1
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          323

                          Online

                          32.5k

                          Users

                          81.7k

                          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