Fermate Skrevet 7. november 2015 Del Skrevet 7. november 2015 Jeg har en venn med en Tesla. Han har fått en NUC med HS3 på av meg og bla. en Fibaro 2x1,5 som kan åpne porten hans. Teslaen kan ikke kjøre HSTouch desverre og siden det ikke er min bil (og kommer aldri til å bli det) kommer jeg ikke til å forsøke meg på noe Tesla-API eller App. MEN Teslaen kan vise en Webside i dashbordet. Tanken min var at han gikk til en webside der han får opp et Webkamera som viser at det ikke er en bil parkert forran posten og at han kan trykke på en link som trigger Fibaroen. Siden må passordbeskyttes men dette kan lagres i browseren til Teslaen. Jeg er ikke så bevandret i mulighetene til Web serveren til HS så jeg trenger hjelp til to ting: #1 Hvordan lage linken som trigger ett device (eller enda bedre en event) #2 Kan jeg bruke web serveren til HS for dette eller bør jeg starte en separat IIS? Lenke til kommentar
Moskus Skrevet 10. november 2015 Del Skrevet 10. november 2015 (endret) Webserveren til HS kan kjøre fulle ASPX (dvs. asp.net) sider, eller eldre asp-sider. Ren HTML går også fint, men det er litt mer mas å bruke. Lagre dette i \html katalogen som "TestSide.aspx" (men oppdater devRef-variabelen): <%@ Page Language="VB" %> <script runat="server"> Dim devRef As String = 801 Dim hs As Scheduler.hsapplication Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) hs = Context.Items("Content") StatusLabel.Text = hs.CAPIGetStatus(devRef).Status End Sub Protected Sub ToggleButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) 'SmartToggle by Moskus, 2015 Dim devValue As Double = hs.DeviceValueEx(devRef) Dim capi As Object = Nothing 'Object skulle vært HomeSeerAPI.CAPIControl If devValue = 0 Then 'device is off, so let's trigger "On Last Level" if it exists on the device, and just "On" if it doesn't capi = hs.CAPIGetSingleControl(devRef, True, "on last level", False, False) If capi Is Nothing Then '"On last Level" wasn't found, so we need to find "On" capi = hs.CAPIGetSingleControl(devRef,True, "on", False, False) End If Else 'The device is on, so let's turn it offf capi = hs.CAPIGetSingleControl(devRef, True, "off", False, False) End If If capi IsNot Nothing Then hs.CAPIControlHandler(capi) Else hs.WriteLog("SmartToggle", "Could not execute CAPIdevRef, it's nothing! (Input device value: " & devValue & ")") End If Response.Redirect("TestSide.aspx") 'Enkel måte å oppdatere på... End Sub Protected Sub TriggerEventButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) hs.TriggerEvent("Notifikasjoner Test notification") End Sub </script> <html> <head runat="server"> <%response.write(hs.GetPageHeader("", "Moskus testside", "", "", False, False, True, False, False)) %> </head> <body> <% response.write(hs.GetPageHeader("", "Moskus testside", "", "", False, True, False, True, False)) %> <form id="form1" runat="server"> <div> Device status for 801 er: <br/> <asp:Label ID="StatusLabel" runat="server"><%# hs.CAPIGetStatus(devRef).Status %></asp:Label> <br/> <br/> <asp:Button ID="ToggleButton" runat="server" OnClick="ToggleButton_Click" Text="Skru av/på" /> <asp:Button ID="TriggerEventButton" runat="server" OnClick="TriggerEventButton_Click" Text="Kjør event" /> </div> </form> </body> </html> ... om man bør kjøre separat IIS eller bruke HS3 sin er smak og behag, tror jeg. Endret 10. november 2015 av Moskus Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå