Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Русский
    3. ioBroker
    4. ioBroker драйвера
    5. Node red

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Node red

    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      instalator last edited by

      Не получается у меня вытянуть sessionid. Что я делаю не так? Где вообще почитать можно про нод ред? На каком языке пишутся функции?

      ! [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":86,"y":100,"z":"865a081c.79a5f8","wires":[["6368c27e.9c973c"]]},{"id":"62c44e09.9d3bb","type":"debug","name":"","active":true,"console":"false","complete":"false","x":597,"y":160,"z":"865a081c.79a5f8","wires":[]},{"id":"6368c27e.9c973c","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/":[["f057ea4b.0fa818","3d13c92d.c2ec36"]]},{"id":"f057ea4b.0fa818","type":"function","name":"","func":"if (msg.payload.indexOf('")[1];\n\n return [msg];\n }\n","outputs":1,"valid":true,"x":415,"y":64,"z":"865a081c.79a5f8","wires":[["62c44e09.9d3bb"]]},{"id":"3d13c92d.c2ec36","type":"debug","name":"","active":true,"console":"false","complete":"false","x":429,"y":233,"z":"865a081c.79a5f8","wires":[]}]

      Вроде что то получилось, но не знаю как избавиться от мусора в конце:

      ! [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":86,"y":100,"z":"865a081c.79a5f8","wires":[["6368c27e.9c973c"]]},{"id":"62c44e09.9d3bb","type":"debug","name":"","active":true,"console":"false","complete":"false","x":597,"y":160,"z":"865a081c.79a5f8","wires":[]},{"id":"6368c27e.9c973c","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/":[["f057ea4b.0fa818","3d13c92d.c2ec36"]]},{"id":"f057ea4b.0fa818","type":"function","name":"","func":"if (~msg.payload.indexOf('")[0];\n// msg.payload.frequency = parseFloat(words[2].split(":")[1]);\n// msg.payload.time = words[1].split(">")[1];\n\n return [msg];\n }\n","outputs":1,"valid":true,"x":415,"y":64,"z":"865a081c.79a5f8","wires":[["62c44e09.9d3bb"]]},{"id":"3d13c92d.c2ec36","type":"debug","name":"","active":true,"console":"false","complete":"false","x":429,"y":233,"z":"865a081c.79a5f8","wires":[]}]

      Победил):

      ! [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":94,"y":100,"z":"865a081c.79a5f8","wires":[["6368c27e.9c973c"]]},{"id":"62c44e09.9d3bb","type":"debug","name":"SessionId","active":true,"console":"false","complete":"payload","x":636,"y":99,"z":"865a081c.79a5f8","wires":[]},{"id":"6368c27e.9c973c","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/":[["f057ea4b.0fa818"]]},{"id":"f057ea4b.0fa818","type":"function","name":"sessionid","func":"if (~msg.payload.indexOf('

      Теперь как передать sessionid в пост запросе вообще не понятно.

      1 Reply Last reply Reply Quote 0
      • I
        instalator last edited by

        Передается ли заголовок?

        ! [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":94,"y":100,"z":"865a081c.79a5f8","wires":[["6368c27e.9c973c"]]},{"id":"6368c27e.9c973c","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/":[["f057ea4b.0fa818"]]},{"id":"f057ea4b.0fa818","type":"function","name":"sessionid","func":"if (~msg.payload.indexOf('<link_text text="https://www.sistemagorod.ru/lk/auth?typ … pin=xxxx\n">https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx\n</link_text> msg.headers = {\n 'Origin': 'https://www.sistemagorod.ru',\n 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36',\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'Referer': 'https://www.sistemagorod.ru/lk/%27,%5Cn 'Cookie': 'JSESSIONID=' + msg.sessionid\n }\n\n var url= "https://www.sistemagorod.ru/lk/auth?typ ... n\nmsg.url = url;\n\nreturn msg;","outputs":1,"valid":true,"x":93,"y":179,"z":"865a081c.79a5f8","wires":[["ef96486b.1069b8"]]},{"id":"ef96486b.1069b8","type":"http request","name":"","method":"POST","ret":"txt","url":"","x":232,"y":183,"z":"865a081c.79a5f8","wires":[["62c44e09.9d3bb","5bc33d6.fa43cc4"]]}]

        авторизация вроде проходит <response><state>ok</state></response>

        но на следующую страницу не пускает.

        Продолжение…

        Выводит в дебаг непонятную кодировку

        ! [msg.payload] : string
        ! ��<ko�v������cr�i*?��)��6�����apԕę"u��� ���/�����Τi��o���/cy�$�i�d�="��!">%%���L�����s���s��=sf���ܸ���?&�\������>�t�p|��ϋ��ū��%�X"WuQ5dS�TQ)>��#\�4[�BaggG�Y4�^��O���T� ��T��Un�<���G�����qf��{��[/spoiler]</ko�v������cr�i*?��)��6�����apԕę"u���>

        1 Reply Last reply Reply Quote 0
        • I
          instalator last edited by

          Как распарсить заголовок ответа от сервера??? sessionid оказывается надо брать после авторизации из заголовка ответа.

          Получилось вытянть из заголовка Разные парраметры, но "set-cookie" никак не могу

          { "topic": "", "payload": "\r\n<response>\r\n <state>captcha-needed</state>\r\n</response>\r\n\r\n", "_msgid": "f9ba9259.06457", "sessionid": "6E14E8C7BF3AFDE8E63FBF0EA015BFB4", "headers": { "date": "Sun, 24 May 2015 13:07:42 GMT", "server": "Apache/2.4.7 (Ubuntu)", "content-length": "100", "set-cookie": [ "JSESSIONID=61D7BF78F3FBE2665E9FAF0AC2BA1F93; Path=/lk/; Secure; HttpOnly" ], "keep-alive": "timeout=5, max=100", "connection": "Keep-Alive", "content-type": "text/plain" }, "url": "https://www.sistemagorod.ru/lk/auth?typ … x&pin=xxxx", "statusCode": 200 }

          Bluefox выручай!!!

          1 Reply Last reply Reply Quote 0
          • Bluefox
            Bluefox last edited by

            @instalator:

            Передается ли заголовок?

            ! [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":94,"y":100,"z":"865a081c.79a5f8","wires":[["6368c27e.9c973c"]]},{"id":"6368c27e.9c973c","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/":[["f057ea4b.0fa818"]]},{"id":"f057ea4b.0fa818","type":"function","name":"sessionid","func":"if (~msg.payload.indexOf('<link_text text="https://www.sistemagorod.ru/lk/auth?typ … pin=xxxx\n">https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx\n</link_text> msg.headers = {\n 'Origin': 'https://www.sistemagorod.ru',\n 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36',\n 'Content-Type': 'application/x-www-form-urlencoded',\n 'Referer': 'https://www.sistemagorod.ru/lk/%27,%5Cn 'Cookie': 'JSESSIONID=' + msg.sessionid\n }\n\n var url= "https://www.sistemagorod.ru/lk/auth?typ ... n\nmsg.url = url;\n\nreturn msg;","outputs":1,"valid":true,"x":93,"y":179,"z":"865a081c.79a5f8","wires":[["ef96486b.1069b8"]]},{"id":"ef96486b.1069b8","type":"http request","name":"","method":"POST","ret":"txt","url":"","x":232,"y":183,"z":"865a081c.79a5f8","wires":[["62c44e09.9d3bb","5bc33d6.fa43cc4"]]}]

            авторизация вроде проходит <response><state>ok</state></response>

            но на следующую страницу не пускает.

            Продолжение…

            Выводит в дебаг непонятную кодировку

            ! [msg.payload] : string
            ! ��<ko�v������cr�i*?��)��6�����apԕę"u��� ���/�����Τi��o���/cy�$�i�d�="��!">%%���L�����s���s��=sf���ܸ���?&�\������>�t�p|��ϋ��ū��%�X"WuQ5dS�TQ)>��#\�4[�BaggG�Y4�^��O���T� ��T��Un�<���G�����qf��{��[/spoiler]</ko�v������cr�i*?��)��6�����apԕę"u���>
            Я не нашел в твоём flow вывода в дебаг.

            Может стринг не в utf-8? При конвертировании в стринг можно указать кодировку.

            'ascii' - for 7 bit ASCII data only. This encoding method is very fast, and will strip the high bit if set.
            'utf8' - Multibyte encoded Unicode characters. Many web pages and other document formats use UTF-8.
            'utf16le' - 2 or 4 bytes, little endian encoded Unicode characters. Surrogate pairs (U+10000 to U+10FFFF) are supported.
            'ucs2' - Alias of 'utf16le'.
            'base64' - Base64 string encoding.
            'binary' - 
            
            

            'hex' - Encode each byte as two hexadecimal characters. `

            1 Reply Last reply Reply Quote 0
            • I
              instalator last edited by

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

              Это ответ от сервера

              ! { "topic": "", "payload": "\r\n<response>\r\n <state>ok</state>\r\n</response>\r\n\r\n", "_msgid": "c27391e4.3d8c7", "sessionid": "6E14E8C7BF3AFDE8E63FBF0EA015BFB4", "headers": { "date": "Sun, 24 May 2015 17:59:17 GMT", "server": "Apache/2.4.7 (Ubuntu)", "content-length": "88", "set-cookie": [ "JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1; Path=/lk/; Secure; HttpOnly" ], "keep-alive": "timeout=5, max=100", "connection": "Keep-Alive", "content-type": "text/plain" }, "url": "https://www.sistemagorod.ru/lk/auth?typ … x&pin=xxxx", "statusCode": 200 }

              Нужно как то получить JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1 это валидный id

              1 Reply Last reply Reply Quote 0
              • I
                instalator last edited by

                [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":92,"y":81,"z":"865a081c.79a5f8","wires":[["b614a670.49eb58"]]},{"id":"b614a670.49eb58","type":"function","name":"Авторизация","func":"msg.sessionid = context.global.sessionid;\n msg.headers = {\n            'Host': 'www.sistemagorod.ru',\n            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0',\n            'Accept': '*/*',\n            'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',\n            'Accept-Encoding': 'gzip, deflate',\n            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',\n            'X-Requested-With': 'XMLHttpRequest',\n            'Referer': 'https://www.sistemagorod.ru/lk/',\n            'Cookie': 'JSESSIONID='+ msg.sessionid,\n            'Connection': 'keep-alive',\n            'Pragma': 'no-cache',\n            'Cache-Control': 'no-cache'\n        }\n        \n\n  var url= \"https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx\";\n\nmsg.url = url;\nreturn msg;","outputs":1,"valid":true,"x":132.55555725097656,"y":139.11111450195312,"z":"865a081c.79a5f8","wires":[["ef96486b.1069b8"]]},{"id":"ef96486b.1069b8","type":"http request","name":"","method":"POST","ret":"txt","url":"","x":309.7777900695801,"y":139.22221565246582,"z":"865a081c.79a5f8","wires":[["ad6096b4.529f68","62c44e09.9d3bb","a452cdcd.5bad3"]]},{"id":"ad6096b4.529f68","type":"debug","name":"","active":true,"console":"false","complete":"true","x":602.5555419921875,"y":209,"z":"865a081c.79a5f8","wires":[]}]
                
                1 Reply Last reply Reply Quote 0
                • I
                  instalator last edited by

                  Кто нибудь помоги мне 😢

                  1 Reply Last reply Reply Quote 0
                  • Bluefox
                    Bluefox last edited by

                    @instalator:

                    Кто нибудь помоги мне 😢 `
                    Я не могу помочь, т.к. мне не хватает информации.

                    Что это такое?

                    { "topic": "", "payload": "\r\n<response>\r\n <state>ok</state>\r\n</response>\r\n\r\n", "_msgid": "c27391e4.3d8c7", "sessionid": "6E14E8C7BF3AFDE8E63FBF0EA015BFB4", "headers": { "date": "Sun, 24 May 2015 17:59:17 GMT", "server": "Apache/2.4.7 (Ubuntu)", "content-length": "88", "set-cookie": [ "JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1; Path=/lk/; Secure; HttpOnly" ], "keep-alive": "timeout=5, max=100", "connection": "Keep-Alive", "content-type": "text/plain" }, "url": "https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx", "statusCode": 200 }
                    

                    Ответ от чего? Откуда все эти цифры?

                    Если это какой то объект, то JSESSIONID извлекается так:

                    [{"id":"185e8fcd.e7a17","type":"function","name":"Extract SessionID","func":"\nvar obj = { \"topic\": \"\", \"payload\": \"\\r\\n<response>\\r\\n <state>ok</state>\\r\\n</response>\\r\\n\\r\\n\", \"_msgid\": \"c27391e4.3d8c7\", \"sessionid\": \"6E14E8C7BF3AFDE8E63FBF0EA015BFB4\", \"headers\": { \"date\": \"Sun, 24 May 2015 17:59:17 GMT\", \"server\": \"Apache/2.4.7 (Ubuntu)\", \"content-length\": \"88\", \"set-cookie\": [ \"JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1; Path=/lk/; Secure; HttpOnly\" ], \"keep-alive\": \"timeout=5, max=100\", \"connection\": \"Keep-Alive\", \"content-type\": \"text/plain\" }, \"url\": \"https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx\", \"statusCode\": 200 };\n\nvar cookies = obj.headers[\"set-cookie\"][0];\nvar m = cookies.match(/JSESSIONID=([\\w\\d]*)/);\nif (m) {\n    msg.payload = m[1];\n    return msg;\n}\n\n\n","outputs":1,"x":372,"y":367,"z":"e90d20bf.16f2e","wires":[["35779b1d.ca8864"]]},{"id":"35779b1d.ca8864","type":"debug","name":"","active":true,"console":"false","complete":"false","x":546,"y":366,"z":"e90d20bf.16f2e","wires":[]},{"id":"89d64003.7629c","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":214,"y":368,"z":"e90d20bf.16f2e","wires":[["185e8fcd.e7a17"]]}]
                    
                    
                    1 Reply Last reply Reply Quote 0
                    • I
                      instalator last edited by

                      @Bluefox:

                      @instalator:

                      Кто нибудь помоги мне 😢 `
                      Я не могу помочь, т.к. мне не хватает информации.

                      Что это такое?

                      { "topic": "", "payload": "\r\n<response>\r\n <state>ok</state>\r\n</response>\r\n\r\n", "_msgid": "c27391e4.3d8c7", "sessionid": "6E14E8C7BF3AFDE8E63FBF0EA015BFB4", "headers": { "date": "Sun, 24 May 2015 17:59:17 GMT", "server": "Apache/2.4.7 (Ubuntu)", "content-length": "88", "set-cookie": [ "JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1; Path=/lk/; Secure; HttpOnly" ], "keep-alive": "timeout=5, max=100", "connection": "Keep-Alive", "content-type": "text/plain" }, "url": "https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx", "statusCode": 200 }
                      

                      Ответ от чего? Откуда все эти цифры? `
                      Это ответ от сервера, точнее то что вывелось в дэбаг (как объект я понимаю).
                      @Bluefox:

                      Если это какой то объект, то JSESSIONID извлекается так:

                      [{"id":"185e8fcd.e7a17","type":"function","name":"Extract SessionID","func":"\nvar obj = { \"topic\": \"\", \"payload\": \"\\r\\n<response>\\r\\n <state>ok</state>\\r\\n</response>\\r\\n\\r\\n\", \"_msgid\": \"c27391e4.3d8c7\", \"sessionid\": \"6E14E8C7BF3AFDE8E63FBF0EA015BFB4\", \"headers\": { \"date\": \"Sun, 24 May 2015 17:59:17 GMT\", \"server\": \"Apache/2.4.7 (Ubuntu)\", \"content-length\": \"88\", \"set-cookie\": [ \"JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1; Path=/lk/; Secure; HttpOnly\" ], \"keep-alive\": \"timeout=5, max=100\", \"connection\": \"Keep-Alive\", \"content-type\": \"text/plain\" }, \"url\": \"https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx\", \"statusCode\": 200 };\n\nvar cookies = obj.headers[\"set-cookie\"][0];\nvar m = cookies.match(/JSESSIONID=([\\w\\d]*)/);\nif (m) {\n    msg.payload = m[1];\n    return msg;\n}\n\n\n","outputs":1,"x":372,"y":367,"z":"e90d20bf.16f2e","wires":[["35779b1d.ca8864"]]},{"id":"35779b1d.ca8864","type":"debug","name":"","active":true,"console":"false","complete":"false","x":546,"y":366,"z":"e90d20bf.16f2e","wires":[]},{"id":"89d64003.7629c","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":214,"y":368,"z":"e90d20bf.16f2e","wires":[["185e8fcd.e7a17"]]}]
                      
                      ```` `  
                      

                      Вот что в дебаге:

                      ! 25.05.2015, 20:12:47[ad6096b4.529f68]
                      ! [msg] : object
                      ! { "topic": "", "payload": "\r\n<response>\r\n <state>ok</state>\r\n</response>\r\n\r\n", "_msgid": "ca7e0ab8.3581f8", "sessionid": "6E14E8C7BF3AFDE8E63FBF0EA015BFB4", "headers": { "date": "Mon, 25 May 2015 14:14:39 GMT", "server": "Apache/2.4.7 (Ubuntu)", "content-length": "88", "set-cookie": [ "JSESSIONID=284831E2FED469FC5B52751B6FC8960C; Path=/lk/; Secure; HttpOnly" ], "keep-alive": "timeout=5, max=100", "connection": "Keep-Alive", "content-type": "text/plain" }, "url": "https://www.sistemagorod.ru/lk/auth?typ … xx&pin=xxx", "statusCode": 200 }
                      ! 25.05.2015, 20:12:47[SessionId]
                      ! [msg.payload] : string
                      ! <response><state>ok</state></response>
                      Первое это ответ от сервера [msg] : object.

                      Второе [msg.payload] (Этот же ответ).

                      Как мне вставить объект в переменную var obj = { "topic": "", "payload": …...?

                      var obj = msg.payload ( но в msg.payload только : <response><state>ok</state></response> и там нет заголовков....

                      Если написать:

                      var obj = msg.object

                      то в дебаге вот что:

                      TypeError: Cannot read property 'headers' of undefined (line 4, col 18)

                      1 Reply Last reply Reply Quote 0
                      • Bluefox
                        Bluefox last edited by

                        Всё я уже голову сломал…

                        Запости здесь ВСЮ цепочку. Телефон и пин в личку.

                        Я не могу по отдельным цепочкам догадыватся, что где выводиться. Уходит ОЧЕНЬ много времени.

                        1 Reply Last reply Reply Quote 0
                        • I
                          instalator last edited by

                          @Bluefox:

                          Всё я уже голову сломал…

                          Запости здесь ВСЮ цепочку. Телефон и пин в личку.

                          Я не могу по отдельным цепочкам догадыватся, что где выводиться. Уходит ОЧЕНЬ много времени. `

                          [{"id":"b7d37336.482c9","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":92,"y":81,"z":"865a081c.79a5f8","wires":[["b614a670.49eb58"]]},{"id":"b614a670.49eb58","type":"function","name":"Авторизация","func":"msg.sessionid = context.global.sessionid;\n msg.headers = {\n            'Host': 'www.sistemagorod.ru',\n            'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0',\n            'Accept': '*/*',\n            'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',\n            'Accept-Encoding': 'gzip, deflate',\n            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',\n            'X-Requested-With': 'XMLHttpRequest',\n            'Referer': 'https://www.sistemagorod.ru/lk/',\n            'Cookie': 'JSESSIONID='+ msg.sessionid,\n            'Connection': 'keep-alive',\n            'Pragma': 'no-cache',\n            'Cache-Control': 'no-cache'\n        }\n        \n\n  var url= \"https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxx&pin=xxx\";\n\nmsg.url = url;\nreturn msg;","outputs":1,"valid":true,"x":128.55555725097656,"y":152.11111450195312,"z":"865a081c.79a5f8","wires":[["ef96486b.1069b8"]]},{"id":"ef96486b.1069b8","type":"http request","name":"","method":"POST","ret":"txt","url":"","x":284.7778015136719,"y":153.2222137451172,"z":"865a081c.79a5f8","wires":[["ad6096b4.529f68","62c44e09.9d3bb","a452cdcd.5bad3"]]},{"id":"62c44e09.9d3bb","type":"debug","name":"SessionId","active":true,"console":"false","complete":"payload","x":602.333366394043,"y":37.33333778381348,"z":"865a081c.79a5f8","wires":[]},{"id":"44e90f84.bb16f","type":"debug","name":"SessionId2","active":true,"console":"false","complete":"payload","x":445.5555191040039,"y":243.33333206176758,"z":"865a081c.79a5f8","wires":[]},{"id":"ad6096b4.529f68","type":"debug","name":"","active":true,"console":"false","complete":"true","x":602.5555419921875,"y":209,"z":"865a081c.79a5f8","wires":[]},{"id":"a452cdcd.5bad3","type":"function","name":"sessionid2","func":"\n//var obj = { \"topic\": \"\", \"payload\": \"\\r\\n<response>\\r\\n <state>ok</state>\\r\\n</response>\\r\\n\\r\\n\", \"_msgid\": \"c27391e4.3d8c7\", \"sessionid\": \"6E14E8C7BF3AFDE8E63FBF0EA015BFB4\", \"headers\": { \"date\": \"Sun, 24 May 2015 17:59:17 GMT\", \"server\": \"Apache/2.4.7 (Ubuntu)\", \"content-length\": \"88\", \"set-cookie\": [ \"JSESSIONID=6385A1C965987A3FAA6131DD153D2EE1; Path=/lk/; Secure; HttpOnly\" ], \"keep-alive\": \"timeout=5, max=100\", \"connection\": \"Keep-Alive\", \"content-type\": \"text/plain\" }, \"url\": \"https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxxx&pin=xxxx\", \"statusCode\": 200 };\nvar obj = msg.payload;\nvar cookies = obj.headers[\"set-cookie\"][0];\nvar m = cookies.match(/JSESSIONID=([\\w\\d]*)/);\nif (m) {\n    msg.payload = m[1];\n    return msg;\n}\n\n\n","outputs":"1","valid":true,"x":235.55560302734375,"y":284.2221984863281,"z":"865a081c.79a5f8","wires":[["44e90f84.bb16f","7a9fda5d.856024"]]},{"id":"7a9fda5d.856024","type":"debug","name":"SessionId2","active":true,"console":"false","complete":"true","x":446.66667556762695,"y":292.22221755981445,"z":"865a081c.79a5f8","wires":[]}]
                          

                          484_ytf6r.png
                          484_hdjyfuk.png

                          1 Reply Last reply Reply Quote 0
                          • I
                            instalator last edited by

                            :roll:

                            1 Reply Last reply Reply Quote 0
                            • Bluefox
                              Bluefox last edited by

                              Ты запостил не ВЕСЬ flow. Авторизации не было.

                              [{"id":"b2457b04.4dba88","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":110,"y":142,"z":"a3d5aaa9.5c2a58","wires":[["a4b814e9.5b47e8"]]},{"id":"a4b814e9.5b47e8","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/","x":430,"y":143,"z":"a3d5aaa9.5c2a58","wires":[["673656c9.98c9a8","892e892.f76d178"]]},{"id":"8aebf8b1.751408","type":"http request","name":"","method":"POST","ret":"txt","url":"","x":429,"y":207,"z":"a3d5aaa9.5c2a58","wires":[["f398e11c.0c672","2e09ba5d.d1f646"]]},{"id":"6d01402.f92fec","type":"http request","name":"","method":"GET","ret":"txt","url":"","x":428,"y":284,"z":"a3d5aaa9.5c2a58","wires":[["3d2f1fc5.c2d0e","7138683e.8ec798"]]},{"id":"f398e11c.0c672","type":"function","name":"Get \"indications\"","func":"if (msg.payload.indexOf('>ok<') != -1) {\n\tmsg.payload = '';\n\tvar parts = msg.headers['set-cookie'][0].split(';');\n\t\n\tmsg.headers = {\n\t    'Host': 'www.sistemagorod.ru',\n\t    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0',\n\t    'Accept': '*/*',\n\t    'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',\n\t    'Accept-Encoding': '',\n\t    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',\n\t    'X-Requested-With': 'XMLHttpRequest',\n\t    'Referer': 'https://www.sistemagorod.ru/lk/',\n\t    'Cookie': parts[0],\n\t    'Connection': 'keep-alive',\n\t    'Pragma': 'no-cache',\n\t    'Cache-Control': 'no-cache'\n\t};\n\t\n\t//msg.headers.Cookie = msg.headers[0]['set-cookie'],\n\tmsg.url = \"https://www.sistemagorod.ru/lk/indications\";\n\treturn msg;\n}\n","outputs":1,"x":236,"y":284,"z":"a3d5aaa9.5c2a58","wires":[["6d01402.f92fec"]]},{"id":"3d2f1fc5.c2d0e","type":"debug","name":"","active":true,"console":"false","complete":"true","x":636,"y":284,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"673656c9.98c9a8","type":"debug","name":"","active":true,"console":"false","complete":"true","x":632,"y":144,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"2e09ba5d.d1f646","type":"debug","name":"","active":true,"console":"false","complete":"true","x":633,"y":207,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"892e892.f76d178","type":"function","name":"Authenticate","func":"msg.url='https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxx&pin=yyyy'\nreturn msg;","outputs":1,"x":257,"y":207,"z":"a3d5aaa9.5c2a58","wires":[["8aebf8b1.751408"]]},{"id":"9d88bc37.62774","type":"debug","name":"","active":true,"console":"false","complete":"payload","x":416,"y":381,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"7138683e.8ec798","type":"function","name":"Extract values","func":"var m = msg.payload.match(/data-previos-reading=\"([\\d.]*)\"/g);\nmsg.payload = [];\nif (m) {\n\tfor (var i = 0; i < m.length; i++) {\n\t\tvar parts = m[i].split('=\"');\n\t\tif (parts.length == 2) {\n\t\t    msg.payload.push(parts[1].replace('\"', ''));\n\t\t}\n\t}\n}\nreturn msg;","outputs":1,"x":241,"y":382,"z":"a3d5aaa9.5c2a58","wires":[["9d88bc37.62774"]]}]
                              

                              Ещё была ошибка, что "'Accept-Encoding': 'gzip, deflate',"

                              И поэтому ты получал зазипованный ответ.

                              Я довел до ответа

                              [ "375", "7", "7", "1.351" ]
                              

                              Дальше сам.

                              1 Reply Last reply Reply Quote 0
                              • I
                                instalator last edited by

                                @Bluefox:

                                Ты запостил не ВЕСЬ flow. Авторизации не было.

                                [{"id":"b2457b04.4dba88","type":"inject","name":"","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":false,"x":110,"y":142,"z":"a3d5aaa9.5c2a58","wires":[["a4b814e9.5b47e8"]]},{"id":"a4b814e9.5b47e8","type":"http request","name":"","method":"GET","ret":"txt","url":"https://www.sistemagorod.ru/lk/","x":430,"y":143,"z":"a3d5aaa9.5c2a58","wires":[["673656c9.98c9a8","892e892.f76d178"]]},{"id":"8aebf8b1.751408","type":"http request","name":"","method":"POST","ret":"txt","url":"","x":429,"y":207,"z":"a3d5aaa9.5c2a58","wires":[["f398e11c.0c672","2e09ba5d.d1f646"]]},{"id":"6d01402.f92fec","type":"http request","name":"","method":"GET","ret":"txt","url":"","x":428,"y":284,"z":"a3d5aaa9.5c2a58","wires":[["3d2f1fc5.c2d0e","7138683e.8ec798"]]},{"id":"f398e11c.0c672","type":"function","name":"Get \"indications\"","func":"if (msg.payload.indexOf('>ok<') != -1) {\n\tmsg.payload = '';\n\tvar parts = msg.headers['set-cookie'][0].split(';');\n\t\n\tmsg.headers = {\n\t    'Host': 'www.sistemagorod.ru',\n\t    'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0',\n\t    'Accept': '*/*',\n\t    'Accept-Language': 'ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3',\n\t    'Accept-Encoding': '',\n\t    'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',\n\t    'X-Requested-With': 'XMLHttpRequest',\n\t    'Referer': 'https://www.sistemagorod.ru/lk/',\n\t    'Cookie': parts[0],\n\t    'Connection': 'keep-alive',\n\t    'Pragma': 'no-cache',\n\t    'Cache-Control': 'no-cache'\n\t};\n\t\n\t//msg.headers.Cookie = msg.headers[0]['set-cookie'],\n\tmsg.url = \"https://www.sistemagorod.ru/lk/indications\";\n\treturn msg;\n}\n","outputs":1,"x":236,"y":284,"z":"a3d5aaa9.5c2a58","wires":[["6d01402.f92fec"]]},{"id":"3d2f1fc5.c2d0e","type":"debug","name":"","active":true,"console":"false","complete":"true","x":636,"y":284,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"673656c9.98c9a8","type":"debug","name":"","active":true,"console":"false","complete":"true","x":632,"y":144,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"2e09ba5d.d1f646","type":"debug","name":"","active":true,"console":"false","complete":"true","x":633,"y":207,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"892e892.f76d178","type":"function","name":"Authenticate","func":"msg.url='https://www.sistemagorod.ru/lk/auth?type-auth=phone&answer-captcha=&phone=xxx&pin=yyyy'\nreturn msg;","outputs":1,"x":257,"y":207,"z":"a3d5aaa9.5c2a58","wires":[["8aebf8b1.751408"]]},{"id":"9d88bc37.62774","type":"debug","name":"","active":true,"console":"false","complete":"payload","x":416,"y":381,"z":"a3d5aaa9.5c2a58","wires":[]},{"id":"7138683e.8ec798","type":"function","name":"Extract values","func":"var m = msg.payload.match(/data-previos-reading=\"([\\d.]*)\"/g);\nmsg.payload = [];\nif (m) {\n\tfor (var i = 0; i < m.length; i++) {\n\t\tvar parts = m[i].split('=\"');\n\t\tif (parts.length == 2) {\n\t\t    msg.payload.push(parts[1].replace('\"', ''));\n\t\t}\n\t}\n}\nreturn msg;","outputs":1,"x":241,"y":382,"z":"a3d5aaa9.5c2a58","wires":[["9d88bc37.62774"]]}]
                                

                                Ещё была ошибка, что "'Accept-Encoding': 'gzip, deflate',"

                                И поэтому ты получал зазипованный ответ.

                                Я довел до ответа

                                [ "375", "7", "7", "1.351" ]
                                

                                Дальше сам. `

                                Воу! Спасибо большое!

                                1 Reply Last reply Reply Quote 0
                                • I
                                  instalator last edited by

                                  @Bluefox:

                                  Ещё была ошибка, что "'Accept-Encoding': 'gzip, deflate',"

                                  И поэтому ты получал зазипованный ответ.

                                  Дальше сам. `

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

                                  1 Reply Last reply Reply Quote 0
                                  • I
                                    instalator last edited by

                                    Как в node red завести данные датчиков? Выбираю в input IoBroker, переменная передается только когда значение изменяется. Мне нужно получить доступ к текущим показаниям датчика, как эти данные поместить в функцию во время выполения скрипта?

                                    • еще если переменная изменяется то она запускает скрипт который после этой переменной
                                    1 Reply Last reply Reply Quote 0
                                    • Bluefox
                                      Bluefox last edited by

                                      @instalator:

                                      Как в node red завести данные датчиков? Выбираю в input IoBroker, переменная передается только когда значение изменяется. Мне нужно получить доступ к текущим показаниям датчика, как эти данные поместить в функцию во время выполения скрипта?

                                      • еще если переменная изменяется то она запускает скрипт который после этой переменной `
                                        Никак. В этом вся проблема node-red. Он stateless и event triggered.

                                      Можно только через хак и сохранять значения в context.global (http://nodered.org/docs/writing-functions.html)

                                      1 Reply Last reply Reply Quote 0
                                      • I
                                        instalator last edited by

                                        @Bluefox:

                                        @instalator:

                                        Как в node red завести данные датчиков? Выбираю в input IoBroker, переменная передается только когда значение изменяется. Мне нужно получить доступ к текущим показаниям датчика, как эти данные поместить в функцию во время выполения скрипта?

                                        • еще если переменная изменяется то она запускает скрипт который после этой переменной `
                                          Никак. В этом вся проблема node-red. Он stateless и event triggered.

                                        Можно только через хак и сохранять значения в context.global (http://nodered.org/docs/writing-functions.html) `
                                        Ок. Будем делать через глобальные.

                                        msg.Hot_curr = h.substring(0, h.length - 2); выдает ошибку TypeError: Object 722 has no method 'substring' (line 4, col 19)

                                        Как обрезать последние два символа в значении?

                                        PS Посоветуй литературу почитать по Node red'у

                                        1 Reply Last reply Reply Quote 0
                                        • I
                                          instalator last edited by

                                          Пока сделал так:

                                           var h = context.global.Hot_curr;
                                           h = '' + h;
                                           msg.Hot_curr = h.substr(0, h.length - 2);
                                           var c = context.global.Cold_curr;
                                           c = '' + c;
                                           msg.Cold_curr = c.substr(0, c.length - 2)
                                          

                                          😄

                                          1 Reply Last reply Reply Quote 0
                                          • Bluefox
                                            Bluefox last edited by

                                            @instalator:

                                            Пока сделал так:

                                             var h = context.global.Hot_curr;
                                             h = '' + h;
                                             msg.Hot_curr = h.substr(0, h.length - 2);
                                             var c = context.global.Cold_curr;
                                             c = '' + c;
                                             msg.Cold_curr = c.substr(0, c.length - 2)
                                            

                                            😄 `
                                            Ну в принципе именно так:

                                             var h = context.global.Hot_curr.toString();
                                             msg.Hot_curr = h.substr(0, h.length - 2);
                                            
                                            
                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            400
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            8
                                            74
                                            18104
                                            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