Håller nu på att skapa en Powershell modul för att hantera Vera / Micasaverde. Orsaken till att jag gör en modul är för att kunna integrera mer saker med veran, exempelvis Outlook och Google kalendrar. Jag kommer att uppdatera tråden allt eftersom jag utvecklar modulen. Jag hoppas på att få till många roliga och behövliga funktioner i Modulen.
Är det någon som tycker detta är ett bra initiativ eller har en bra idé på funktionalitet som borde finnas i modulen så lägg gärna en kommentar.
Jag bygger modulen på en Windows 8.1 med Powershell V4, modulen bör fungera på Windows 7, Windows 2008 r2 eller nyare så länge Powershell V3.0 finns installerad. Powershell V3.0 finns att hämta här
För tillfället så har modulen full möjlighet att läsa ut alla enheter och returnera dessa som objekt i Powershell. Objekten kan konsumeras av andra script mycket enkelt. Funktionen för att hämta ut objekten är inte optimerad alls! Jag kommer att göra det allt eftersom jag skriver modulen.
Modulen skapades: 2014-12-26 – Initial version 0.5
Nuvarande version: V1.1 / Uppdaterades – 2015-02-06
V1.1 – Läs mer här: Nyheter
Nuvarande funktionalitet i modulen:
- Hämta alla objekt ur Vera och skapa objekt av dessa i Powershell – (V0.5) Check
- Konvertera Verans UNIX tidsformat till ett läsbart format – (V0.6) Check
- Läsa upp information med hjälp av Windows inbyggda röst API – (V0.6) Check
- Läsning av RSS Feed från automatiserar.se – (V0.7) – Check
- Uppdatering av scriptet via scriptet – (V0.8) – Check
- Sökning efter en givare i veran – (V0.8) – Check
- Städning, optimering och buggfix – pågående
Funktioner jag hoppas på att göra till modulen
- Byta scener via script.
- Uppdatera värden på specifika enheter via script.
- Definiera datatyper på objekten som returneras.
- Skapa givare i Veran.
- Ta bort givare i Veran.
- Uppdatera givare i Veran.
- Enklare XAML gui där alla enheter med status listas.
- Hantera inloggning och kommunikation från externt nätverk.
- Hantera inloggning till veran. – (V0.9) – Check (2014-12-30)
- Integration mot Outlook och Google kalender.
Kända problem:
Vera med UI5 ser inte ut att fungera med kommandot get-MJ-VeraStatus för tillfället.(V1.0) – Check (2014-01-02)
Hur installerar du modulen på din dator:
- Ladda ner filen som ligger längst ner i tråden, spara den med namnet automatiserar.psm1
- Om du är säker på att du vill ha modulen oavsett vilket konto som kör på datorn, skapa en mapp under sökvägen ”C:\Program Files\WindowsPowerShell\Modules”, döp mappen till Automatiserar. I mappen sparar du filen ”Automatiserar.psm1”
- Beroende på hur du har ställt din säkerhet i Powershell så kan det krävas att du ändrar executionpolicy till en mindre strikt för att testa modulen.
- Detta görs genom att öppna Powershell som administratör och skriv ”Set-ExecutionPolicy RemoteSigned” alternativt ”Set-ExecutionPolicy Unrestricted”
- Genom att öppna Powershell och skriva ”get-MJ-VeraStatus -veraIP 10.10.10.10” ( ip adressen ska ändras till den du har på din vera enhet )
Resultatet nedan är hur ett av alla objekten ser ut.
Genom att skriva raden nedan så läses informationen om enhet 65 direkt från veran upp i datorns högtalare.
Send-MJ-Speak -message ”The Current temperature in your yard is $((get-MJ-VeraStatus | Where-Object {$_.EnhetsID -eq 65} | Select-Object CurrentTemperature).CurrentTemperature) degree Celsius”
Alla moduler jag skapar heter nått med MJ, dvs ”*action*”-MJ-”*vettigtNamn*”, detta för att inte krocka med befintliga namn som redan kan finnas i Powershell.
Följande funktioner finns idag i modulen.
- Update-MJ-Module
- Get-MJ-AutomatiserarModulen
- Read-MJ-AutomatiserarRSSFeed
- Send-MJ-Speak
- get-MJ-VeraStatus
Följande textfil döps om till Automatiserar.psm1 och sparas i en mapp som heter Automatiserar
Powershell script: Automatiserar
Vill man inte använda hela modulen, utan bara nyttja vissa funktioner så fungerar även det. Kopiera funktionen ur scriptet och implementera det i egna script. delas funktionerna vidare så behåll en hänvisning hit till www.automatiserar.se om det är ok. 🙂
Som vanligt tänk igenom och kontrollera koden innan du kör den! Modulen körs på egen risk och innehåller inte någon signering av koden alls så jag kan inte garantera att den inte har blivit ändrad!
Jag kör själv modulen på all min utrustning och tycker att det fungerar riktigt bra! därför valde jag att skapade ett sätt att uppdatera modulen enkelt.
// Markus

Skribent:
Markus Jakobsson har i mer än 10 år delat med sig av erfarenhet inom smarta hem på bloggen. Han har testa det mesta och lärt sig massor på vägen, något han delat med dig här på bloggen.
Du kanske uppskattade och fick nytta av det här inlägget och vill hjälpa sidan Automatiserar.se?
Swisha gärna en slant till kaffe på 0705470065 om du vill stötta bloggen.
Då visar du oss att det du läste på Bloggen skapar värden och uppskattas.
Vi kan dessutom fortsätta driva sidan helt utan reklam.
Du kan även stötta bloggen genom att köpa någon av våra smarta hållare.
Alla bidrag vi får går till att täcka driftkostnaderna hos webbhotellet och köpa sensorer till bloggen.
Om bloggen:
Markus driver sidan helt på fritiden och ideellt. Därigenom är jag helt oberoende och kan ärligt skriva om allt bra och dåligt på tekniker vi testar på bloggen.
Vi hoppas att du som läsare hittat ett inlägg som hjälper dig att automatisera mera.
TIPS:
Vill gärna tipsa om ett inlägg där du hittar grupperad information om smarta hem: Automatiserar.se/smarta-hem/
Skulle du mot förmodan inte hittat det du sökte kommer du troligen hitta det här: Automatiserar.se/sok-om-hemautomation/
Vill du diskutera smarta hem så har vi en kanal på Facebook med +7000 medlemmar: Smartare hem & Hemautomation | Facebook
Sedan början av 2023 har vi skapat mer material på Youtube kanalen: Stötta oss gärna genom att kolla in filmerna där och följa kanalen
Stort tack för att du tog dig tid att läsa vårt inlägg.
Med vänliga hälsningar Markus Jakobsson
Allt går att automatisera!
Pingback: Powershell modul Vera V1.3 | Vi Automatiserar.se