Önskelista för utveckling

Allmänna frågor och synpunkter.
Post Reply
SweVictor
3 stars
3 stars
Posts: 51
Joined: Sat 08 Oct 2011, 15:22

Önskelista för utveckling

Post by SweVictor » Sat 03 Dec 2011, 01:20

*Varning för långt inlägg* :mrgreen: Kortversionen av önskelistan:
1. Förbättrad hantering av datakällor
2. Möjlighet att skicka events utåt
3. Skicka signal till alla enheter vid scenariobyte
4. Scenarioinställningar -> Ändra i scenario -> Scenarioinställningar (inte tillbaka till huvudprogrammet) (Edit)

Långversionen:

Efter Martin skrev att det var fritt fram att komma med önskelista på SK-funktionalitet såhär fram emot jul kunde jag såklart inte hålla mig. Jag ska säga direkt att jag inte hållt på med detta så väldigt länge (Nexa-brytare länge, men Tellstick och SK endast sedan DUO:n kom), dock får jag ändå säga att jag ägnat mycket tid åt SK och verkligen försökt lösa problem jag träffat på längs vägen.

Generellt:
Till att börja med tycker jag SK funkar fantastiskt bra som frontend för Tellstick - enkelt och tydligt, men ändå kraftfullt och smart löst med scenarier och gruppscheman! :clap: Dock - eftersom SK är såpass bundet till Tellstick som det är har jag svårt att se programmet som något annat än ett nav för belysning (plus lite annat, men inte så mycket). Det jag menar är att jag inte dagsläget inte kan se programmet som ett totalt nav för allt i ett smart hem, alltså tex audio/video, lite mer avancerad temperaturreglering, mm (tex sånt som 1-wirefolket håller på med). Jag ser inte detta som någon nackdel, men tror att integrerbarheten i andra system blir väldigt viktig.

APIer och dylikt tycker jag verkar fantastiskt bra - riktigt bra att ni har ett kraftfullt sätt att styra allt och erbjuder såväl DLLer som REST och dessutom kompilerat DLL-exempel som command line utility, toppen! Däremot tycker jag att automatiserad input/output skulle kunna förbättras en hel del:

1. Datakällor och parsing
Generellt sätt bra att ni stödjer indata i såpass varierande format som ni gör, riktigt nice. Ett antal tankar om just datakällor:

* Bättre hantering av tal - dels själva parsingen (se exv min andra tråd), men även en mer avancerad omräknare hade varit trevligt (ett "avancerat"-fält där man kunde ange A + (B * (C + Värde)) skulle lösa väldigt mycket olika sorters omräkningar (A, B och C decimaltal), exv konverteringar mellan Fahrenheit/Celcius, fix av 116 grader => 11,6 enligt tidigare tråd, eller allmän felmätningsjustering)

* "Förståelse" för XML (eller annan liknande markup) - För mig är sättet att skriva in hur man hittar ett värde i en större datafil inte på något sätt naturligt. För att slippa skriva jättefunktioner för att förstå xml på riktigt föreslår jag något/några av:
- "Sök på [rad 10 / varsomhelst], värdet finns i xml-taggen 'temperatur'" (söker efter <temperatur>VÄRDE</tempeteratur>)
- Som idag fast med flerteckensavgränsare (avgränsare = {"<temperatur>", "grader</temperatur">} skulle ge samma resultat som ovan relativt enkelt utan specialfunktioner för xml
- Preview! Jag kan ha missat, men jag har i alla fall inte hittat hur man kan se resultatet av det man skriver in (det jag skulle vilja se är Rådata: ".......", Tolkas som ".....")
- Kopplat till det ovan bör man kunna välja om det är heltal, decimaltal eller sträng man förväntar sig, men det kanske man redan kan?



2. Möjlighet att generera events utåt, exv:
* Vid byte av scenario
* Då regler uppfylls
* Då signaler skickas ut

Exempelvis skulle när något av detta händer en fil kunna skapas/uppdateras, ett http-anrop göras, eller dylikt.


Övrigt:
3. Jag skulle önska att man kunde välja att SK vid scenariobyte sätter state på alla enheter (först de som har "fel" state och därefter (valbart?) även de som redan har "rätt" state). För närvarande krävs en manuell synkning efter scenariobyte.

4. För närvarande kommer man tillbaka till huvudprogrammets gui efter man ändrat i ett scenario (alltså gått från Scenarioinställningar -> Ändra i scenario och sen stängt den rutan). Ofta vill man (jag) ändra i fler scenarion vilket är lite meckigt eftersom man måste upp till huvudmeny och välja scenarioinställningar igen mellan varje gång. Man kanske tom skulle kunna välja "Använd" i scenarioinställningar och sen ha en topp-toolbar i den rutan där man via en dropdown kan växla till ett annat scenario? Hade varit väldigt smidigt!



Jag uppdaterar denna när jag kommer på något mer, men detta var nog allt för nu! :)
Kom gärna med synpunkter eller frågor!

/Victor

tomas
Administrator
Administrator
Posts: 419
Joined: Tue 09 Nov 2010, 20:41

Re: Önskelista för utveckling

Post by tomas » Mon 05 Dec 2011, 22:06

Här fanns det en del att bita i ;)
SweVictor wrote:Bättre hantering av tal - dels själva parsingen (se exv min andra tråd), men även en mer avancerad omräknare hade varit trevligt (ett "avancerat"-fält där man kunde ange A + (B * (C + Värde)) skulle lösa väldigt mycket olika sorters omräkningar
När det gäller parsningen så vill vi helst undvika att användare ska behöva bry som om detta. Funderar dock på om man kan lista ut talformatet på något smartare sätt. Tips?

För "omräknaren" finns i dagsläget en plugin som klarar att addera/subtrahera från värdet (Data Source Value Modifier). På sikt är det önskvärt att lägga in detta i Switch King och då även utöka funktionaliteten.
SweVictor wrote: "Förståelse" för XML (eller annan liknande markup)
Möjlighet att läsa in XML-fil finns redan med två olika sätt att hämta ut värdet (XPath och XML-tagg). Funktionen kräver dock att XML-filen är "fullständig och korrekt" vilket t ex REST-svar inte är. Finns loggat att titta vidare på detta.
SweVictor wrote:Preview! Jag kan ha missat, men jag har i alla fall inte hittat hur man kan se resultatet av det man skriver in (det jag skulle vilja se är Rådata: ".......", Tolkas som ".....")
Lägger med detta i önskelistan.
SweVictor wrote:Kopplat till det ovan bör man kunna välja om det är heltal, decimaltal eller sträng man förväntar sig, men det kanske man redan kan?
Switch King försöker tolka värdet som ett tal (först med lokala inställningar och därefter med amerikanska inställningar). Om det misslyckas så tolkas värdet som en sträng.
SweVictor wrote:Möjlighet att generera events utåt
Plugin-modellen har stöd för diverse olika events, men kräver idag lite kodning för att få ut det man vill (till t ex en fil).
SweVictor wrote:Jag skulle önska att man kunde välja att SK vid scenariobyte sätter state på alla enheter
En TellStick Duo borde lösa detta eftersom Switch King då vet vilka enheter som hamnat i fel state.
SweVictor wrote:För närvarande kommer man tillbaka till huvudprogrammets gui efter man ändrat i ett scenario (alltså gått från Scenarioinställningar -> Ändra i scenario och sen stängt den rutan). Ofta vill man (jag) ändra i fler scenarion vilket är lite meckigt eftersom man måste upp till huvudmeny och välja scenarioinställningar igen mellan varje gång.
Detta har vi inga planer på direkt, men kan tipsa om Öppna-knappen i verktygsfältet så slipper du gå in i menyer och välja. I Öppna-fönstret listas "allt" i Switch King och du kan öppna det du söker genom dubbelklick på t ex ett scenario.

Tack för alla synpunkter och förbättringsförslag! :wave:
Tomas | Switch King

SweVictor
3 stars
3 stars
Posts: 51
Joined: Sat 08 Oct 2011, 15:22

Re: Önskelista för utveckling

Post by SweVictor » Mon 05 Dec 2011, 22:53

Nice! Tack för all respons! Lite kommentarer:
tomas wrote:När det gäller parsningen så vill vi helst undvika att användare ska behöva bry som om detta. Funderar dock på om man kan lista ut talformatet på något smartare sätt. Tips?
Till att börja med tycker jag personligen att valet att anta att användarens locale är rätt är lite olyckligt eftersom olika användare då kommer att få olika resultat beronede på miljö. Jag respekterar att ni inte vill komplicera upplevelsen för användarna, men som jag ser det finns det inget sätt att säkert veta talformat och då måste användaren få välja. Att ni inte vill ta in en avancerad omräkning av värdet förstår jag, det passar troligen ganska bra i en plugin för dem som behöver det. Hursomhelst - anta att vi får in två värden från olika datakällor:
1. "2,033"
2. "3.022"
Det finns ingen möjlighet att tolka vad punkten respektive kommat betyder! Jag skulle väl säga att amerikansk nummerformatering är "mest standard" i webservicar som returnerar data - den approachen skulle i så fall betyda att värdena betyder "2033" resp "3,022" (på "svenska"). Med svensk parsing blir "2,033" resp "3022" (varför vet jag inte - med strikt svensk parsing borde det bli "2,033" resp "nan" => amerikansk parsing => "3,022"). Långt inlägg om inte mycket, men kontentan som jag ser det är att man absolut kan ha en standard men att det måste finnas ett sätt att anpassa sig till datakällan eftersom man oftast inte har något inflytande över den.
tomas wrote:
SweVictor wrote:"Förståelse" för XML (eller annan liknande markup)
Möjlighet att läsa in XML-fil finns redan med två olika sätt att hämta ut värdet (XPath och XML-tagg). Funktionen kräver dock att XML-filen är "fullständig och korrekt" vilket t ex REST-svar inte är. Finns loggat att titta vidare på detta.
Låter bra! Var nog lite otydlig när jag skrev, huvudpoängen är jag tycker att "separeringstecken" är ett smart sätt att läsa xml utan att förstå det och att jag tror att ett enkelt sätt att förbättra det vore att ha "separareringssträngar" istället, så man (i xml tex) kan ange något mer specifikt än "<>", exv {"<specifiktagg>", "</specifiktagg>"}. Kul att ni tar med preview, det tror jag hjälper mycket!
:clap:

tomas wrote:
SweVictor wrote:Jag skulle önska att man kunde välja att SK vid scenariobyte sätter state på alla enheter
En TellStick Duo borde lösa detta eftersom Switch King då vet vilka enheter som hamnat i fel state.
Jag tror jag förstår vad du menar, men problemet är att jag använder en hel del Nexa LWMR-210, alltså en inbyggd mottagare som dimmar, men som också kan dimmas med en ansluten tryckknapp. Resultatet blir att lampans state kan ställas om utan att någon trådlös signal skickas. Utöver det har jag även (än så länge?) kanaler på fjärrkontroller som styr lampor direkt för att få snabb dimmning (som inte heller känns av av Tellstick/SK). Så - om jag inte missförstått skulle jag fortfarande vilja att ett scenariobyte satte ALLA enheter (utöver de som står som "Ej påverkad" såklart) till rätt state.

tomas wrote:Plugin-modellen har stöd för diverse olika events, men kräver idag lite kodning för att få ut det man vill (till t ex en fil).
Låter toppen, enda problemet är att jag snart måste börja koda lite själv för att lista ut allt spännande man kan göra! ;)


Tack igen för feedback!
/Victor

Post Reply

Who is online

Users browsing this forum: Bing [Bot] and 11 guests