lavva.exalushome.extalife
Version:
Library implementing communication and abstraction layers for ExtaLife API in ExalusHome system
2 lines • 5.09 kB
JavaScript
"use strict";(self.webpackChunklavva_exalushome_extalife=self.webpackChunklavva_exalushome_extalife||[]).push([[939],{939:(e,n,t)=>{t.r(n),t.d(n,{SsrConfigService:()=>w});var r=t(5933);class a extends r.r{}var s=t(3826),i=t(6823),o=t(4756),u=t(7581),l=t(2734),c=function(e,n,t,r){return new(t||(t=Promise))((function(a,s){function i(e){try{u(r.next(e))}catch(e){s(e)}}function o(e){try{u(r.throw(e))}catch(e){s(e)}}function u(e){var n;e.done?a(e.value):(n=e.value,n instanceof t?n:new t((function(e){e(n)}))).then(i,o)}u((r=r.apply(e,n||[])).next())}))};class d extends r.r{constructor(){super()}RunAutomaticCalibrationAsync(e,n){return c(this,void 0,void 0,(function*(){var t;try{if(!e.Channels.any((e=>e.Number===n)))return new i.ZR(r.L.InvalidChannelNumber,`Cannot calibrate blind - invalid channel number: ${n}`);const c=new u.Tz;if(c.Action=u.VP.Stop,(yield e.Channels.first((e=>e.Number==n)).ExecuteTaskAsync(c))!==l.T.Executed)return new i.ZR(r.L.DeviceNotResponding,"Cannot calibrate blind - device is not responding.");const d=yield null===(t=this._connection)||void 0===t?void 0:t.SendAndWaitForResponseAsync(new h(e.Guid),8e3,!1);if(null==d||null==d.Status)return new i.ZR(r.L.OtherError,"Cannot calibrate blind - calibration request failed for an unknown reason.");switch(d.Status){case o.nW.OK:var a=new s.f3;return a.CalibrationStatus=s.Py.AutoLernInProgress,a.Channel=n,a.StateReliability=s.QI.Confident,a;case o.nW.Error:return new i.ZR(r.L.CalibrationsIsCurrentlyRunning,"Cannot calibrate blind - calibration is currently running.");default:return new i.ZR(r.L.OtherError,`Cannot calibrate blind - calibration request failed - request status code: ${d.Status}`)}}catch(e){return new i.ZR(r.L.OtherError,`Cannot calibrate blind - fatal error: ${e}`)}}))}GetHeadSensorStatusAsync(e,n){return c(this,void 0,void 0,(function*(){var t;try{if(!e.Channels.any((e=>e.Number===n)))return new i.ZR(r.L.InvalidChannelNumber,`Cannot get head sensor status - invalid channel number: ${n}`);const a=yield null===(t=this._connection)||void 0===t?void 0:t.SendAndWaitForResponseAsync(new v(e.Guid,n),8e3,!1);return null==a||null==a.Status?new i.ZR(r.L.OtherError,"Cannot get head sensor status - request failed for an unknown reason."):a.Status!=o.nW.OK?new i.ZR(r.L.OtherError,`Cannot get head sensor status - request failed - request status code: ${a.Status}`):null==a.Data?new i.ZR(r.L.NoData,"Cannot get head sensor status - request failed - no data received."):a.Data}catch(e){return new i.ZR(r.L.OtherError,`Cannot get head sensor status - fatal error: ${e}`)}}))}SwitchHeadSensorStatusAsync(e,n,t){return c(this,void 0,void 0,(function*(){var r;try{if(!n.Channels.any((e=>e.Number===t)))return o.nW.WrongData;const a=yield null===(r=this._connection)||void 0===r?void 0:r.SendAndWaitForResponseAsync(new f(n.Guid,t,e),8e3,!1);return null==a||null==a.Status?o.nW.FatalError:a.Status}catch(e){return o.nW.FatalError}}))}ChangeMovementDirectionAsync(e,n){return c(this,void 0,void 0,(function*(){var t;try{if(!e.Channels.any((e=>e.Number===n)))return o.nW.WrongData;const r=yield null===(t=this._connection)||void 0===t?void 0:t.SendAndWaitForResponseAsync(new C(e.Guid,n),8e3,!1);return null==r||null==r.Status?o.nW.FatalError:r.Status}catch(e){return o.nW.FatalError}}))}GetWorkLogAsync(e,n){return c(this,void 0,void 0,(function*(){var t;try{if(!e.Channels.any((e=>e.Number===n)))return new i.ZR(r.L.InvalidChannelNumber,`Cannot get head sensor status - invalid channel number: ${n}`);const a=yield null===(t=this._connection)||void 0===t?void 0:t.SendAndWaitForResponseAsync(new b(e.Guid,n),8e3,!1);return null==a||null==a.Status?new i.ZR(r.L.OtherError,"Cannot get work log - request failed for an unknown reason."):a.Status!=o.nW.OK?new i.ZR(r.L.OtherError,`Cannot get work log - request failed - request status code: ${a.Status}`):null==a.Data?new i.ZR(r.L.NoData,"Cannot get work log - request failed - no data received."):a.Data}catch(e){return new i.ZR(r.L.OtherError,`Cannot get work log - fatal error: ${e}`)}}))}}class h extends o.CP{constructor(e){super(),this.Resource="/extafree2/blind/calibration/auto",this.Method=o.IT.Get,this.Data=e}}class v extends o.CP{constructor(e,n){super(),this.Resource="/extalife/device/blind/head/sensor/status",this.Method=o.IT.Get,this.Data={DeviceGuid:e,Channel:n}}}class f extends o.CP{constructor(e,n,t){super(),this.Resource="/extalife/device/blind/head/sensor/switch",this.Method=o.IT.Put,this.Data={DeviceGuid:e,Channel:n,Enable:t}}}class C extends o.CP{constructor(e,n){super(),this.Resource="/extalife/device/blind/direction/reverse",this.Method=o.IT.Post,this.Data={DeviceGuid:e,Channel:n}}}class b extends o.CP{constructor(e,n){super(),this.Resource="/extalife/device/blind/work/log",this.Method=o.IT.Get,this.Data={DeviceGuid:e,Channel:n}}}class w extends a{constructor(){super(),this._services={Ssr_4_0_0_0:new d}}GetServiceName(){return w.ServiceName}VersionedConfigurationOptions(){return{"^4.0.0.0":this._services.Ssr_4_0_0_0}}}w.ServiceName="SsrConfigService"}}]);
//# sourceMappingURL=939-exalushome-extalife.bundle.js.map