Hva skal hentes denne uka er et gjentagende SPM hjemme hos oss.
Så jeg fant APPEN "Min renovasjon.". Men en app er jo ikke løsningen på noe. For man vil jo ha denne informasjonen inn i homeseer.
MinRenovasjon.vb
Sub Main(ByVal parameters As Object)
'Clio75 All Credits to
[email protected]
'Inspired and based on Moskus scrip NewsReader.vb
Dim DevID As Integer = parameters.ToString.Split("|")(0)
Dim KommuneNr As String = parameters.ToString.Split("|")(1)
Dim Gatekode As String = parameters.ToString.Split("|")(2)
Dim GateNavn As String = parameters.ToString.Split("|")(3)
Dim GateNr As String = parameters.ToString.Split("|")(4)
'Sette sammen URL:
Dim kommuneURL as string = "kommunenr=" & KommuneNr
Dim GateKodeURL as string = "gatekode=" & Gatekode
Dim GateNavnURL as string = "gatenavn=" & GateNavn
Dim GateNrURL as string = "husnr=" & GateNr
Dim url As String = "https://komteksky.norkart.no/komtek.renovasjonwebapi/api/tommekalender/?" & kommuneURL & "&" & GateNavnURL & "&" & GateKodeURL & "&" & GateNrURL
'hs.WriteLog("Soppel Error", "url " & url)
Dim source As String = ""
Try
Using client As New System.Net.WebClient
'Sette Headers
client.headers.set("Kommunenr", KommuneNr )
client.headers.set("RenovasjonAppKey", "AE13DEEC-804F-4615-A74E-B4FAC11F0A30")
Net.ServicePointManager.SecurityProtocol = Net.SecurityProtocolType.Tls12
client.Encoding = System.Text.Encoding.UTF8
source = client.DownloadString(url)
End Using
Catch ex As Exception
hs.WriteLog("Soppel Error", "Net Feil: " & ex.Message)
End Try
If source = "" Then
hs.WriteLog("soppel Error", "Got no response from url: " & url)
Exit Sub
End If
Try
'Dim json as Newtonsoft.Json.string = Newtonsoft.Json.JsonConvert.DeserializeObject(Of Object)(source)
Dim json as Object = Newtonsoft.Json.JsonConvert.DeserializeObject(Of Object)(source)
Dim numMembers As Integer = json.Count -1
Dim DeviceText As String = ""
For i As Integer = 0 To numMembers
Dim output As String = ""
Dim output2 As String = ""
output = json(i)("FraksjonId")
output2 = json(i)("Tommedatoer")(0) & " Neste :"
Try
output2 &= json(i)("Tommedatoer")(1)
Catch ex As Exception
output2 &= " -- "
End Try
Select Case Output
Case "1"
output = Replace(output, "1", "<b>Restavfall : </b><br>")
Case "2"
output = Replace(output, "2", "<b>Papiravfall : </b><br>")
Case "3"
output = Replace(output, "3", "<b>Matavfall : </b> <br>")
Case "4"
output = Replace(output, "4", "<b>Glass/Metall : </b><br>")
Case "5"
output = Replace(output, "5", "<b>Drikkekartonger </b><br>")
Case "6"
output = Replace(output, "6", "<b>Grovavfall : </b><br>")
Case "7"
output = Replace(output, "7", "<b>Plastavfall : </b><br>")
End Select
DeviceText &= "" & output & " " & output2 & "<br>"
Next
hs.SetDeviceString(DevID, DeviceText , True)
Catch ex As Exception
hs.WriteLog("Soppel Error", "Net Feil: " & ex.Message)
End Try
End Sub
Så en event :
Parameters :
DevieRef | Kommunenummer | Gatenummer | GataNavn | Husnummer
Ser jeg forsatt har manuell trigger i screenshot, men en gang i døgnet burde vel holde i de fleste tilfeller.
SOM ga meg denne :
Instalering :
VeiNummer:
For å finne vegnummeret kan du gå inn på https://www.vegvesen.no/vegkart zoom deg inn på vegen din og nærmest mulig huset ditt klikker du på veien, Så finner du de 5 sifferene du trenger(Rødt).
Kommune Nummeret var de fire første her i Blått : 0710
HomeSeer trenger en referanse til Newtonsoft.Json.Dll, det kan du sette opp ved å lese under "Installasjon" i denne tråden: https://www.hjemmeautomasjon.no/forums/topic/4338-script-enturvb-få-inn-data-fra-entur/
Takk Til:
Dette hadde jeg ikke klart alene.
@Moskus skal ha en stor takk for sine delinger av script. Tatt utgangspunktet i hans NewsReader.VB
@Marhil Takk for tipset om Min renovasjons app eller hvordan jeg fant Gatenummer
Og alle de andre som deler kode og eksempler åpnet på nett