Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. json nach iobroker übertragen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    json nach iobroker übertragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active last edited by arteck

      ich hätte hier mal eine kleine herausforderung
      zur verfügung steht nur die bash

      {"health":{"status":"HEALTH_WARN","checks":{"OSD_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 osds down","count":1},"muted":false},"OSD_HOST_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 host (1 osds) down","count":1},"muted":false},"PG_DEGRADED":{"severity":"HEALTH_WARN","summary":{"message":"Degraded data redundancy: 6511/32556 objects degraded (19.999%), 19 pgs degraded","count":19},"muted":false}},"mutes":[]}}
      

      dieser string soll rüber per simpleAPI in eine Variable reingeschrieben
      sagen wir mal hier

      0_userdata.0.System.proxmox.cephJSON
      

      probiert es aber aus bevor ihr meint die Lösung zur haben..

      hier das Script was nicht geht

      #!/bin/bash
      
      iobroker_url="http://192.168.3.137:8888/set/0_userdata.0.System.proxmox.cephXML?value="
      
      text='{"health":{"status":"HEALTH_WARN","checks":{"OSD_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 osds down","count":1},"muted":false},"OSD_HOST_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 host (1 osds) down","count":1},"muted":false},"PG_DEGRADED":{"severity":"HEALTH_WARN","summary":{"message":"Degraded data redundancy: 6511/32556 objects degraded (19.999%), 19 pgs degraded","count":19},"muted":false}},"mutes":[]}}'
      
      url_ruber=$iobroker_url$text
      curl -X POST $url_ruber
      #curl -s $url_ruber > /dev/null 2>&1
      
      exit 0
      
      haus-automatisierung 1 Reply Last reply Reply Quote 0
      • haus-automatisierung
        haus-automatisierung Developer Most Active @arteck last edited by haus-automatisierung

        @arteck

        Mit url encoding läuft's

        http://172.16.0.51:8087/set/0_userdata.0.test?value=%7B%22health%22%3A%7B%22status%22%3A%22HEALTH_WARN%22%2C%22checks%22%3A%7B%22OSD_DOWN%22%3A%7B%22severity%22%3A%22HEALTH_WARN%22%2C%22summary%22%3A%7B%22message%22%3A%221%20osds%20down%22%2C%22count%22%3A1%7D%2C%22muted%22%3Afalse%7D%2C%22OSD_HOST_DOWN%22%3A%7B%22severity%22%3A%22HEALTH_WARN%22%2C%22summary%22%3A%7B%22message%22%3A%221%20host%20%281%20osds%29%20down%22%2C%22count%22%3A1%7D%2C%22muted%22%3Afalse%7D%2C%22PG_DEGRADED%22%3A%7B%22severity%22%3A%22HEALTH_WARN%22%2C%22summary%22%3A%7B%22message%22%3A%22Degraded%20data%20redundancy%3A%206511%2F32556%20objects%20degraded%20%2819.999%25%29%2C%2019%20pgs%20degraded%22%2C%22count%22%3A19%7D%2C%22muted%22%3Afalse%7D%7D%2C%22mutes%22%3A%5B%5D%7D%7D
        
        arteck 1 Reply Last reply Reply Quote 0
        • arteck
          arteck Developer Most Active @haus-automatisierung last edited by arteck

          @haus-automatisierung

          nicht einfach aufrufen.... aus der bash raus.. ich brauch es im script

          haus-automatisierung 1 Reply Last reply Reply Quote 0
          • haus-automatisierung
            haus-automatisierung Developer Most Active @arteck last edited by haus-automatisierung

            #!/bin/bash
            
            text='{"health":{"status":"HEALTH_WARN","checks":{"OSD_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 osds down","count":1},"muted":false},"OSD_HOST_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 host (1 osds) down","count":1},"muted":false},"PG_DEGRADED":{"severity":"HEALTH_WARN","summary":{"message":"Degraded data redundancy: 6511/32556 objects degraded (19.999%), 19 pgs degraded","count":19},"muted":false}},"mutes":[]}}'
              
            curl --get --data-urlencode "value=$text" http://172.16.0.51:8087/set/0_userdata.0.test
              
            exit 0
            

            EDIT: Scheinbar hat die Simple-API aber einen Bug. Zumindest werden nicht alle Zeichen korrekt dekodiert. %3A sollte eigentlich wieder ein : werden...

            Per rest-api (als Web-Plugin) läuft es jedenfalls so:

            curl --get --data-urlencode "value=$text" http://172.16.0.51:8082/rest-api/v1/state/0_userdata.0.test
            
            arteck 1 Reply Last reply Reply Quote 0
            • arteck
              arteck Developer Most Active @haus-automatisierung last edited by

              @haus-automatisierung auf die idee bin ich nicht gekomen.. guck isch mal

              haus-automatisierung 1 Reply Last reply Reply Quote 0
              • haus-automatisierung
                haus-automatisierung Developer Most Active @arteck last edited by

                @arteck Ah, wenn man es als POST-Request mit setValueFromBody macht klappts auch per simple-api

                #!/bin/bash
                
                text='{"health":{"status":"HEALTH_WARN","checks":{"OSD_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 osds down","count":1},"muted":false},"OSD_HOST_DOWN":{"severity":"HEALTH_WARN","summary":{"message":"1 host (1 osds) down","count":1},"muted":false},"PG_DEGRADED":{"severity":"HEALTH_WARN","summary":{"message":"Degraded data redundancy: 6511/32556 objects degraded (19.999%), 19 pgs degraded","count":19},"muted":false}},"mutes":[]}}'
                  
                curl -X POST -d "$text" http://172.16.0.51:8087/setValueFromBody/0_userdata.0.test
                  
                exit 0
                
                
                arteck 1 Reply Last reply Reply Quote 1
                • arteck
                  arteck Developer Most Active @haus-automatisierung last edited by arteck

                  @haus-automatisierung sagte in json nach iobroker übertragen:

                  http://172.16.0.51:8087

                  die doku ist falsch

                  http://172.16.0.51:8087/help
                  
                  "setValueFromBody":    http://172.16.0.51:8087/setValueFromBody?stateID1
                  
                  haus-automatisierung 1 Reply Last reply Reply Quote 0
                  • haus-automatisierung
                    haus-automatisierung Developer Most Active @arteck last edited by

                    @arteck Das kann sein, der Adapter wird ja auch nicht mehr so richtig gepflegt soweit ich weiß. Ich nutze zumindest nur noch rest-api.

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    476
                    Online

                    31.7k
                    Users

                    79.8k
                    Topics

                    1.3m
                    Posts

                    2
                    8
                    364
                    Loading More Posts
                    • Oldest to Newest
                    • Newest to Oldest
                    • Most Votes
                    Reply
                    • Reply as topic
                    Log in to reply
                    Community
                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                    The ioBroker Community 2014-2023
                    logo