diff --git a/BaseFiles/Common/homegenie_factory_config.zip b/BaseFiles/Common/homegenie_factory_config.zip index 46411f22a..40baa4c16 100644 Binary files a/BaseFiles/Common/homegenie_factory_config.zip and b/BaseFiles/Common/homegenie_factory_config.zip differ diff --git a/BaseFiles/Common/html/pages/configure/interfaces/configlet/zwave.html b/BaseFiles/Common/html/pages/configure/interfaces/configlet/zwave.html index 1c9eb4a52..02426e1ee 100644 --- a/BaseFiles/Common/html/pages/configure/interfaces/configlet/zwave.html +++ b/BaseFiles/Common/html/pages/configure/interfaces/configlet/zwave.html @@ -2,21 +2,37 @@
- Device Port -
- -
-
-
- Command Delay -
- -
-
-
- Discovery on Startup -
- +
+
+ Device Port +
+ +
+
+
+ Discovery on Startup +
+ +
+
+
+ Command Delay +
+ +
+
@@ -33,9 +49,9 @@ ZWave Common Tasks
Discovery - Heal Network Add Node Remove Node + Heal Network Hard Reset
@@ -48,7 +64,7 @@

ZWave Discovery

-

+

Configure Groups and Modules @@ -61,7 +77,7 @@

ZWave Discovery

ZWave Network Heal

-

+

@@ -118,37 +134,33 @@

} }); }); - // populate startup discovery list - startupDiscoverySelect.empty(); - startupDiscoverySelect.append(''); - startupDiscoverySelect.append(''); - // set current configured startup discovery + + startupDiscoverySelect.selectmenu().selectmenu('refresh', true); + // get current configured startup discovery HG.Configure.MIG.InterfaceCommand(_this.Id, 'Options.Get', 'StartupDiscovery', '', function (startupDiscovery) { - startupDiscoverySelect.val(startupDiscovery.ResponseValue); - startupDiscoverySelect.selectmenu('refresh', true); + if (startupDiscovery && startupDiscovery.ResponseValue != '') { + startupDiscoverySelect.val(startupDiscovery.ResponseValue); + startupDiscoverySelect.selectmenu('refresh', true); + } }); // bind to startup discovery change event startupDiscoverySelect.change(function (event) { HG.Configure.MIG.InterfaceCommand(_this.Id, 'Options.Set', 'StartupDiscovery', encodeURIComponent($(this).val())); }); - // populate command delay list - delaySelect.empty(); - delaySelect.append(''); - delaySelect.append(''); - delaySelect.append(''); - delaySelect.append(''); - delaySelect.append(''); - delaySelect.append(''); - // set current configured delay + delaySelect.selectmenu().selectmenu('refresh', true); + // get current configured delay HG.Configure.MIG.InterfaceCommand(_this.Id, 'Options.Get', 'Delay', '', function (delay) { - delaySelect.val(delay.ResponseValue); - delaySelect.selectmenu('refresh', true); + if (delay && delay.ResponseValue != '') { + delaySelect.val(delay.ResponseValue); + delaySelect.selectmenu('refresh', true); + } }); - // bind to port select change event + // bind to command delay change event delaySelect.change(function (event) { HG.Configure.MIG.InterfaceCommand(_this.Id, 'Options.Set', 'Delay', encodeURIComponent($(this).val())); }); + // populate serial port list HG.Configure.Interfaces.ServiceCall('Hardware.SerialPorts', function (ports) { portSelect.empty(); @@ -242,9 +254,9 @@

zwave_NodeAdd(function (res) { var nodeid = _this.NodeOperationPopup.find('[data-ui-field=nodeid]'); var message = _this.NodeOperationPopup.find('[data-ui-field=message]'); - if (res != 0) { + if (res.ResponseValue != 0) { HG.WebApp.Control.UpdateModules(); - nodeid.html(res); + nodeid.html(res.ResponseValue); message.html('node added.'); } else { @@ -263,9 +275,9 @@

zwave_NodeRemove(function (res) { var nodeid = _this.NodeOperationPopup.find('[data-ui-field=nodeid]'); var message = _this.NodeOperationPopup.find('[data-ui-field=message]'); - if (res != 0) { + if (res.ResponseValue != 0) { HG.WebApp.Control.UpdateModules(); - nodeid.html(res); + nodeid.html(res.ResponseValue); message.html('node removed.'); } else { diff --git a/BaseFiles/Common/html/pages/configure/maintenance/_maintenance.js b/BaseFiles/Common/html/pages/configure/maintenance/_maintenance.js index 3c1c7b37e..91d647e04 100644 --- a/BaseFiles/Common/html/pages/configure/maintenance/_maintenance.js +++ b/BaseFiles/Common/html/pages/configure/maintenance/_maintenance.js @@ -90,22 +90,19 @@ HG.WebApp.Maintenance.InitializePage = function () { html: "" }); HG.System.UpdateManager.InstallUpdate(function (res) { - var r = eval(res); - if (typeof r != 'undefined') { - // TODO: .... - if (r[0].ResponseValue == 'OK') { - $('#configure_system_updateinstall_status').html('Update install complete.'); - setTimeout(function() { window.location.replace("/"); }, 3000); - } - else if (r[0].ResponseValue == 'RESTART') { - $('#configure_system_updateinstall_status').html('Installing files... (HomeGenie service stopped)'); - } - else if (r[0].ResponseValue == 'ERROR') { - $('#configure_system_updateinstall_status').html('Error during installation progress.'); - // - $.mobile.loading('hide'); - HG.WebApp.Maintenance.LoadUpdateCheckSettings(); - } + // TODO: .... + if (res.ResponseValue == 'OK') { + $('#configure_system_updateinstall_status').html('Update install complete.'); + setTimeout(function() { window.location.replace("/"); }, 3000); + } + else if (res.ResponseValue == 'RESTART') { + $('#configure_system_updateinstall_status').html('Installing files... (HomeGenie service stopped)'); + } + else if (res.ResponseValue == 'ERROR') { + $('#configure_system_updateinstall_status').html('Error during installation progress.'); + // + $.mobile.loading('hide'); + HG.WebApp.Maintenance.LoadUpdateCheckSettings(); } }); }); @@ -127,22 +124,18 @@ HG.WebApp.Maintenance.InitializePage = function () { HG.System.UpdateManager.DownloadUpdate(function (res) { $.mobile.loading('hide'); HG.WebApp.Maintenance.LoadUpdateCheckSettings(); - // - var r = eval(res); - if (typeof r != 'undefined') { - // TODO: .... - if (r[0].ResponseValue == 'OK') { - $('#configure_system_updateinstall_status').html('Update files ready.'); - $('#configure_system_updateinstall_button').removeClass('ui-disabled'); - } - else if (r[0].ResponseValue == 'RESTART') { - $('#configure_system_updateinstall_status').html('Update files ready. HomeGenie will be restarted after updating.'); - $('#configure_system_updateinstall_button').removeClass('ui-disabled'); - } - else if (r[0].ResponseValue == 'ERROR') { - $('#configure_system_updateinstall_status').html('Error while downloading update files.'); - $('#configure_system_updateinstall_button').addClass('ui-disabled'); - } + // TODO: .... + if (res.ResponseValue == 'OK') { + $('#configure_system_updateinstall_status').html('Update files ready.'); + $('#configure_system_updateinstall_button').removeClass('ui-disabled'); + } + else if (res.ResponseValue == 'RESTART') { + $('#configure_system_updateinstall_status').html('Update files ready. HomeGenie will be restarted after updating.'); + $('#configure_system_updateinstall_button').removeClass('ui-disabled'); + } + else if (res.ResponseValue == 'ERROR') { + $('#configure_system_updateinstall_status').html('Error while downloading update files.'); + $('#configure_system_updateinstall_button').addClass('ui-disabled'); } }); }); @@ -361,8 +354,7 @@ HG.WebApp.Maintenance.LoadSettings = function () { HG.WebApp.Maintenance.LoadUpdateCheckSettings = function () { $.mobile.loading('show'); $('#configure_system_updateinstall_button').addClass('ui-disabled'); - HG.System.UpdateManager.GetUpdateList(function (data) { - var releasedata = eval(data); + HG.System.UpdateManager.GetUpdateList(function (releasedata) { if (releasedata.length == 0) { $('#configure_system_updatemanager_info').html('No updates available.'); $('#configure_system_updatemanager_detailsscroll').hide(); diff --git a/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediareceiver.js b/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediareceiver.js index 420c1c8c9..cf214f507 100644 --- a/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediareceiver.js +++ b/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediareceiver.js @@ -95,28 +95,28 @@ if (_this.PendingRequests == 0 && !_this.IsMouseDown) { var servicecall = HG.Control.Modules.ServiceCall; _this.PendingRequests++; - servicecall('AvMedia.GetTransportInfo', module.Domain, module.Address, '', function (res) { - var trinfo = eval(res)[0]; - var state = trinfo.CurrentTransportState; - if (_this.Widget != null) { - var playbutton = _this.Widget.find('[data-ui-field=media_play]'); - var pausebutton = _this.Widget.find('[data-ui-field=media_pause]'); - if (state == 'PAUSED_PLAYBACK') { - playbutton.show(); - pausebutton.hide(); - } - else if (state == 'STOPPED') { - playbutton.show(); - pausebutton.hide(); - _this.Widget.find('[data-ui-field=media_position]').html(''); - } - else if (state == 'PLAYING') { - playbutton.hide(); - pausebutton.show(); - servicecall('AvMedia.GetPositionInfo', module.Domain, module.Address, '', function (res) { - var posinfo = eval(res)[0]; - _this.Widget.find('[data-ui-field=media_position]').html(posinfo.RelTime); - }); + servicecall('AvMedia.GetTransportInfo', module.Domain, module.Address, '', function (trinfo) { + if (typeof trinfo != 'undefined') { + var state = trinfo.CurrentTransportState; + if (_this.Widget != null) { + var playbutton = _this.Widget.find('[data-ui-field=media_play]'); + var pausebutton = _this.Widget.find('[data-ui-field=media_pause]'); + if (state == 'PAUSED_PLAYBACK') { + playbutton.show(); + pausebutton.hide(); + } + else if (state == 'STOPPED') { + playbutton.show(); + pausebutton.hide(); + _this.Widget.find('[data-ui-field=media_position]').html(''); + } + else if (state == 'PLAYING') { + playbutton.hide(); + pausebutton.show(); + servicecall('AvMedia.GetPositionInfo', module.Domain, module.Address, '', function (posinfo) { + _this.Widget.find('[data-ui-field=media_position]').html(posinfo.RelTime); + }); + } } } _this.PendingRequests--; @@ -125,7 +125,7 @@ _this.PendingRequests++; servicecall('AvMedia.GetVolume', module.Domain, module.Address, '', function (res) { if (_this.Widget != null) { - _this.Widget.find('[data-ui-field=media_volume]').val(res); + _this.Widget.find('[data-ui-field=media_volume]').val(res.ResponseValue); _this.Widget.find('.ui-slider').width(250); _this.Widget.find('[data-ui-field=media_volume]').slider('refresh'); } @@ -134,7 +134,7 @@ // get mute status _this.PendingRequests++; servicecall('AvMedia.GetMute', module.Domain, module.Address, '', function (res) { - if (res == '0' || res.toLowerCase() == 'false') { + if (res.ResponseValue.toLowerCase() == 'false') { _this.Widget.find('[data-ui-field=media_mute]').attr('src', 'pages/control/widgets/homegenie/generic/images/media_mute.png'); _this.IsMuted = false; } diff --git a/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediaserver.js b/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediaserver.js index 48966638d..5b5d55576 100644 --- a/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediaserver.js +++ b/BaseFiles/Common/html/pages/control/widgets/homegenie/generic/mediaserver.js @@ -99,7 +99,7 @@ }); _this.ControlPopup.find('[data-ui-field=path]').html(path); $.mobile.loading('show'); - HG.Control.Modules.ServiceCall('AvMedia.Browse', _this.Module.Domain, _this.Module.Address, folderid, function (data) { + HG.Control.Modules.ServiceCall('AvMedia.Browse', _this.Module.Domain, _this.Module.Address, encodeURIComponent(folderid), function (data) { browselist.empty(); browsefiles.empty(); var items = eval(data); @@ -172,7 +172,7 @@ LoadItemData: function(item) { var _this = this; var vid = item.attr('data-context-id'); - HG.Control.Modules.ServiceCall('AvMedia.GetItem', _this.Module.Domain, _this.Module.Address, vid, function (data) { + HG.Control.Modules.ServiceCall('AvMedia.GetItem', _this.Module.Domain, _this.Module.Address, encodeURIComponent(vid), function (data) { var title = $(data.item).attr('dc:title'); if (typeof title != 'undefined' && title.length > 0) item.find('h3').html(title); @@ -183,6 +183,10 @@ var sampleFrequency = ''; var thumbnail = ''; var links = []; + // if item.res is not an array, we turn it into an array of one element + if (typeof data.item.res != 'undefined' && data.item.res.constructor !== Array) { + data.item.res = [ data.item.res ]; + } $.each(data.item.res, function(idx, el){ var protocolInfo = ''; try { @@ -191,16 +195,8 @@ if (typeof protocolInfo == 'undefined' || protocolInfo == '') return true; var protocolUrl = $(el).attr('#text'); - if (protocolInfo.indexOf('/') > 0) { - var format = ''; - var f = protocolInfo.substring(protocolInfo.indexOf('/')+1); - if (f.indexOf(':') > 0) { - f = f.substring(0, f.indexOf(':')); - if (f.indexOf('-') > 0) - f = f.substring(f.lastIndexOf('-')+1); - format = f; - } - if (protocolInfo.indexOf(':image/') > 0) { + if (protocolInfo.indexOf(':') > 0) { + if (protocolInfo.indexOf(':image/') > 0 || protocolInfo.indexOf(':fanart:') > 0 || protocolInfo.indexOf(':poster:') > 0) { if (thumbnail == '') thumbnail = protocolUrl; if (links.length == 0) { @@ -212,6 +208,14 @@ links.push(btn); } } else { + var format = ''; + var f = protocolInfo.substring(protocolInfo.indexOf('/')+1); + if (f.indexOf(':') > 0) { + f = f.substring(0, f.indexOf(':')); + if (f.indexOf('-') > 0) + f = f.substring(f.lastIndexOf('-')+1); + format = f; + } var bitrate = $(el).attr('@bitrate'); if (typeof bitrate == 'undefined' || bitrate == 0) bitrate = ''; diff --git a/BaseFiles/Common/programs.xml b/BaseFiles/Common/programs.xml index 9ebe1e969..6c91b305b 100644 --- a/BaseFiles/Common/programs.xml +++ b/BaseFiles/Common/programs.xml @@ -135,7 +135,7 @@ Program.GoBackground(); - 2015-11-01T20:32:29.859822Z + 2015-11-10T12:14:12.346427Z CSharp true @@ -255,7 +255,7 @@ For instructions see: http://developers.meethue.com/gettingstarted.html .Devices and Things - 2015-11-01T20:32:30.383584Z + 2015-11-10T12:14:12.861784Z CSharp true @@ -428,8 +428,8 @@ while (Program.IsEnabled) To activate this widget specify a valid user <strong>Key</strong> that can be obtained creating an account from <u>http://www.wunderground.com/weather/api/d/login.html</u> Weather and Enviroment - 2015-11-01T20:34:04.175301Z - + + 2015-11-10T12:14:13.361861Z CSharp true @@ -501,7 +501,7 @@ while (Program.IsEnabled) - 2015-11-01T20:32:31.362043Z + 2015-11-10T12:14:13.851527Z CSharp true @@ -1102,7 +1102,7 @@ Program.GoBackground(); - 2015-11-01T20:32:31.862301Z + 2015-11-10T12:14:14.352093Z CSharp true @@ -1149,7 +1149,7 @@ Program.GoBackground(); - 2015-11-01T20:32:32.364398Z + 2015-11-10T12:14:14.85267Z CSharp true @@ -1282,7 +1282,7 @@ var _armdisarm = new Action<bool>((armHome)=>{ if (Program.Parameter("Status.Level").Value == "0") { // disarming - Program.Parameter("HomeGenie.SecurityTriggered").Value = "0"; + Program.RaiseEvent("HomeGenie.SecurityTriggered", "0", "Security System"); } else { @@ -1446,7 +1446,7 @@ while (Program.IsEnabled) int sirenStatus = 0; while (Program.IsEnabled && Program.Parameter("HomeGenie.SecurityTriggered").Value == "1") { - if (sirenStatus == 0 && watchTimer.Elapsed.TotalSeconds >= Program.InputField("System.SirenStartTime").DecimalValue) + if (sirenStatus == 0 && watchTimer.Elapsed.TotalSeconds >= Program.Option("System.SirenStartTime").DecimalValue) { watchTimer.Stop(); sirenModules.On(); @@ -1454,7 +1454,7 @@ while (Program.IsEnabled) watchTimer.Start(); sirenStatus = 1; } - else if (sirenStatus == 1 && Program.InputField("System.SirenMaxTime").DecimalValue > 0 && watchTimer.Elapsed.TotalSeconds >= Program.InputField("System.SirenMaxTime").DecimalValue) + else if (sirenStatus == 1 && Program.Option("System.SirenMaxTime").DecimalValue > 0 && watchTimer.Elapsed.TotalSeconds >= Program.Option("System.SirenMaxTime").DecimalValue) { // turn off sirens if max time was set and elapsed sirenModules.Off(); @@ -1474,31 +1474,9 @@ while (Program.IsEnabled) Security Alarm System Basic Security Alarm System Security - - - checkbox - - Sensor,DoorWindow,DoorLock - HomeGenie.SecuritySensor - Use as Security Sensor - - - checkbox - - Sensor,DoorWindow,DoorLock - HomeGenie.SecurityTriggerHome - Also trigger when armed Home - - - checkbox - - Siren,Light,Dimmer,Switch - HomeGenie.SecurityAlarm - Use as Security Alarm - - - - 2015-11-01T20:32:32.871462Z + + 2015-11-10T12:15:41.832722Z + CSharp true @@ -1595,7 +1573,7 @@ Program.GoBackground(); Z-Wave - 2015-11-01T20:32:33.366118Z + 2015-11-10T12:14:15.855555Z CSharp true @@ -1650,7 +1628,7 @@ Program.GoBackground(); - 2015-11-01T20:32:33.865962Z + 2015-11-10T12:14:16.355826Z CSharp true @@ -1759,7 +1737,7 @@ Program.Run(); Messaging and Social - 2015-11-01T20:32:34.369428Z + 2015-11-10T12:14:16.859257Z CSharp true @@ -2097,7 +2075,7 @@ Currently limited to one client channel. - 2015-11-01T20:32:35.371366Z + 2015-11-10T12:14:17.861448Z CSharp true @@ -2195,7 +2173,7 @@ energy consumption. Energy Management - 2015-11-01T20:32:35.88248Z + 2015-11-10T12:14:18.373084Z CSharp true @@ -2344,7 +2322,7 @@ It requires that a manufacturer specific get has been issued on the node.Z-Wave - 2015-11-01T20:32:36.373069Z + 2015-11-10T12:14:18.86263Z CSharp true @@ -2591,7 +2569,7 @@ while (Program.IsEnabled) - 2015-11-01T20:32:36.876029Z + 2015-11-10T12:14:19.36597Z CSharp true @@ -6749,7 +6727,7 @@ while (Program.IsEnabled) - 2015-11-01T20:32:37.888167Z + 2015-11-10T12:14:20.380879Z CSharp true @@ -7462,7 +7440,7 @@ Also it lets you dim last addressed module using Up/Down button which can be def - 2015-11-01T20:32:38.383342Z + 2015-11-10T12:14:20.868012Z CSharp true diff --git a/BaseFiles/Common/programs/90.dll b/BaseFiles/Common/programs/90.dll index f7a3747b4..da1bd6045 100755 Binary files a/BaseFiles/Common/programs/90.dll and b/BaseFiles/Common/programs/90.dll differ diff --git a/Externals/g-labs/MIG.Controllers.dll b/Externals/g-labs/MIG.Controllers.dll index 06c64afdc..0cc988d1f 100755 Binary files a/Externals/g-labs/MIG.Controllers.dll and b/Externals/g-labs/MIG.Controllers.dll differ diff --git a/Externals/g-labs/MIG.Controllers.dll.mdb b/Externals/g-labs/MIG.Controllers.dll.mdb index 5927ac5eb..98d496259 100644 Binary files a/Externals/g-labs/MIG.Controllers.dll.mdb and b/Externals/g-labs/MIG.Controllers.dll.mdb differ diff --git a/Externals/g-labs/MIG.HomeAutomation.dll b/Externals/g-labs/MIG.HomeAutomation.dll index 7e7055865..3dc4c8708 100755 Binary files a/Externals/g-labs/MIG.HomeAutomation.dll and b/Externals/g-labs/MIG.HomeAutomation.dll differ diff --git a/Externals/g-labs/MIG.HomeAutomation.dll.mdb b/Externals/g-labs/MIG.HomeAutomation.dll.mdb index ac9a3313d..72cba9393 100644 Binary files a/Externals/g-labs/MIG.HomeAutomation.dll.mdb and b/Externals/g-labs/MIG.HomeAutomation.dll.mdb differ diff --git a/Externals/g-labs/MIG.Media.dll b/Externals/g-labs/MIG.Media.dll index e713762ec..134424d53 100755 Binary files a/Externals/g-labs/MIG.Media.dll and b/Externals/g-labs/MIG.Media.dll differ diff --git a/Externals/g-labs/MIG.Media.dll.mdb b/Externals/g-labs/MIG.Media.dll.mdb index e66ca7906..02b4b45b5 100644 Binary files a/Externals/g-labs/MIG.Media.dll.mdb and b/Externals/g-labs/MIG.Media.dll.mdb differ diff --git a/Externals/g-labs/MIG.Protocols.dll b/Externals/g-labs/MIG.Protocols.dll index 5fb618c54..1683af12c 100755 Binary files a/Externals/g-labs/MIG.Protocols.dll and b/Externals/g-labs/MIG.Protocols.dll differ diff --git a/Externals/g-labs/MIG.Protocols.dll.mdb b/Externals/g-labs/MIG.Protocols.dll.mdb index 52fc7f321..98abd2dab 100644 Binary files a/Externals/g-labs/MIG.Protocols.dll.mdb and b/Externals/g-labs/MIG.Protocols.dll.mdb differ diff --git a/Externals/g-labs/MIG.dll b/Externals/g-labs/MIG.dll index a244f4661..1ae420ea2 100755 Binary files a/Externals/g-labs/MIG.dll and b/Externals/g-labs/MIG.dll differ diff --git a/Externals/g-labs/MIG.dll.mdb b/Externals/g-labs/MIG.dll.mdb index 43154770b..89fd85215 100644 Binary files a/Externals/g-labs/MIG.dll.mdb and b/Externals/g-labs/MIG.dll.mdb differ diff --git a/Externals/g-labs/ZWaveLib.dll b/Externals/g-labs/ZWaveLib.dll index 6dc779735..4c6ebd199 100755 Binary files a/Externals/g-labs/ZWaveLib.dll and b/Externals/g-labs/ZWaveLib.dll differ diff --git a/Externals/g-labs/ZWaveLib.dll.mdb b/Externals/g-labs/ZWaveLib.dll.mdb index 0104f857b..403d66daf 100644 Binary files a/Externals/g-labs/ZWaveLib.dll.mdb and b/Externals/g-labs/ZWaveLib.dll.mdb differ diff --git a/Externals/g-labs/ZWaveLib.xml b/Externals/g-labs/ZWaveLib.xml index 1492aca03..ad0f64a4a 100644 --- a/Externals/g-labs/ZWaveLib.xml +++ b/Externals/g-labs/ZWaveLib.xml @@ -334,10 +334,18 @@ Discovery progress event handler. + + + Heal progress event handler. + Occurs during discovery process. + + + Occurs during heal process. + Node operation progress event handler. @@ -376,6 +384,11 @@ Gets or sets the name of the serial port. The name of the port. + + + Gets or sets the amount of command delay. + + The length of the delay in ms. Gets the status. @@ -409,6 +422,10 @@ Query capabilities, Supported Classes and Manufacturer Specific of each node. + + + Iterate through the nodes and performa a heal on each one + Gets the node information frame. @@ -504,6 +521,11 @@ Raises the discovery progress event. Arguments. + + + Raises the heal progress event. + + Arguments. Raises the node operation progress event. diff --git a/HISTORY.TXT b/HISTORY.TXT index 84443f622..7efce9a17 100644 --- a/HISTORY.TXT +++ b/HISTORY.TXT @@ -1,5 +1,12 @@ RELEASE HISTORY +18/11/2015 v1.1-beta.501 + - Added UPnP AvMedia.Seek command + - Added configurable command delay and heal network options to ZWave interface + - Fix blocking event propagation. Events are now processed asynchronously (also solves issue #237) + - Fix Security Alarm program events propagation issue + - Fixed Media Server browser widget not listing/linking files encoded in one format only; fixed also issues with XBMC and Kodi media player + 05/11/2015 v1.1-beta.500 - Fixed ZWave interface sensor timeout bug and sensor Status.Level "0.01" bug - Disabled limit of max one opened http connection per program in NetHelper diff --git a/HomeGenie/Service/HomeGenieService.cs b/HomeGenie/Service/HomeGenieService.cs index 39a0a1a02..86c82d2ec 100644 --- a/HomeGenie/Service/HomeGenieService.cs +++ b/HomeGenie/Service/HomeGenieService.cs @@ -546,8 +546,11 @@ private void migService_InterfacePropertyChanged(object sender, InterfacePropert { LogError(ex); } - - masterControlProgram.SignalPropertyChange(sender, module, args.EventData); + // Prevent event pump from blocking on other worker tasks + Utility.RunAsyncTask(() => + { + masterControlProgram.SignalPropertyChange(sender, module, args.EventData); + }); } else { diff --git a/HomeGenie/release_info.xml b/HomeGenie/release_info.xml index 7e18b6f92..9e44f9ee0 100644 --- a/HomeGenie/release_info.xml +++ b/HomeGenie/release_info.xml @@ -1,16 +1,12 @@  HomeGenie - 1.1 beta r500 + 1.1 beta r501 Latest public release. - - Fixed ZWave interface sensor timeout bug and sensor Status.Level "0.01" bug - - Disabled limit of max one opened http connection per program in NetHelper - - Improved media server widget with thumbnails and support for multiple bitrates and formats - - Added UPnP interface command "AvMedia.GetItem" - - Improved camera widget - - Fixed 'continuous Event Stream disconnection' bug when running on old mono ARM-hf (eg. Raspberry Pi) - - Updated Spanish locales - - Disabled periodic Weather Underground program notifications in the UI - - Reverted XTenLib to the using of Thread instead of Task - 2015-11-05T16:58:52.0000Z + - Added UPnP AvMedia.Seek command + - Added configurable command delay and heal network options to ZWave interface + - Fix blocking event propagation. Events are now processed asynchronously (also solves issue #237) + - Fix Security Alarm program events propagation issue + - Fixed Media Server browser widget not listing/linking files encoded in one format only; fixed also issues with XBMC and Kodi media player + 2015-11-18T14:25:17.0000Z diff --git a/HomeGenie_Linux/Packager/DEBIAN/md5sums b/HomeGenie_Linux/Packager/DEBIAN/md5sums index e66aadb00..fc166af64 100644 --- a/HomeGenie_Linux/Packager/DEBIAN/md5sums +++ b/HomeGenie_Linux/Packager/DEBIAN/md5sums @@ -3,7 +3,7 @@ 513c0ab6c041976fe0bfc13a0c3f1690 usr/local/bin/homegenie/websocket-sharp.dll a2cfe6b2fa0fe02e41ed5aa6a592376e usr/local/bin/homegenie/UnitsNet.dll cc27215f3e44078c573b0018b7f6d4c5 usr/local/bin/homegenie/homegenie_stats.db -03f881af9b27c78e41f349bfc35f5fe8 usr/local/bin/homegenie/MIG.dll +2d16ca040e4fb13e049781295f061c13 usr/local/bin/homegenie/MIG.dll 86342aca3b08488c2ae376b62f5af544 usr/local/bin/homegenie/startup_debug.sh fd387d7e07d27394fb2fa2d323ff8c5c usr/local/bin/homegenie/CREDITS.TXT ed3022822cd3dc3348bb51dc054f1574 usr/local/bin/homegenie/IronPython.dll @@ -39,25 +39,25 @@ e6d7626e06a8028c8759d354ac0292ef usr/local/bin/homegenie/lib/shared/uk/CronExpr b3a0e50dfe3bfb988838c3eb8892095f usr/local/bin/homegenie/lib/shared/no/CronExpressionDescriptor.resources.dll b28c8e3d0dd93543461eb01f2e5a0ee2 usr/local/bin/homegenie/lib/shared/de/CronExpressionDescriptor.resources.dll 9152e305b5638cacf958dab918e0a5b7 usr/local/bin/homegenie/lib/shared/UPnP.dll.mdb -307ff2f4e8793df854f930424f2873e0 usr/local/bin/homegenie/lib/mig/MIG.Controllers.dll -1667324c690ff6888da4e63da9c8682f usr/local/bin/homegenie/lib/mig/MIG.Media.dll +419c63466303958863e3cb552f2acc91 usr/local/bin/homegenie/lib/mig/MIG.Controllers.dll +4b9a7d5996299f8066ede35cd17a68b2 usr/local/bin/homegenie/lib/mig/MIG.Media.dll 37ec56873a3a793a229c008c38262b62 usr/local/bin/homegenie/lib/mig/XTenLib.dll 71cbc2cbf22d9703ddf26767d3bf814b usr/local/bin/homegenie/lib/mig/lircconfig.xml d74542475a616d242338fa16c60e3678 usr/local/bin/homegenie/lib/mig/W800Rf32Lib.dll 4b2e8cdefcdd848a1e4293864093ff7d usr/local/bin/homegenie/lib/mig/v4l/debian64_libCameraCaptureV4L.so 6d8594a2978b5070055a4c1ad0d460f5 usr/local/bin/homegenie/lib/mig/v4l/debian64_libCameraCaptureV4L.so.gd3 9fa7c1e2979434e4fd3eeb8fa259184c usr/local/bin/homegenie/lib/mig/v4l/raspbian_libCameraCaptureV4L.so -4f907935988508832672e37aa92e8c89 usr/local/bin/homegenie/lib/mig/MIG.HomeAutomation.dll -285173b225a6acbf4d898f7b91d573bc usr/local/bin/homegenie/lib/mig/MIG.Protocols.dll +e3d04de67f8e4cf9fa4259a39130421d usr/local/bin/homegenie/lib/mig/MIG.HomeAutomation.dll +ca71de7a3c556db84be080f0275a4e6d usr/local/bin/homegenie/lib/mig/MIG.Protocols.dll e2f6b564cb161a24fbd82e93352d1c9b usr/local/bin/homegenie/lib/mig/LibUsbDotNet.dll -1ea9479ac6c39ca30fb079e7dcc8ec82 usr/local/bin/homegenie/lib/mig/ZWaveLib.dll +da761d87ae5ca72947c8bb9239d2e5ff usr/local/bin/homegenie/lib/mig/ZWaveLib.dll 13874c9fb26ea8a5ea60d59a38ba450e usr/local/bin/homegenie/lib/mig/lircremotes.xml 359671d90f8a459524a8c844347ac1d5 usr/local/bin/homegenie/programs/71.dll 451906d98a1f31a32990553938684324 usr/local/bin/homegenie/programs/93.dll 4df6385424534c8e92a51f83bccd0ded usr/local/bin/homegenie/programs/81.dll 3f9f11df5a2b3e0320e2b4d63f63377d usr/local/bin/homegenie/programs/200.dll 4bb09308fbff24bcbb4f169da6571389 usr/local/bin/homegenie/programs/26.dll -02dd90f8a52af40f021b08bde9eefec7 usr/local/bin/homegenie/programs/90.dll +b89b7a0ff3dd8496e8ac315c9b621331 usr/local/bin/homegenie/programs/90.dll 45647c37ceea6c0438e2b21a16caeaf7 usr/local/bin/homegenie/programs/76.dll abc1f4ad41eacbd09e77d583d90b88a8 usr/local/bin/homegenie/programs/84.dll 1bb73529eb4f53abf9bcec7477a729cf usr/local/bin/homegenie/programs/28.dll @@ -109,7 +109,7 @@ f85bd266c0d92a420ea12d5835156db8 usr/local/bin/homegenie/programs/7.dll f44705a2e7251541db32e4761cf6bae6 usr/local/bin/homegenie/programs/41.dll 8efb9babdfbfb500e59f0cc1c10d372c usr/local/bin/homegenie/programs/16.dll 6e911e0a393f7d7d6f2de035fa4f883b usr/local/bin/homegenie/Microsoft.Scripting.Metadata.dll -d5d1f74245aeb8adc3c7bf2964a0e77f usr/local/bin/homegenie/HomeGenie.exe.mdb +57a8aca478abd78e3cea01ba4bb02783 usr/local/bin/homegenie/HomeGenie.exe.mdb edb4222ca9b4aa24ff7ad7dc5d63ab89 usr/local/bin/homegenie/NetClientLib.dll.mdb 198a54b1a3bba2d5300270ea6f1b9cb5 usr/local/bin/homegenie/Common.Logging.dll 037a39c0e60471e2ad6a155519aabaf8 usr/local/bin/homegenie/Common.dll.mdb @@ -124,9 +124,9 @@ b367f1a0f7ba435a0c92f591f4ae0070 usr/local/bin/homegenie/Raspberry.IO.Component 027d050500b7bb55a5ff9ae25aff0168 usr/local/bin/homegenie/Linux.dll 702ba55b7993d65eee480c723c150a1d usr/local/bin/homegenie/Raspberry.IO.InterIntegratedCircuit.dll 2074c256e8b7a372e28490a436a8e04d usr/local/bin/homegenie/NLog.dll -aec0904531f8f71908ca988931e71828 usr/local/bin/homegenie/HISTORY.TXT +990e3ec9796ebbbfb52339201630e514 usr/local/bin/homegenie/HISTORY.TXT 3435a8ca2eb89ec7fc13a463590121c0 usr/local/bin/homegenie/README.TXT -ea6b979fb9b1201d5dcb36772a3ce4c3 usr/local/bin/homegenie/programs.xml +edfb063870ff9ba02471e0f7213317ef usr/local/bin/homegenie/programs.xml 58d4389f29365489f41cd547eb1f10ec usr/local/bin/homegenie/modules.xml a19a8070a77444aafa96d3fbe033c42e usr/local/bin/homegenie/IronRuby.Libraries.dll 75bc82884f5bd1ab9c0a53ca0522e255 usr/local/bin/homegenie/Raspberry.IO.Interop.dll @@ -872,7 +872,7 @@ bac553cdffda0607623ca5b553e7e0e5 usr/local/bin/homegenie/html/pages/control/wid 0a552fdccf2fff6d67aad76f905c5854 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/energymonitor.js 0498f64a1329e92dd42721c05fd07334 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/generic.html a6722a99e5cd17437a7c180117c5c276 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/link.js -49bc3cc9c2d468844e76b1928208fb76 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/mediareceiver.js +50b516ae6c8a48d0bbcc78491ebae755 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/mediareceiver.js 4ad4ab8fce174ddc836bc727969e2d8b usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/doorwindow.js 09f0b1f9d1e22ad22db0aa69f9f85555 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/sensor.html 6b8beb90e33605077dd553729fe4f643 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/energymonitor.html @@ -996,7 +996,7 @@ a7b66f6c274401de96a368d888ea9596 usr/local/bin/homegenie/html/pages/control/wid 25872392addd246c71665caca9b3acde usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/shutter.js 23f2b3e5cc2b63908280739d4705430d usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/securitysystem.js 15bfa35fe64e5d9e6240ec471e8d6bb6 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/light.js -ed7cc6c15ae860c7c27844e7c414015a usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/mediaserver.js +3d67f396fd308f49c4325f442b6376ef usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/mediaserver.js 57aa59c98ffe503f31a986907fe52dc9 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/switch.html 8662ca3480b3caa089ebcb6bfed5bced usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/camerainput.js 84c6aba927ad341061091d9124f25858 usr/local/bin/homegenie/html/pages/control/widgets/homegenie/generic/program.js @@ -1033,13 +1033,13 @@ be3642f282ec1acabb42533d14602e88 usr/local/bin/homegenie/html/pages/configure/i 30d5ddfe1f3fdc6ee3dd8b82fed80c55 usr/local/bin/homegenie/html/pages/configure/interfaces/_systemsettings.js 36854f9a3b53d63d425281b0b8ea228e usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/camerainput.html 0f669068e6597cf21ec9aa061804ba26 usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/w800rf.html -2c37c888936d569d5ea1083fc292027b usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/zwave.html +01d9efbcd1279f92257fe4f675c01af2 usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/zwave.html 27ebe3de1f7ee93628fd96895e0466ae usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/insteon.html 2fee98ad08aa23c08a9db168e94f1ba6 usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/lircremote.html 8836c97cad677590515a63ffa9b63f68 usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/x10.html 7e86b4d6367578767de5f3bc6ce33eec usr/local/bin/homegenie/html/pages/configure/interfaces/configlet/upnp.html 7b52e2da234e79f5c300127150e46342 usr/local/bin/homegenie/html/pages/configure/maintenance/main.html -3db066615ac212b43a63ae7cd737baf4 usr/local/bin/homegenie/html/pages/configure/maintenance/_maintenance.js +3d782a1f9687e25dc96bfea47b6e960f usr/local/bin/homegenie/html/pages/configure/maintenance/_maintenance.js 17dbc2f4236458b774197c65f8da7f8e usr/local/bin/homegenie/html/pages/configure/groups/_groupslist.js cd9a21cbada7574eae09abe47c01249f usr/local/bin/homegenie/html/pages/configure/groups/_groupmodules.js 2c5284a1f0794f7fbcf6302e3c2aceea usr/local/bin/homegenie/html/pages/configure/groups/listgroups.html @@ -1784,14 +1784,14 @@ b8459e32556b6e692fae8f9ff81817c9 usr/local/bin/homegenie/html/ui/core/popup.cro 8c62c286d03fd664a54dafcffaeb5fe3 usr/local/bin/homegenie/Raspberry.IO.SerialPeripheralInterface.dll c01449322109e7477c208be018fd45fb usr/local/bin/homegenie/ADDONS.md f616ece797146a9d6395f51d2e24e2f7 usr/local/bin/homegenie/startup.sh -4ef9264902ca39c02d3b84989a0b1bb3 usr/local/bin/homegenie/HomeGenie.exe -81d278b042861d17d3c81c17b01db5dc usr/local/bin/homegenie/release_info.xml +acadba8549470c5caef27c9038f987be usr/local/bin/homegenie/HomeGenie.exe +7735cf539475cd877c92df4d83d7bb18 usr/local/bin/homegenie/release_info.xml 536920e88b28850b8df27484746134f4 usr/local/bin/homegenie/NetClientLib.dll 5405413fff79b8d9c747aa900f60f082 usr/local/bin/homegenie/sqlite3.dll 272aa48b0bfd90305c6c27b4f4538566 usr/local/bin/homegenie/scheduler.xml 3f033fbe348679b9baf41cec2ebc0c1a usr/local/bin/homegenie/groups.xml 61b0c6d8eb2c756355d52df2ef6170c6 usr/local/bin/homegenie/Microsoft.Scripting.dll -b8704a9c1abd4a676d9c8cf39e994628 usr/local/bin/homegenie/homegenie_factory_config.zip +a097890723141286b586cd5dee084d2b usr/local/bin/homegenie/homegenie_factory_config.zip acbb8de3a6a8f53d69957e2607097992 usr/local/bin/homegenie/DEVELOPERS.TXT ae7bbf0f4b96d2a0effd97d69befb47e usr/local/bin/homegenie/CommonMark.dll 93675a8ef36065d0c64fe1bf4fb79902 usr/local/bin/homegenie/IronRuby.Libraries.Yaml.dll diff --git a/HomeGenie_Windows/Packager/setup.iss b/HomeGenie_Windows/Packager/setup.iss index 2e4cf4d87..7e10649bb 100644 --- a/HomeGenie_Windows/Packager/setup.iss +++ b/HomeGenie_Windows/Packager/setup.iss @@ -4,10 +4,10 @@ [Setup] AppName=HomeGenie -AppVerName=HomeGenie 1.1 beta (r499) +AppVerName=HomeGenie 1.1 beta (r501) AppPublisher=GenieLabs AppPublisherURL=http://www.homegenie.it -AppVersion=1.1 beta (r499) +AppVersion=1.1 beta (r501) DefaultDirName={pf}\HomeGenie DefaultGroupName=HomeGenie Compression=lzma @@ -198,8 +198,8 @@ Type: files; Name: "{app}\SQLite.Interop.dll"; ;Name: "quicklaunchicon"; Description: "{cm:CreateQuickLaunchIcon}"; GroupDescription: "{cm:AdditionalIcons}"; [Icons] -Name: "{group}\HomeGenie 1.1 beta (r499)"; Filename: "{app}\HomeGenieManager.exe" -Name: "{group}\Uninstall HomeGenie 1.1 beta (r499)"; Filename: "{uninstallexe}" +Name: "{group}\HomeGenie 1.1 beta (r501)"; Filename: "{app}\HomeGenieManager.exe" +Name: "{group}\Uninstall HomeGenie 1.1 beta (r501)"; Filename: "{uninstallexe}" Name: "{commondesktop}\HomeGenie"; Filename: "{app}\HomeGenieManager.exe" [Run]