ALTUI : Version Log

v0.80.735

[ul][li]new Watch type ( WhenSince ) to trigger a scene when a watch expression is true since n seconds[/li]
[li]Blockly editor for this new Watch type so people can graphically create the watch expression[/li]
[li]PLEG TS dashboard - dklinkman[/li][/ul]

[glow=red,2,300]IMPORTANT NOTE[/glow]:

[ul][li]Watch Variable syntax had to change to use # as a separator character instead of the “,”. so if you had watches, you probably need to delete and redo them. Sorry about that ! [/li]
[li]in the Watch Expression you can use the new function trueSince , example : trueSince((new == 1), 10) means new value of the variable is equal to 1 and for 10 seconds in a row[/li]
[li]But the Best is to use the BLockly editor, you have a screen shot attached[/li][/ul]

V 0.81.744

[ul][li]Bug fix for Glass Sensor[/li]
[li]Bug fix for custom pages without children[/li]
[li]LuaTest Code persistency[/li]
[li]Lastupdate and Now variable in watch & Blockly[/li][/ul]

V 0.82.754

[ul][li]Better Lua test window with display of return object and console output prints[/li]
[li]Bug fix for Blockly Lua generator[/li][/ul]

NOTE

[ul][li]the code must be the body of a lua function. with or without a return statement[/li]
[li]anything can be returned, the return is displayed in JSON format in the return window[/li]
[li]anything printed by the lua code via print statement is displayed in the output window[/li][/ul]

Version History
v0.84.765 ( EDIT: was 754 )

[ul][li]Arduino MySensors dashboard - a-lurker contribution[/li]
[li]LastBootstrap variable. cf explanation in http://forum.micasaverde.com/index.php/topic,34057.0.html[/li][/ul]

v0.84.771

[ul][li]Blockly device variable block for watches[/li]
[li]bugfix:Null lua startup code issue ( tbc )[/li][/ul]

screen shot is here just for demo but not a likely scenario since the condition does not use the value of the watch.
Remember that the watch is on the variable you have declared prior to enter the Blockly editor and that its values are “new” or “old”

V 0.85.783

[ul][li]Device Icon size issue fix[/li]
[li]New timeOf() method for watch and Blockly block to ease comparison of timestamps[/li]
[li]Fix for localBootstrap when used in remote mode ( custom bootstrap was not loaded )[/li][/ul]

NOTE: a watch expression can be something like this

trueSince(((timeOf(lastupdate)) <= (17*3600+45*60+0) and new == 1), 10)

which means , the new value ( which triggered the watch to fire ) is 1 and the timestamp of when it happened ( lastupdate ) was before 17h45 and it stayed true for 10 seconds in a row.

you already knew about trueSince() which means a condition is true and stays true even after x seconds. 10 in this example
now there is timeOf() which keeps only the H M S part of a timestamp ( like the lastupdate or now ones ) and be able to compare with a hard coded time in the day in seconds.

I added a Blockly custom block to make this easier, cf the screen shot where you can see how to create such a watch

V 0.85.790

[ul][li]ToNumber Blockly for easy conversion of device variable into numbers : ToNumber block can be in front of a device variable block.[/li]
[li]Edit ability of scene action Group 0 timing : feature was missing[/li]
[li]Optimize small screen home page layout : removed weather widet from screen, these kind of devices have meteo apps typically[/li]
[li]Lun Test run handler runs in global context ( instead of ALTUI context ) - contribution of AkBooer[/li]
[li]Saving device variable from Settings screens does not require a SAVE on UI7 box[/li][/ul]

[glow=red,2,300]EDIT: read http://forum.micasaverde.com/index.php/topic,34150.0.html[/glow]
See screen shot examples

v0.88.800

[ul][li]MultiSwitch device type use the configuration table like other devices for customization - dklinkman contribution[/li]
[li]Lua Test code can make use of a pretty() function to display complex objects - akbooer contribution. cf example in screen shot[/li]
[li]localbootstrap variable : must be a relative path to a bootstrap.min.css file[/li][/ul]

V 0.89.813

[ul][li]Lua Handler in global context ( but result is not displayed in json any more - bug fix )[/li]
[li]Add/Delete zWave device configuration variable[/li]
[li]bugfix for scene running history list[/li]
[li]Device key dates ( lastupdate etc ) grouped under the configuration section of the device control panel[/li][/ul]

V 0.90.819

[ul][li]bugifx: Upgrade dialog box width (tentative)[/li]
[li]Favorites option to use VERA mode ( same favorites as UIx dashboard ) or ALTUI favorites ( per client )[/li]
[li]ServerOptions : new variable to hold some options values when localstorage is not maintained[/li]
[li]Better SetAttribute api for UI7 ( avoid the reload we have on UI5 )[/li][/ul]

Notes
this release is maintly about a workaround to the issue reported by aaron and some minor bug fix.
A new option is available to choose between the ALTUI mode of Favorite management or the VERA mode of management.

ALTUI mode is

[ul][li]Favorites are stored on each client so they can be different per client[/li]
[li]But they are independant and different from VERA dashboard favorites[/li][/ul]

VERA mode of management for Favorite is

[ul][li]Favorites are the same as those appearing on UIx dashboard[/li]
[li]They are the same for all the client devices[/li]
[li]Note that on UI5 vera, setting or unsetting a favorite will trigger Luup reload[/li]
[li]and on UI7 vera , setting or unsetting a favorite is immediate. Note that Altui supports setting a scene as a favorite but UI7 does not , or at least does not show it, but it seems to work[/li][/ul]

ALTUI mode of favorite need LocalStorage HTML to be kept. if you do clear HTML 5 LocalStorage for some reason, you ll loose your favorites & settings so this version introduces a new ALTUI device variable called “ServerOptions” which holds some (not all ) of the options that ALTUI normally keeps in LocalStorage.

You do not have anything to do ,this variable will be initialized according to your settings in ALTUI and whenever you change them in ALTUI

Key Take away:

[ul][li]if you clear localStorage regularly, you have no choice , you will have to work with VERA favotite mode. this option must be indicated in the ALTUI option page and it will be remembered in the ALTUI Vera device in the ServerOptions variable so that, next time ALTUI starts, it knows that you want to use VERA Favorites[/li]
[li]if you can work with localStorage, that is the default of ALTUI and you can therefore use ALTUI mode for favorite and enjoy different favorites per client device and immediate on/off setting when you click on the start[/li][/ul]

ServerOptions variable is the format optoinname1=val1,optionname2=val2,etc where option is the text that appear in a bubble when you hover the mouse over the option control in the optoin page ( not shown on mobile device )
I hope this is clear enough, it is a bit convoluted

V 0.91.837

[ul][li]Bootswatch integration to be able to change the theme on the fly and have different theme per clients[/li]
[li]Thingspeak integration[/li][/ul]

Thingspeak : Instructions are available here : http://forum.micasaverde.com/index.php/topic,34343.0.html , Remember that adding new variable to watch requires a Luup restart to be effective. Also once edited, close the form with the bargraph icon to save your changes ( cf doc )

Themes: in options/themes you can select a theme from bootswatch and it will override the server side ( lua variable ) theme selection. It will also remember in localStorage such that you can have a different theme per client device

EDIT: adding themes

v 0.93.845

warning : this version has an impact on existing Watch expressions. if you used them, please review and consider that new & old variable are now string types so when you compare with value you must compare with string values , or use the ToNumber method() or Block in Blockly.
example : new==10 should now be written new==“10”

[ul][li]page Credit update[/li]
[li]'new' and 'old' typed as string in Watch expressions[/li]
[li]Fix Blockly block return types for new & old variables[/li]
[li]Thingspeak graph show in remote access[/li]
[li]Watch expression evaluation lua code fix (akbooer)[/li]
[li]Prevent zooming on iPad IOS safari[/li][/ul]

v 0.94.849

[ul][li]Customizable url for thingspeak variable graph: this way you put different values for scales, etc and also url to MATLAB generated graphs[/li][/ul]

Note: the best is to generate the graph you want in thingspeak UI then copy paste the url from the thingspeak IFrame little icon. cf screen shots
Note2: when using a url from Matlab you can add at the end of the url " &size=iframe" to make it fit properly the ALTUI location

v 0.95.862 [EDIT : 862 = bugfix ]

[ul][li]Create Device uses new http Get api[/li]
[li]new Device notification user interface in control panel[/li]
[li]change save button color when renaming a scene[/li]
[li]Fix for verabox.js file download in remote access mode[/li][/ul]

V 0.95.875

[ul][li]Variable Update bugifx[/li]
[li]Minor bug fixes ( localization , theme switches )[/li]
[li]control panel button size[/li]
[li]ALTUI settings tab uses bootstrap styled buttons[/li][/ul]

EDIT => 871 to 875 with the variable update fix

V 0.95.885

[ul][li]bugfix when same watch expression is used in several scenes[/li]
[li]room and scene rename by clicking on title[/li]
[li]prevent watches on secondary controlers[/li]
[li]view devices of the room from the room page[/li][/ul]

V 0.98.895

[ul][li]remote watch capability[/li]
[li]Icon display issue on multicontroller configuration[/li]
[li]Change new sceneID choice for openLuup (akbooer)[/li]
[li]bufix device without json (vosmont)[/li][/ul]

as you know ALTUI enables to work with extracontrollers as secondary controllers. You only need ALTUI on the main controller. But it is possible to also install ALTUI on the secondary controllers, if you do so, the 2 ALTUI devices can talk to each other and this enables a new functionality called “Remote watch”

With remote watch, you can set a device variable from a secondary controller as a Watch trigger for a scene in the primary controller. You can also send to thingspeak the value series for a device variable from a secondary controller. But without ALTUI on the secondary controller, multicontroller mode will still work but Remote Watch functionality will not work

NOTE that :

[ul][li]deleting a Watch requires a Luup reload to be effective, and this is true on master or on secondary controller, depending on where the device of the watch was located. However even if a unwanted watch is received, ALTUI will simply ignore it[/li]
[li]adding a Watch is immediately effective[/li]
[li]ALTUI will recreate the watches when reloading Luup on the VERA hosting this ALTUI instance[/li][/ul]

last note, this was a quite big change, I do expect some bugs …

Change new sceneID choice for openLuup

Thank you so much!

[quote=“amg0, post:37, topic:188335”]V 0.98.895

as you know ALTUI enables to work with extracontrollers as secondary controllers. You only need ALTUI on the main controller. But it is possible to also install ALTUI on the secondary controllers, if you do so, the 2 ALTUI devices can talk to each other and this enables a new functionality called “Remote watch”

With remote watch, you can set a device variable from a secondary controller as a Watch trigger for a scene in the primary controller. You can also send to thingspeak the value series for a device variable from a secondary controller. But without ALTUI on the secondary controller, multicontroller mode will still work but Remote Watch functionality will not work[/quote]

That’s great, but how do I get this functionality on a secondary controller remote, e.g. Octan from NodOn?

[quote=“Kullematz, post:39, topic:188335”][quote=“amg0, post:37, topic:188335”]V 0.98.895

as you know ALTUI enables to work with extracontrollers as secondary controllers. You only need ALTUI on the main controller. But it is possible to also install ALTUI on the secondary controllers, if you do so, the 2 ALTUI devices can talk to each other and this enables a new functionality called “Remote watch”

With remote watch, you can set a device variable from a secondary controller as a Watch trigger for a scene in the primary controller. You can also send to thingspeak the value series for a device variable from a secondary controller. But without ALTUI on the secondary controller, multicontroller mode will still work but Remote Watch functionality will not work[/quote]

That’s great, but how do I get this functionality on a secondary controller remote, e.g. Octan from NodOn?[/quote]

small confusion maybe.

[ul][li]what I call primary controller is the VERA on which you have installed ALTUI device. lets call it VERA A[/li]
[li]what I call secondary controller is another VERA on which you have installed other devices. let’s call it VERA B[/li][/ul]

you can configure ALTUI of VERA A in multicontroller mode, meaning in “ExtraController” variable you put the ip address of VERA B. doing so will enable you to see VERA B devices on the same user interface as VERA device, just by opening ALTUI window

Now, you can also add ALTUI device on VERA B. In that case, you will be able to add device watches to act as triggers or thingspeak data source for VERA B devices directly. All directly from within the same user interface of the ALTUI window opened on VERA A ip address.

hope this clarifies