Beiträge von ChrisK2

    ChrisK2 Could you please to check if you see HTTPServer in the output if you run this in a browser:

    Code
    http://<IP_address_of_your_Shelly>/rpc/Shelly.ListMethods

    I see only the following ones: "HTTP.Request","HTTP.POST","HTTP.GET".

    If the HTTPServer should be defined somewhere else, where should it be?

    The answer I get is

    Code
    {"methods":["Shelly.SetProfile","Shelly.ListProfiles","Switch.SetConfig","Switch.GetConfig","Switch.GetStatus","Switch.Toggle","Switch.Set","Schedule.List","Schedule.DeleteAll","Schedule.Delete","Schedule.Update","Schedule.Create","Input.SetConfig","Input.GetConfig","Input.GetStatus","Webhook.ListSupported","Webhook.List","Webhook.DeleteAll","Webhook.Delete","Webhook.Update","Webhook.Create","Script.Stop","Script.Start","Script.Eval","Script.GetCode","Script.PutCode","Script.SetConfig","Script.GetConfig","Script.GetStatus","Script.List","Script.Delete","Script.Create","WS.SetConfig","WS.GetConfig","WS.GetStatus","Mqtt.SetConfig","Mqtt.GetConfig","Mqtt.GetStatus","Cloud.SetConfig","Cloud.GetConfig","Cloud.GetStatus","BLE.SetConfig","BLE.GetConfig","BLE.GetStatus","Wifi.Scan","Wifi.ListAPClients","Wifi.SetConfig","Wifi.GetConfig","Wifi.GetStatus","Sys.SetConfig","Sys.GetConfig","Sys.GetStatus","KVS.Delete","KVS.Set","KVS.GetMany","KVS.Get","KVS.List","HTTP.Request","HTTP.POST","HTTP.GET","Shelly.ListMethods","Shelly.PutUserCA","Shelly.Reboot","Shelly.SetAuth","Shelly.Update","Shelly.CheckForUpdate","Shelly.DetectLocation","Shelly.ListTimezones","Shelly.GetStatus","Shelly.FactoryReset","Shelly.ResetWiFiConfig","Shelly.GetConfig","Shelly.GetDeviceInfo"]}

    Seven of Nine The test script "HTTPServer.registerEndpoint v1.1.js" I posted was tested against

    // Verified on a Shelly Plus 2PM

    // Firmware version: 0.10.3

    // Firmware build ID: 20220617-113003/0.10.3-g7c89a05

    // Web build ID: 1.5.5-b3d94f1

    so the incoming request was definitely handled by this fw release (although I never got the answer in the browser to work)

    Hi Tamas ,

    to be honest: no, I have no idea, since you even have the same firmware installed as I had when I developed the script. Meanwhile I am running 11.0 and it works as well.

    Have you rebootet your device? Sorry, I really have no other idea, since 'HTTPServer' is a global object, so there is no definition. Maybe you want to show us your script (or send it to me?).


    The only difference I can think of is the device configuration, but this will be hard to compare... :-(

    Here are my most important ones of my Shelly Plus 2PM that runs the script:

    Device

    - Authentication: disabled

    - Debug

    - Mqtt debug: on

    - Websocket debug: on

    - Udp debug: off

    - Eco mode: off

    - Device profile: switch

    Netzworks

    - Wifi 1: enabled, IP address static

    - Wifi 2: disabled

    - AP: disabled

    - Cloud: enabled

    - BT: disabled

    - Mqtt:

    - disabled

    - RPC status notfication over MQTT: enabled

    - Generic status update: disabled

    - SSL. disabled

    - outbound websocket

    - disabled
    - Range extender: disabled

    - Connectivity: no file selected

    Hope this helps!


    Good luck

    Christian

    Danke euch.

    D.h. die frequenz des pwm Signals müsste in Volt übersetzt werden.

    Welche pwm-frequenzen nutzt der shelly rgbw2?

    Würde dieses Teil funktionieren?

    JZK 2 x PWM-Umwandlungs-Spannungsmodul, 0 % – 100 % PWM-Umwandlung in 0 V-10 V Spannung, PWM-Drehspannungsmodul https://amzn.eu/d/3ihdi1n

    Ich würde in Deinem Fall empfehlen, sowas zu kaufen: 1-3KHZ 0-10V PWM Digital Analog Wandler Modul, PWM zu Spannung Converter Modul : Amazon.de: Elektronik & Foto

    Ohne Ausrüstung (Oszi, Multimeter) und etwas Know-How würde ich das nicht machen!

    Hi..

    i am missing some example code for "HTTPServer" i have found "https://shelly-api-docs.shelly.cloud/gen2/Scripts/S…ures#httpserver" and it does work some.. but it seems, i have to send back 200 http code(header) to get the browser to stop hanging(it waits).. i have try'd some i have prev used..and i have not been able to finde anything via google.

    also im unsure how to get the http post/get data info as a variable.. im GET like so "http://10.0.1.153/script/1/tester?test3"

    i can normalle code in php/python/javascript/bash but i am unfamiliar with msj/HTTPServer.

    Hi Harryl,

    I have just posted a working example with HTTPServer.registerEndpoint for a Shelly Plus 2PM here: Endlich: HTTPServer.registerEndpoint - User Scripte - Offizielles Shelly Support Forum (shelly-forum.com)

    Maybe this helps you a bit? The text is in German, but the most important things are commented in the script itself in English.

    Good luck

    Christian

    Hi Leute,

    endlich habe ich es geschafft, HTTPServer.registerEndpoint zum laufen zu bekommen! :D

    Edit (Weil ich gerade gefragt wurde, was man damit machen kann):

    Man kann damit über einen Browser-Call (also z.B. vom PC oder Handy aus) eine Funktion im Shelly starten. Finde ich ziemlich cool! Einfach Link auf den Desktop legen und beim Anklicken wird die gewünschte Funktion im Shelly ausgeführt.

    Hier das Script:

    Viel Spaß damit! Vielleicht hilft es jemandem!

    PS: Die neue IDE ist cool! ;) Mir wurde jedoch die alte IDE während der Arbeit unter dem A...popo weggezogen! *lol*


    Liebe Grüße aus Wien

    Christian

    Wobei das speichern als .js datei für eine IDE oder editor zur Interpretation besser wäre.

    Ich schreib meine immer in Ultraedit direkt und kopiere sie dann erst in den Shelly

    Notepad++ wäre hier ganz gut als freie Software

    Gute Idee! Notepad++ ist bei uns ohnedies im Einsatz! Da aber die Shelly-IDE ohnedies so *'~&%$ ist, war mir die Formattierung im TXT-Editor (Notepad) auch schon egal! 8o Ich werde es dennoch ändern...


    Und wenn du deinem zweiten Kopf einfach sagst er soll sich das merken? Der hat doch ohnedies nichts zu tun.

    Walta

    Walta, ich fürchte, ich kann Dir nicht folgen... *gg*

    Ich habe mir einen Ordner 'Shelly- Scripts' am Rechner angelegt, darunter Projekt- Ordner.

    Die Scripts speichere ich als Text-Datei mit Datum und Version, z.B.: '20220915 Test v1.0.txt'. Während des Programmierens habe ich die Text- Datei offen und kopiere das Script regelmäßig mit CTRL-A, CTRL-C und CTRL-A, CTRL-V hinein.

    Hilft auch, wenn man irrtümlich aus dem Script aussteigt und nicht gespeichert hat. Wenn ich mehr tippen muss mache ich das auch gleich im Text-Editor, hilft gegen den lästigen S- Tasten- Bug unter Windows.