@espressif/rainmaker-neo-base-sdk 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/README.md +206 -0
- package/dist/cjs/ESPDevice.js +35 -0
- package/dist/cjs/ESPDevice.js.map +1 -0
- package/dist/cjs/ESPRMNeoAuth.js +61 -0
- package/dist/cjs/ESPRMNeoAuth.js.map +1 -0
- package/dist/cjs/ESPRMNeoAutomation.js +48 -0
- package/dist/cjs/ESPRMNeoAutomation.js.map +1 -0
- package/dist/cjs/ESPRMNeoBase.js +250 -0
- package/dist/cjs/ESPRMNeoBase.js.map +1 -0
- package/dist/cjs/ESPRMNeoDevice.js +51 -0
- package/dist/cjs/ESPRMNeoDevice.js.map +1 -0
- package/dist/cjs/ESPRMNeoDeviceParam.js +54 -0
- package/dist/cjs/ESPRMNeoDeviceParam.js.map +1 -0
- package/dist/cjs/ESPRMNeoGroup.js +50 -0
- package/dist/cjs/ESPRMNeoGroup.js.map +1 -0
- package/dist/cjs/ESPRMNeoNode.js +283 -0
- package/dist/cjs/ESPRMNeoNode.js.map +1 -0
- package/dist/cjs/ESPRMNeoSchedule.js +66 -0
- package/dist/cjs/ESPRMNeoSchedule.js.map +1 -0
- package/dist/cjs/ESPRMNeoService.js +36 -0
- package/dist/cjs/ESPRMNeoService.js.map +1 -0
- package/dist/cjs/ESPRMNeoServiceParam.js +52 -0
- package/dist/cjs/ESPRMNeoServiceParam.js.map +1 -0
- package/dist/cjs/ESPRMNeoSharingRequest.js +33 -0
- package/dist/cjs/ESPRMNeoSharingRequest.js.map +1 -0
- package/dist/cjs/ESPRMNeoTrigger.js +50 -0
- package/dist/cjs/ESPRMNeoTrigger.js.map +1 -0
- package/dist/cjs/ESPRMNeoUser.js +82 -0
- package/dist/cjs/ESPRMNeoUser.js.map +1 -0
- package/dist/cjs/index.js +352 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/Connect.js +13 -0
- package/dist/cjs/methods/ESPDevice/Connect.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/Disconnect.js +15 -0
- package/dist/cjs/methods/ESPDevice/Disconnect.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/GetDeviceCapabilities.js +13 -0
- package/dist/cjs/methods/ESPDevice/GetDeviceCapabilities.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/GetDeviceVersion.js +13 -0
- package/dist/cjs/methods/ESPDevice/GetDeviceVersion.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/InitializeSession.js +13 -0
- package/dist/cjs/methods/ESPDevice/InitializeSession.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/InitiateUserNodeMapping.js +14 -0
- package/dist/cjs/methods/ESPDevice/InitiateUserNodeMapping.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/Provision.js +88 -0
- package/dist/cjs/methods/ESPDevice/Provision.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/ScanWifiList.js +13 -0
- package/dist/cjs/methods/ESPDevice/ScanWifiList.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/SendData.js +13 -0
- package/dist/cjs/methods/ESPDevice/SendData.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/SetNetworkCredentials.js +13 -0
- package/dist/cjs/methods/ESPDevice/SetNetworkCredentials.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/SetProofOfPossession.js +13 -0
- package/dist/cjs/methods/ESPDevice/SetProofOfPossession.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/StartAssistedClaiming.js +260 -0
- package/dist/cjs/methods/ESPDevice/StartAssistedClaiming.js.map +1 -0
- package/dist/cjs/methods/ESPDevice/VerifyUserNodeMapping.js +14 -0
- package/dist/cjs/methods/ESPDevice/VerifyUserNodeMapping.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/ChangePassword.js +46 -0
- package/dist/cjs/methods/ESPRMNeoAuth/ChangePassword.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/ConfirmSignUp.js +41 -0
- package/dist/cjs/methods/ESPRMNeoAuth/ConfirmSignUp.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/ForgotPassword.js +39 -0
- package/dist/cjs/methods/ESPRMNeoAuth/ForgotPassword.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/GetLoggedInUser.js +56 -0
- package/dist/cjs/methods/ESPRMNeoAuth/GetLoggedInUser.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/Login.js +49 -0
- package/dist/cjs/methods/ESPRMNeoAuth/Login.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/SendSignUpCode.js +47 -0
- package/dist/cjs/methods/ESPRMNeoAuth/SendSignUpCode.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAuth/SetNewPassword.js +41 -0
- package/dist/cjs/methods/ESPRMNeoAuth/SetNewPassword.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/AddAction.js +23 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/AddAction.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/AddCondition.js +27 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/AddCondition.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/Delete.js +29 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/Delete.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/RemoveAction.js +23 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/RemoveAction.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/RemoveCondition.js +23 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/RemoveCondition.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/Update.js +40 -0
- package/dist/cjs/methods/ESPRMNeoAutomation/Update.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoDevice/GetParams.js +34 -0
- package/dist/cjs/methods/ESPRMNeoDevice/GetParams.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoDeviceParam/GetLatestTSData.js +26 -0
- package/dist/cjs/methods/ESPRMNeoDeviceParam/GetLatestTSData.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoDeviceParam/GetRawTSData.js +28 -0
- package/dist/cjs/methods/ESPRMNeoDeviceParam/GetRawTSData.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoDeviceParam/GetTSData.js +28 -0
- package/dist/cjs/methods/ESPRMNeoDeviceParam/GetTSData.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/AddNode.js +29 -0
- package/dist/cjs/methods/ESPRMNeoGroup/AddNode.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/CreateAutomation.js +32 -0
- package/dist/cjs/methods/ESPRMNeoGroup/CreateAutomation.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/CreateSchedule.js +54 -0
- package/dist/cjs/methods/ESPRMNeoGroup/CreateSchedule.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/CreateSubGroup.js +39 -0
- package/dist/cjs/methods/ESPRMNeoGroup/CreateSubGroup.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/Delete.js +30 -0
- package/dist/cjs/methods/ESPRMNeoGroup/Delete.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/DeleteAllSchedules.js +34 -0
- package/dist/cjs/methods/ESPRMNeoGroup/DeleteAllSchedules.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetAutomation.js +19 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetAutomation.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetAutomations.js +28 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetAutomations.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetNode.js +22 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetNode.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetNodes.js +20 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetNodes.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetSchedules.js +42 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetSchedules.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetSharingInfo.js +33 -0
- package/dist/cjs/methods/ESPRMNeoGroup/GetSharingInfo.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/Leave.js +22 -0
- package/dist/cjs/methods/ESPRMNeoGroup/Leave.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/RemoveMember.js +29 -0
- package/dist/cjs/methods/ESPRMNeoGroup/RemoveMember.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/RemoveNode.js +26 -0
- package/dist/cjs/methods/ESPRMNeoGroup/RemoveNode.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/SetParams.js +29 -0
- package/dist/cjs/methods/ESPRMNeoGroup/SetParams.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/Share.js +34 -0
- package/dist/cjs/methods/ESPRMNeoGroup/Share.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoGroup/UpdateName.js +37 -0
- package/dist/cjs/methods/ESPRMNeoGroup/UpdateName.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/CreateSchedule.js +47 -0
- package/dist/cjs/methods/ESPRMNeoNode/CreateSchedule.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/CreateTrigger.js +40 -0
- package/dist/cjs/methods/ESPRMNeoNode/CreateTrigger.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/Delete.js +31 -0
- package/dist/cjs/methods/ESPRMNeoNode/Delete.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetConfig.js +13 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetConfig.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetCustomParamLatestTSData.js +20 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetCustomParamLatestTSData.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetCustomParamRawTSData.js +22 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetCustomParamRawTSData.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetCustomParamTSData.js +22 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetCustomParamTSData.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetSchedules.js +22 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetSchedules.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetTriggers.js +28 -0
- package/dist/cjs/methods/ESPRMNeoNode/GetTriggers.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveAllSchedules.js +22 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveAllSchedules.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveAllTriggers.js +22 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveAllTriggers.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveSchedule.js +35 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveSchedule.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveTrigger.js +27 -0
- package/dist/cjs/methods/ESPRMNeoNode/RemoveTrigger.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/SetParams.js +20 -0
- package/dist/cjs/methods/ESPRMNeoNode/SetParams.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/SubscriptionConfig.js +25 -0
- package/dist/cjs/methods/ESPRMNeoNode/SubscriptionConfig.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/Sync.js +30 -0
- package/dist/cjs/methods/ESPRMNeoNode/Sync.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoNode/UnsubscribeFromMqttUpdates.js +24 -0
- package/dist/cjs/methods/ESPRMNeoNode/UnsubscribeFromMqttUpdates.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoSchedule/Delete.js +19 -0
- package/dist/cjs/methods/ESPRMNeoSchedule/Delete.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoSchedule/Enable.js +13 -0
- package/dist/cjs/methods/ESPRMNeoSchedule/Enable.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoSchedule/Update.js +50 -0
- package/dist/cjs/methods/ESPRMNeoSchedule/Update.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoService/GetParams.js +42 -0
- package/dist/cjs/methods/ESPRMNeoService/GetParams.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoSharingRequest/Accept.js +37 -0
- package/dist/cjs/methods/ESPRMNeoSharingRequest/Accept.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoSharingRequest/Decline.js +37 -0
- package/dist/cjs/methods/ESPRMNeoSharingRequest/Decline.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoTrigger/Delete.js +19 -0
- package/dist/cjs/methods/ESPRMNeoTrigger/Delete.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoTrigger/Enable.js +13 -0
- package/dist/cjs/methods/ESPRMNeoTrigger/Enable.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoTrigger/Update.js +34 -0
- package/dist/cjs/methods/ESPRMNeoTrigger/Update.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/CreateESPDevice.js +32 -0
- package/dist/cjs/methods/ESPRMNeoUser/CreateESPDevice.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/CreateGroup.js +39 -0
- package/dist/cjs/methods/ESPRMNeoUser/CreateGroup.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/EventSubscription.js +50 -0
- package/dist/cjs/methods/ESPRMNeoUser/EventSubscription.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/GetGroups.js +54 -0
- package/dist/cjs/methods/ESPRMNeoUser/GetGroups.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/GetTemporaryAWSCredentials.js +79 -0
- package/dist/cjs/methods/ESPRMNeoUser/GetTemporaryAWSCredentials.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/GetUserInfo.js +39 -0
- package/dist/cjs/methods/ESPRMNeoUser/GetUserInfo.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/ListIntegrations.js +37 -0
- package/dist/cjs/methods/ESPRMNeoUser/ListIntegrations.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/ListSharingRequests.js +31 -0
- package/dist/cjs/methods/ESPRMNeoUser/ListSharingRequests.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/Logout.js +40 -0
- package/dist/cjs/methods/ESPRMNeoUser/Logout.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/MQTT/AssumeRole.js +38 -0
- package/dist/cjs/methods/ESPRMNeoUser/MQTT/AssumeRole.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/MQTT/ConnectMQTT.js +67 -0
- package/dist/cjs/methods/ESPRMNeoUser/MQTT/ConnectMQTT.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/MQTT/DisconnectMQTT.js +29 -0
- package/dist/cjs/methods/ESPRMNeoUser/MQTT/DisconnectMQTT.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/RegisterIntegrationEndpoint.js +41 -0
- package/dist/cjs/methods/ESPRMNeoUser/RegisterIntegrationEndpoint.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/SearchESPDevices.js +50 -0
- package/dist/cjs/methods/ESPRMNeoUser/SearchESPDevices.js.map +1 -0
- package/dist/cjs/methods/ESPRMNeoUser/UnregisterIntegrationEndpoint.js +44 -0
- package/dist/cjs/methods/ESPRMNeoUser/UnregisterIntegrationEndpoint.js.map +1 -0
- package/dist/cjs/proto/constants.js +24 -0
- package/dist/cjs/proto/constants.js.map +1 -0
- package/dist/cjs/proto/esp_local_ctrl.js +787 -0
- package/dist/cjs/proto/esp_local_ctrl.js.map +1 -0
- package/dist/cjs/proto/esp_rmaker_chal_resp.js +465 -0
- package/dist/cjs/proto/esp_rmaker_chal_resp.js.map +1 -0
- package/dist/cjs/proto/esp_rmaker_claim.js +358 -0
- package/dist/cjs/proto/esp_rmaker_claim.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoAPIManager.js +208 -0
- package/dist/cjs/services/ESPRMNeoAPIManager.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/ChallengeResponseHelper.js +106 -0
- package/dist/cjs/services/ESPRMNeoHelpers/ChallengeResponseHelper.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/ChannelRegistration.js +49 -0
- package/dist/cjs/services/ESPRMNeoHelpers/ChannelRegistration.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/CheckTokenExpiry.js +25 -0
- package/dist/cjs/services/ESPRMNeoHelpers/CheckTokenExpiry.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/ClaimingHelper.js +221 -0
- package/dist/cjs/services/ESPRMNeoHelpers/ClaimingHelper.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/DecodeToken.js +52 -0
- package/dist/cjs/services/ESPRMNeoHelpers/DecodeToken.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/DelegatedTransportHandler.js +132 -0
- package/dist/cjs/services/ESPRMNeoHelpers/DelegatedTransportHandler.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/FetchTSData.js +137 -0
- package/dist/cjs/services/ESPRMNeoHelpers/FetchTSData.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/GetCurrentTimestamp.js +18 -0
- package/dist/cjs/services/ESPRMNeoHelpers/GetCurrentTimestamp.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/NodeMappingHelper.js +45 -0
- package/dist/cjs/services/ESPRMNeoHelpers/NodeMappingHelper.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/TransformEncoding.js +66 -0
- package/dist/cjs/services/ESPRMNeoHelpers/TransformEncoding.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoHelpers/transformShadowToNodeUpdate.js +55 -0
- package/dist/cjs/services/ESPRMNeoHelpers/transformShadowToNodeUpdate.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoMqtt/ESPRMNeoMqtt.js +120 -0
- package/dist/cjs/services/ESPRMNeoMqtt/ESPRMNeoMqtt.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoStorage/DefaultStorageAdapter.js +52 -0
- package/dist/cjs/services/ESPRMNeoStorage/DefaultStorageAdapter.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoStorage/ESPRMNeoStorage.js +142 -0
- package/dist/cjs/services/ESPRMNeoStorage/ESPRMNeoStorage.js.map +1 -0
- package/dist/cjs/services/ESPRMNeoSubscriptionManager.js +357 -0
- package/dist/cjs/services/ESPRMNeoSubscriptionManager.js.map +1 -0
- package/dist/cjs/services/ESPSigV4APIManager.js +328 -0
- package/dist/cjs/services/ESPSigV4APIManager.js.map +1 -0
- package/dist/cjs/services/ESPTransport/ESPDiscovery/ESPDiscoveryManager.js +62 -0
- package/dist/cjs/services/ESPTransport/ESPDiscovery/ESPDiscoveryManager.js.map +1 -0
- package/dist/cjs/services/ESPTransport/ESPLocalControlTransport.js +157 -0
- package/dist/cjs/services/ESPTransport/ESPLocalControlTransport.js.map +1 -0
- package/dist/cjs/services/ESPTransport/ESPMqttTransport.js +26 -0
- package/dist/cjs/services/ESPTransport/ESPMqttTransport.js.map +1 -0
- package/dist/cjs/services/ESPTransport/ESPTransportManager.js +42 -0
- package/dist/cjs/services/ESPTransport/ESPTransportManager.js.map +1 -0
- package/dist/cjs/services/MQTTSubscriptionChannel.js +274 -0
- package/dist/cjs/services/MQTTSubscriptionChannel.js.map +1 -0
- package/dist/cjs/services/NodeMQTTOrchestrator.js +558 -0
- package/dist/cjs/services/NodeMQTTOrchestrator.js.map +1 -0
- package/dist/cjs/services/NodeMQTTOrchestratorHelpers.js +81 -0
- package/dist/cjs/services/NodeMQTTOrchestratorHelpers.js.map +1 -0
- package/dist/cjs/services/NodeUpdatesBus.js +53 -0
- package/dist/cjs/services/NodeUpdatesBus.js.map +1 -0
- package/dist/cjs/types/discovery.js +29 -0
- package/dist/cjs/types/discovery.js.map +1 -0
- package/dist/cjs/types/provision.js +64 -0
- package/dist/cjs/types/provision.js.map +1 -0
- package/dist/cjs/types/subscription.js +20 -0
- package/dist/cjs/types/subscription.js.map +1 -0
- package/dist/cjs/types/transport.js +32 -0
- package/dist/cjs/types/transport.js.map +1 -0
- package/dist/cjs/utils/authUtils.js +28 -0
- package/dist/cjs/utils/authUtils.js.map +1 -0
- package/dist/cjs/utils/awsShadowTopics.js +154 -0
- package/dist/cjs/utils/awsShadowTopics.js.map +1 -0
- package/dist/cjs/utils/awsSigv4Utils.js +143 -0
- package/dist/cjs/utils/awsSigv4Utils.js.map +1 -0
- package/dist/cjs/utils/awsUtils.js +172 -0
- package/dist/cjs/utils/awsUtils.js.map +1 -0
- package/dist/cjs/utils/baseUtils.js +294 -0
- package/dist/cjs/utils/baseUtils.js.map +1 -0
- package/dist/cjs/utils/coerce.js +46 -0
- package/dist/cjs/utils/coerce.js.map +1 -0
- package/dist/cjs/utils/common.js +42 -0
- package/dist/cjs/utils/common.js.map +1 -0
- package/dist/cjs/utils/constants.js +893 -0
- package/dist/cjs/utils/constants.js.map +1 -0
- package/dist/cjs/utils/error/ESPAPICallValidationError.js +33 -0
- package/dist/cjs/utils/error/ESPAPICallValidationError.js.map +1 -0
- package/dist/cjs/utils/error/ESPAuthError.js +26 -0
- package/dist/cjs/utils/error/ESPAuthError.js.map +1 -0
- package/dist/cjs/utils/error/ESPBaseError.js +23 -0
- package/dist/cjs/utils/error/ESPBaseError.js.map +1 -0
- package/dist/cjs/utils/error/ESPClaimError.js +43 -0
- package/dist/cjs/utils/error/ESPClaimError.js.map +1 -0
- package/dist/cjs/utils/error/ESPConfigError.js +33 -0
- package/dist/cjs/utils/error/ESPConfigError.js.map +1 -0
- package/dist/cjs/utils/error/ESPProvError.js +33 -0
- package/dist/cjs/utils/error/ESPProvError.js.map +1 -0
- package/dist/cjs/utils/error/ESPStorageAdapterError.js +33 -0
- package/dist/cjs/utils/error/ESPStorageAdapterError.js.map +1 -0
- package/dist/cjs/utils/error/ESPTokenError.js +34 -0
- package/dist/cjs/utils/error/ESPTokenError.js.map +1 -0
- package/dist/cjs/utils/error/ESPValidationError.js +33 -0
- package/dist/cjs/utils/error/ESPValidationError.js.map +1 -0
- package/dist/cjs/utils/error/errorMessages.js +280 -0
- package/dist/cjs/utils/error/errorMessages.js.map +1 -0
- package/dist/cjs/utils/eventEmitter.js +54 -0
- package/dist/cjs/utils/eventEmitter.js.map +1 -0
- package/dist/cjs/utils/eventSubscriptionUtils.js +47 -0
- package/dist/cjs/utils/eventSubscriptionUtils.js.map +1 -0
- package/dist/cjs/utils/groupUtils.js +33 -0
- package/dist/cjs/utils/groupUtils.js.map +1 -0
- package/dist/cjs/utils/logger.js +47 -0
- package/dist/cjs/utils/logger.js.map +1 -0
- package/dist/cjs/utils/mapLimit.js +43 -0
- package/dist/cjs/utils/mapLimit.js.map +1 -0
- package/dist/cjs/utils/mqtt.js +29 -0
- package/dist/cjs/utils/mqtt.js.map +1 -0
- package/dist/cjs/utils/nodeNcfgVersionHandler.js +130 -0
- package/dist/cjs/utils/nodeNcfgVersionHandler.js.map +1 -0
- package/dist/cjs/utils/nodeTransform.js +117 -0
- package/dist/cjs/utils/nodeTransform.js.map +1 -0
- package/dist/cjs/utils/nodeUtils.js +114 -0
- package/dist/cjs/utils/nodeUtils.js.map +1 -0
- package/dist/cjs/utils/normalizeApiResponse.js +30 -0
- package/dist/cjs/utils/normalizeApiResponse.js.map +1 -0
- package/dist/cjs/utils/paramValues.js +58 -0
- package/dist/cjs/utils/paramValues.js.map +1 -0
- package/dist/cjs/utils/scheduleUtils.js +41 -0
- package/dist/cjs/utils/scheduleUtils.js.map +1 -0
- package/dist/cjs/utils/shadowUtils.js +72 -0
- package/dist/cjs/utils/shadowUtils.js.map +1 -0
- package/dist/cjs/utils/triggerUtils.js +60 -0
- package/dist/cjs/utils/triggerUtils.js.map +1 -0
- package/dist/cjs/utils/tsDataUtils.js +165 -0
- package/dist/cjs/utils/tsDataUtils.js.map +1 -0
- package/dist/cjs/utils/userUtils.js +60 -0
- package/dist/cjs/utils/userUtils.js.map +1 -0
- package/dist/cjs/utils/validator/ConfigValidator.js +216 -0
- package/dist/cjs/utils/validator/ConfigValidator.js.map +1 -0
- package/dist/cjs/utils/validator/ScheduleValidator.js +58 -0
- package/dist/cjs/utils/validator/ScheduleValidator.js.map +1 -0
- package/dist/cjs/utils/validator/validators.js +42 -0
- package/dist/cjs/utils/validator/validators.js.map +1 -0
- package/dist/cjs/utils/waitForNodeOnline.js +187 -0
- package/dist/cjs/utils/waitForNodeOnline.js.map +1 -0
- package/dist/esm/ESPDevice.js +33 -0
- package/dist/esm/ESPDevice.js.map +1 -0
- package/dist/esm/ESPRMNeoAuth.js +58 -0
- package/dist/esm/ESPRMNeoAuth.js.map +1 -0
- package/dist/esm/ESPRMNeoAutomation.js +46 -0
- package/dist/esm/ESPRMNeoAutomation.js.map +1 -0
- package/dist/esm/ESPRMNeoBase.js +248 -0
- package/dist/esm/ESPRMNeoBase.js.map +1 -0
- package/dist/esm/ESPRMNeoDevice.js +49 -0
- package/dist/esm/ESPRMNeoDevice.js.map +1 -0
- package/dist/esm/ESPRMNeoDeviceParam.js +52 -0
- package/dist/esm/ESPRMNeoDeviceParam.js.map +1 -0
- package/dist/esm/ESPRMNeoGroup.js +47 -0
- package/dist/esm/ESPRMNeoGroup.js.map +1 -0
- package/dist/esm/ESPRMNeoNode.js +281 -0
- package/dist/esm/ESPRMNeoNode.js.map +1 -0
- package/dist/esm/ESPRMNeoSchedule.js +64 -0
- package/dist/esm/ESPRMNeoSchedule.js.map +1 -0
- package/dist/esm/ESPRMNeoService.js +34 -0
- package/dist/esm/ESPRMNeoService.js.map +1 -0
- package/dist/esm/ESPRMNeoServiceParam.js +50 -0
- package/dist/esm/ESPRMNeoServiceParam.js.map +1 -0
- package/dist/esm/ESPRMNeoSharingRequest.js +31 -0
- package/dist/esm/ESPRMNeoSharingRequest.js.map +1 -0
- package/dist/esm/ESPRMNeoTrigger.js +48 -0
- package/dist/esm/ESPRMNeoTrigger.js.map +1 -0
- package/dist/esm/ESPRMNeoUser.js +80 -0
- package/dist/esm/ESPRMNeoUser.js.map +1 -0
- package/dist/esm/index.js +140 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/methods/ESPDevice/Connect.js +11 -0
- package/dist/esm/methods/ESPDevice/Connect.js.map +1 -0
- package/dist/esm/methods/ESPDevice/Disconnect.js +13 -0
- package/dist/esm/methods/ESPDevice/Disconnect.js.map +1 -0
- package/dist/esm/methods/ESPDevice/GetDeviceCapabilities.js +11 -0
- package/dist/esm/methods/ESPDevice/GetDeviceCapabilities.js.map +1 -0
- package/dist/esm/methods/ESPDevice/GetDeviceVersion.js +11 -0
- package/dist/esm/methods/ESPDevice/GetDeviceVersion.js.map +1 -0
- package/dist/esm/methods/ESPDevice/InitializeSession.js +11 -0
- package/dist/esm/methods/ESPDevice/InitializeSession.js.map +1 -0
- package/dist/esm/methods/ESPDevice/InitiateUserNodeMapping.js +12 -0
- package/dist/esm/methods/ESPDevice/InitiateUserNodeMapping.js.map +1 -0
- package/dist/esm/methods/ESPDevice/Provision.js +86 -0
- package/dist/esm/methods/ESPDevice/Provision.js.map +1 -0
- package/dist/esm/methods/ESPDevice/ScanWifiList.js +11 -0
- package/dist/esm/methods/ESPDevice/ScanWifiList.js.map +1 -0
- package/dist/esm/methods/ESPDevice/SendData.js +11 -0
- package/dist/esm/methods/ESPDevice/SendData.js.map +1 -0
- package/dist/esm/methods/ESPDevice/SetNetworkCredentials.js +11 -0
- package/dist/esm/methods/ESPDevice/SetNetworkCredentials.js.map +1 -0
- package/dist/esm/methods/ESPDevice/SetProofOfPossession.js +11 -0
- package/dist/esm/methods/ESPDevice/SetProofOfPossession.js.map +1 -0
- package/dist/esm/methods/ESPDevice/StartAssistedClaiming.js +258 -0
- package/dist/esm/methods/ESPDevice/StartAssistedClaiming.js.map +1 -0
- package/dist/esm/methods/ESPDevice/VerifyUserNodeMapping.js +12 -0
- package/dist/esm/methods/ESPDevice/VerifyUserNodeMapping.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/ChangePassword.js +44 -0
- package/dist/esm/methods/ESPRMNeoAuth/ChangePassword.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/ConfirmSignUp.js +39 -0
- package/dist/esm/methods/ESPRMNeoAuth/ConfirmSignUp.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/ForgotPassword.js +37 -0
- package/dist/esm/methods/ESPRMNeoAuth/ForgotPassword.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/GetLoggedInUser.js +54 -0
- package/dist/esm/methods/ESPRMNeoAuth/GetLoggedInUser.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/Login.js +47 -0
- package/dist/esm/methods/ESPRMNeoAuth/Login.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/SendSignUpCode.js +45 -0
- package/dist/esm/methods/ESPRMNeoAuth/SendSignUpCode.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAuth/SetNewPassword.js +39 -0
- package/dist/esm/methods/ESPRMNeoAuth/SetNewPassword.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAutomation/AddAction.js +21 -0
- package/dist/esm/methods/ESPRMNeoAutomation/AddAction.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAutomation/AddCondition.js +25 -0
- package/dist/esm/methods/ESPRMNeoAutomation/AddCondition.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAutomation/Delete.js +27 -0
- package/dist/esm/methods/ESPRMNeoAutomation/Delete.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAutomation/RemoveAction.js +21 -0
- package/dist/esm/methods/ESPRMNeoAutomation/RemoveAction.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAutomation/RemoveCondition.js +21 -0
- package/dist/esm/methods/ESPRMNeoAutomation/RemoveCondition.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoAutomation/Update.js +38 -0
- package/dist/esm/methods/ESPRMNeoAutomation/Update.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoDevice/GetParams.js +32 -0
- package/dist/esm/methods/ESPRMNeoDevice/GetParams.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoDeviceParam/GetLatestTSData.js +24 -0
- package/dist/esm/methods/ESPRMNeoDeviceParam/GetLatestTSData.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoDeviceParam/GetRawTSData.js +26 -0
- package/dist/esm/methods/ESPRMNeoDeviceParam/GetRawTSData.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoDeviceParam/GetTSData.js +26 -0
- package/dist/esm/methods/ESPRMNeoDeviceParam/GetTSData.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/AddNode.js +27 -0
- package/dist/esm/methods/ESPRMNeoGroup/AddNode.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/CreateAutomation.js +30 -0
- package/dist/esm/methods/ESPRMNeoGroup/CreateAutomation.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/CreateSchedule.js +52 -0
- package/dist/esm/methods/ESPRMNeoGroup/CreateSchedule.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/CreateSubGroup.js +37 -0
- package/dist/esm/methods/ESPRMNeoGroup/CreateSubGroup.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/Delete.js +28 -0
- package/dist/esm/methods/ESPRMNeoGroup/Delete.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/DeleteAllSchedules.js +32 -0
- package/dist/esm/methods/ESPRMNeoGroup/DeleteAllSchedules.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetAutomation.js +17 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetAutomation.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetAutomations.js +26 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetAutomations.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetNode.js +20 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetNode.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetNodes.js +18 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetNodes.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetSchedules.js +40 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetSchedules.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetSharingInfo.js +31 -0
- package/dist/esm/methods/ESPRMNeoGroup/GetSharingInfo.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/Leave.js +20 -0
- package/dist/esm/methods/ESPRMNeoGroup/Leave.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/RemoveMember.js +27 -0
- package/dist/esm/methods/ESPRMNeoGroup/RemoveMember.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/RemoveNode.js +24 -0
- package/dist/esm/methods/ESPRMNeoGroup/RemoveNode.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/SetParams.js +27 -0
- package/dist/esm/methods/ESPRMNeoGroup/SetParams.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/Share.js +32 -0
- package/dist/esm/methods/ESPRMNeoGroup/Share.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoGroup/UpdateName.js +35 -0
- package/dist/esm/methods/ESPRMNeoGroup/UpdateName.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/CreateSchedule.js +45 -0
- package/dist/esm/methods/ESPRMNeoNode/CreateSchedule.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/CreateTrigger.js +38 -0
- package/dist/esm/methods/ESPRMNeoNode/CreateTrigger.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/Delete.js +29 -0
- package/dist/esm/methods/ESPRMNeoNode/Delete.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/GetConfig.js +11 -0
- package/dist/esm/methods/ESPRMNeoNode/GetConfig.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/GetCustomParamLatestTSData.js +18 -0
- package/dist/esm/methods/ESPRMNeoNode/GetCustomParamLatestTSData.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/GetCustomParamRawTSData.js +20 -0
- package/dist/esm/methods/ESPRMNeoNode/GetCustomParamRawTSData.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/GetCustomParamTSData.js +20 -0
- package/dist/esm/methods/ESPRMNeoNode/GetCustomParamTSData.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/GetSchedules.js +20 -0
- package/dist/esm/methods/ESPRMNeoNode/GetSchedules.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/GetTriggers.js +26 -0
- package/dist/esm/methods/ESPRMNeoNode/GetTriggers.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveAllSchedules.js +20 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveAllSchedules.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveAllTriggers.js +20 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveAllTriggers.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveSchedule.js +33 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveSchedule.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveTrigger.js +25 -0
- package/dist/esm/methods/ESPRMNeoNode/RemoveTrigger.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/SetParams.js +18 -0
- package/dist/esm/methods/ESPRMNeoNode/SetParams.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/SubscriptionConfig.js +23 -0
- package/dist/esm/methods/ESPRMNeoNode/SubscriptionConfig.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/Sync.js +28 -0
- package/dist/esm/methods/ESPRMNeoNode/Sync.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoNode/UnsubscribeFromMqttUpdates.js +22 -0
- package/dist/esm/methods/ESPRMNeoNode/UnsubscribeFromMqttUpdates.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoSchedule/Delete.js +17 -0
- package/dist/esm/methods/ESPRMNeoSchedule/Delete.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoSchedule/Enable.js +11 -0
- package/dist/esm/methods/ESPRMNeoSchedule/Enable.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoSchedule/Update.js +48 -0
- package/dist/esm/methods/ESPRMNeoSchedule/Update.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoService/GetParams.js +40 -0
- package/dist/esm/methods/ESPRMNeoService/GetParams.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoSharingRequest/Accept.js +35 -0
- package/dist/esm/methods/ESPRMNeoSharingRequest/Accept.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoSharingRequest/Decline.js +35 -0
- package/dist/esm/methods/ESPRMNeoSharingRequest/Decline.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoTrigger/Delete.js +17 -0
- package/dist/esm/methods/ESPRMNeoTrigger/Delete.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoTrigger/Enable.js +11 -0
- package/dist/esm/methods/ESPRMNeoTrigger/Enable.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoTrigger/Update.js +32 -0
- package/dist/esm/methods/ESPRMNeoTrigger/Update.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/CreateESPDevice.js +30 -0
- package/dist/esm/methods/ESPRMNeoUser/CreateESPDevice.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/CreateGroup.js +37 -0
- package/dist/esm/methods/ESPRMNeoUser/CreateGroup.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/EventSubscription.js +48 -0
- package/dist/esm/methods/ESPRMNeoUser/EventSubscription.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/GetGroups.js +52 -0
- package/dist/esm/methods/ESPRMNeoUser/GetGroups.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/GetTemporaryAWSCredentials.js +77 -0
- package/dist/esm/methods/ESPRMNeoUser/GetTemporaryAWSCredentials.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/GetUserInfo.js +37 -0
- package/dist/esm/methods/ESPRMNeoUser/GetUserInfo.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/ListIntegrations.js +35 -0
- package/dist/esm/methods/ESPRMNeoUser/ListIntegrations.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/ListSharingRequests.js +29 -0
- package/dist/esm/methods/ESPRMNeoUser/ListSharingRequests.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/Logout.js +38 -0
- package/dist/esm/methods/ESPRMNeoUser/Logout.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/MQTT/AssumeRole.js +36 -0
- package/dist/esm/methods/ESPRMNeoUser/MQTT/AssumeRole.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/MQTT/ConnectMQTT.js +65 -0
- package/dist/esm/methods/ESPRMNeoUser/MQTT/ConnectMQTT.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/MQTT/DisconnectMQTT.js +27 -0
- package/dist/esm/methods/ESPRMNeoUser/MQTT/DisconnectMQTT.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/RegisterIntegrationEndpoint.js +39 -0
- package/dist/esm/methods/ESPRMNeoUser/RegisterIntegrationEndpoint.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/SearchESPDevices.js +48 -0
- package/dist/esm/methods/ESPRMNeoUser/SearchESPDevices.js.map +1 -0
- package/dist/esm/methods/ESPRMNeoUser/UnregisterIntegrationEndpoint.js +42 -0
- package/dist/esm/methods/ESPRMNeoUser/UnregisterIntegrationEndpoint.js.map +1 -0
- package/dist/esm/proto/constants.js +24 -0
- package/dist/esm/proto/constants.js.map +1 -0
- package/dist/esm/proto/esp_local_ctrl.js +758 -0
- package/dist/esm/proto/esp_local_ctrl.js.map +1 -0
- package/dist/esm/proto/esp_rmaker_chal_resp.js +446 -0
- package/dist/esm/proto/esp_rmaker_chal_resp.js.map +1 -0
- package/dist/esm/proto/esp_rmaker_claim.js +356 -0
- package/dist/esm/proto/esp_rmaker_claim.js.map +1 -0
- package/dist/esm/services/ESPRMNeoAPIManager.js +204 -0
- package/dist/esm/services/ESPRMNeoAPIManager.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/ChallengeResponseHelper.js +104 -0
- package/dist/esm/services/ESPRMNeoHelpers/ChallengeResponseHelper.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/ChannelRegistration.js +47 -0
- package/dist/esm/services/ESPRMNeoHelpers/ChannelRegistration.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/CheckTokenExpiry.js +23 -0
- package/dist/esm/services/ESPRMNeoHelpers/CheckTokenExpiry.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/ClaimingHelper.js +219 -0
- package/dist/esm/services/ESPRMNeoHelpers/ClaimingHelper.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/DecodeToken.js +50 -0
- package/dist/esm/services/ESPRMNeoHelpers/DecodeToken.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/DelegatedTransportHandler.js +130 -0
- package/dist/esm/services/ESPRMNeoHelpers/DelegatedTransportHandler.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/FetchTSData.js +133 -0
- package/dist/esm/services/ESPRMNeoHelpers/FetchTSData.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/GetCurrentTimestamp.js +16 -0
- package/dist/esm/services/ESPRMNeoHelpers/GetCurrentTimestamp.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/NodeMappingHelper.js +43 -0
- package/dist/esm/services/ESPRMNeoHelpers/NodeMappingHelper.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/TransformEncoding.js +63 -0
- package/dist/esm/services/ESPRMNeoHelpers/TransformEncoding.js.map +1 -0
- package/dist/esm/services/ESPRMNeoHelpers/transformShadowToNodeUpdate.js +52 -0
- package/dist/esm/services/ESPRMNeoHelpers/transformShadowToNodeUpdate.js.map +1 -0
- package/dist/esm/services/ESPRMNeoMqtt/ESPRMNeoMqtt.js +118 -0
- package/dist/esm/services/ESPRMNeoMqtt/ESPRMNeoMqtt.js.map +1 -0
- package/dist/esm/services/ESPRMNeoStorage/DefaultStorageAdapter.js +50 -0
- package/dist/esm/services/ESPRMNeoStorage/DefaultStorageAdapter.js.map +1 -0
- package/dist/esm/services/ESPRMNeoStorage/ESPRMNeoStorage.js +139 -0
- package/dist/esm/services/ESPRMNeoStorage/ESPRMNeoStorage.js.map +1 -0
- package/dist/esm/services/ESPRMNeoSubscriptionManager.js +355 -0
- package/dist/esm/services/ESPRMNeoSubscriptionManager.js.map +1 -0
- package/dist/esm/services/ESPSigV4APIManager.js +324 -0
- package/dist/esm/services/ESPSigV4APIManager.js.map +1 -0
- package/dist/esm/services/ESPTransport/ESPDiscovery/ESPDiscoveryManager.js +60 -0
- package/dist/esm/services/ESPTransport/ESPDiscovery/ESPDiscoveryManager.js.map +1 -0
- package/dist/esm/services/ESPTransport/ESPLocalControlTransport.js +155 -0
- package/dist/esm/services/ESPTransport/ESPLocalControlTransport.js.map +1 -0
- package/dist/esm/services/ESPTransport/ESPMqttTransport.js +24 -0
- package/dist/esm/services/ESPTransport/ESPMqttTransport.js.map +1 -0
- package/dist/esm/services/ESPTransport/ESPTransportManager.js +40 -0
- package/dist/esm/services/ESPTransport/ESPTransportManager.js.map +1 -0
- package/dist/esm/services/MQTTSubscriptionChannel.js +272 -0
- package/dist/esm/services/MQTTSubscriptionChannel.js.map +1 -0
- package/dist/esm/services/NodeMQTTOrchestrator.js +556 -0
- package/dist/esm/services/NodeMQTTOrchestrator.js.map +1 -0
- package/dist/esm/services/NodeMQTTOrchestratorHelpers.js +77 -0
- package/dist/esm/services/NodeMQTTOrchestratorHelpers.js.map +1 -0
- package/dist/esm/services/NodeUpdatesBus.js +50 -0
- package/dist/esm/services/NodeUpdatesBus.js.map +1 -0
- package/dist/esm/types/discovery.js +29 -0
- package/dist/esm/types/discovery.js.map +1 -0
- package/dist/esm/types/provision.js +64 -0
- package/dist/esm/types/provision.js.map +1 -0
- package/dist/esm/types/subscription.js +18 -0
- package/dist/esm/types/subscription.js.map +1 -0
- package/dist/esm/types/transport.js +30 -0
- package/dist/esm/types/transport.js.map +1 -0
- package/dist/esm/utils/authUtils.js +25 -0
- package/dist/esm/utils/authUtils.js.map +1 -0
- package/dist/esm/utils/awsShadowTopics.js +143 -0
- package/dist/esm/utils/awsShadowTopics.js.map +1 -0
- package/dist/esm/utils/awsSigv4Utils.js +138 -0
- package/dist/esm/utils/awsSigv4Utils.js.map +1 -0
- package/dist/esm/utils/awsUtils.js +163 -0
- package/dist/esm/utils/awsUtils.js.map +1 -0
- package/dist/esm/utils/baseUtils.js +280 -0
- package/dist/esm/utils/baseUtils.js.map +1 -0
- package/dist/esm/utils/coerce.js +42 -0
- package/dist/esm/utils/coerce.js.map +1 -0
- package/dist/esm/utils/common.js +37 -0
- package/dist/esm/utils/common.js.map +1 -0
- package/dist/esm/utils/constants.js +844 -0
- package/dist/esm/utils/constants.js.map +1 -0
- package/dist/esm/utils/error/ESPAPICallValidationError.js +31 -0
- package/dist/esm/utils/error/ESPAPICallValidationError.js.map +1 -0
- package/dist/esm/utils/error/ESPAuthError.js +24 -0
- package/dist/esm/utils/error/ESPAuthError.js.map +1 -0
- package/dist/esm/utils/error/ESPBaseError.js +21 -0
- package/dist/esm/utils/error/ESPBaseError.js.map +1 -0
- package/dist/esm/utils/error/ESPClaimError.js +41 -0
- package/dist/esm/utils/error/ESPClaimError.js.map +1 -0
- package/dist/esm/utils/error/ESPConfigError.js +31 -0
- package/dist/esm/utils/error/ESPConfigError.js.map +1 -0
- package/dist/esm/utils/error/ESPProvError.js +31 -0
- package/dist/esm/utils/error/ESPProvError.js.map +1 -0
- package/dist/esm/utils/error/ESPStorageAdapterError.js +31 -0
- package/dist/esm/utils/error/ESPStorageAdapterError.js.map +1 -0
- package/dist/esm/utils/error/ESPTokenError.js +32 -0
- package/dist/esm/utils/error/ESPTokenError.js.map +1 -0
- package/dist/esm/utils/error/ESPValidationError.js +31 -0
- package/dist/esm/utils/error/ESPValidationError.js.map +1 -0
- package/dist/esm/utils/error/errorMessages.js +270 -0
- package/dist/esm/utils/error/errorMessages.js.map +1 -0
- package/dist/esm/utils/eventEmitter.js +52 -0
- package/dist/esm/utils/eventEmitter.js.map +1 -0
- package/dist/esm/utils/eventSubscriptionUtils.js +42 -0
- package/dist/esm/utils/eventSubscriptionUtils.js.map +1 -0
- package/dist/esm/utils/groupUtils.js +30 -0
- package/dist/esm/utils/groupUtils.js.map +1 -0
- package/dist/esm/utils/logger.js +45 -0
- package/dist/esm/utils/logger.js.map +1 -0
- package/dist/esm/utils/mapLimit.js +41 -0
- package/dist/esm/utils/mapLimit.js.map +1 -0
- package/dist/esm/utils/mqtt.js +27 -0
- package/dist/esm/utils/mqtt.js.map +1 -0
- package/dist/esm/utils/nodeNcfgVersionHandler.js +123 -0
- package/dist/esm/utils/nodeNcfgVersionHandler.js.map +1 -0
- package/dist/esm/utils/nodeTransform.js +109 -0
- package/dist/esm/utils/nodeTransform.js.map +1 -0
- package/dist/esm/utils/nodeUtils.js +104 -0
- package/dist/esm/utils/nodeUtils.js.map +1 -0
- package/dist/esm/utils/normalizeApiResponse.js +28 -0
- package/dist/esm/utils/normalizeApiResponse.js.map +1 -0
- package/dist/esm/utils/paramValues.js +54 -0
- package/dist/esm/utils/paramValues.js.map +1 -0
- package/dist/esm/utils/scheduleUtils.js +38 -0
- package/dist/esm/utils/scheduleUtils.js.map +1 -0
- package/dist/esm/utils/shadowUtils.js +67 -0
- package/dist/esm/utils/shadowUtils.js.map +1 -0
- package/dist/esm/utils/triggerUtils.js +55 -0
- package/dist/esm/utils/triggerUtils.js.map +1 -0
- package/dist/esm/utils/tsDataUtils.js +156 -0
- package/dist/esm/utils/tsDataUtils.js.map +1 -0
- package/dist/esm/utils/userUtils.js +54 -0
- package/dist/esm/utils/userUtils.js.map +1 -0
- package/dist/esm/utils/validator/ConfigValidator.js +214 -0
- package/dist/esm/utils/validator/ConfigValidator.js.map +1 -0
- package/dist/esm/utils/validator/ScheduleValidator.js +56 -0
- package/dist/esm/utils/validator/ScheduleValidator.js.map +1 -0
- package/dist/esm/utils/validator/validators.js +38 -0
- package/dist/esm/utils/validator/validators.js.map +1 -0
- package/dist/esm/utils/waitForNodeOnline.js +182 -0
- package/dist/esm/utils/waitForNodeOnline.js.map +1 -0
- package/dist/types/ESPDevice.d.ts +13 -0
- package/dist/types/ESPRMNeoAuth.d.ts +26 -0
- package/dist/types/ESPRMNeoAutomation.d.ts +17 -0
- package/dist/types/ESPRMNeoBase.d.ts +169 -0
- package/dist/types/ESPRMNeoDevice.d.ts +31 -0
- package/dist/types/ESPRMNeoDeviceParam.d.ts +25 -0
- package/dist/types/ESPRMNeoGroup.d.ts +26 -0
- package/dist/types/ESPRMNeoNode.d.ts +142 -0
- package/dist/types/ESPRMNeoSchedule.d.ts +36 -0
- package/dist/types/ESPRMNeoService.d.ts +24 -0
- package/dist/types/ESPRMNeoServiceParam.d.ts +23 -0
- package/dist/types/ESPRMNeoSharingRequest.d.ts +16 -0
- package/dist/types/ESPRMNeoTrigger.d.ts +26 -0
- package/dist/types/ESPRMNeoUser.d.ts +47 -0
- package/dist/types/index.d.ts +23 -0
- package/dist/types/methods/ESPDevice/Connect.d.ts +15 -0
- package/dist/types/methods/ESPDevice/Disconnect.d.ts +15 -0
- package/dist/types/methods/ESPDevice/GetDeviceCapabilities.d.ts +15 -0
- package/dist/types/methods/ESPDevice/GetDeviceVersion.d.ts +17 -0
- package/dist/types/methods/ESPDevice/InitializeSession.d.ts +15 -0
- package/dist/types/methods/ESPDevice/InitiateUserNodeMapping.d.ts +14 -0
- package/dist/types/methods/ESPDevice/Provision.d.ts +28 -0
- package/dist/types/methods/ESPDevice/ScanWifiList.d.ts +15 -0
- package/dist/types/methods/ESPDevice/SendData.d.ts +17 -0
- package/dist/types/methods/ESPDevice/SetNetworkCredentials.d.ts +15 -0
- package/dist/types/methods/ESPDevice/SetProofOfPossession.d.ts +16 -0
- package/dist/types/methods/ESPDevice/StartAssistedClaiming.d.ts +26 -0
- package/dist/types/methods/ESPDevice/VerifyUserNodeMapping.d.ts +16 -0
- package/dist/types/methods/ESPDevice/index.d.ts +13 -0
- package/dist/types/methods/ESPRMNeoAuth/ChangePassword.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoAuth/ConfirmSignUp.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoAuth/ForgotPassword.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoAuth/GetLoggedInUser.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoAuth/Login.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoAuth/SendSignUpCode.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoAuth/SetNewPassword.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoAuth/index.d.ts +7 -0
- package/dist/types/methods/ESPRMNeoAutomation/AddAction.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoAutomation/AddCondition.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoAutomation/Delete.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoAutomation/RemoveAction.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoAutomation/RemoveCondition.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoAutomation/Update.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoAutomation/index.d.ts +6 -0
- package/dist/types/methods/ESPRMNeoDevice/GetParams.d.ts +41 -0
- package/dist/types/methods/ESPRMNeoDevice/index.d.ts +1 -0
- package/dist/types/methods/ESPRMNeoDeviceParam/GetLatestTSData.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoDeviceParam/GetRawTSData.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoDeviceParam/GetTSData.d.ts +23 -0
- package/dist/types/methods/ESPRMNeoDeviceParam/index.d.ts +3 -0
- package/dist/types/methods/ESPRMNeoGroup/AddNode.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoGroup/CreateAutomation.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoGroup/CreateSchedule.d.ts +23 -0
- package/dist/types/methods/ESPRMNeoGroup/CreateSubGroup.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoGroup/Delete.d.ts +23 -0
- package/dist/types/methods/ESPRMNeoGroup/DeleteAllSchedules.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoGroup/GetAutomation.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoGroup/GetAutomations.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoGroup/GetNode.d.ts +45 -0
- package/dist/types/methods/ESPRMNeoGroup/GetNodes.d.ts +28 -0
- package/dist/types/methods/ESPRMNeoGroup/GetSchedules.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoGroup/GetSharingInfo.d.ts +23 -0
- package/dist/types/methods/ESPRMNeoGroup/Leave.d.ts +24 -0
- package/dist/types/methods/ESPRMNeoGroup/RemoveMember.d.ts +21 -0
- package/dist/types/methods/ESPRMNeoGroup/RemoveNode.d.ts +15 -0
- package/dist/types/methods/ESPRMNeoGroup/SetParams.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoGroup/Share.d.ts +25 -0
- package/dist/types/methods/ESPRMNeoGroup/UpdateName.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoGroup/index.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoNode/CreateSchedule.d.ts +31 -0
- package/dist/types/methods/ESPRMNeoNode/CreateTrigger.d.ts +31 -0
- package/dist/types/methods/ESPRMNeoNode/Delete.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoNode/GetConfig.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoNode/GetCustomParamLatestTSData.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoNode/GetCustomParamRawTSData.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoNode/GetCustomParamTSData.d.ts +25 -0
- package/dist/types/methods/ESPRMNeoNode/GetSchedules.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoNode/GetTriggers.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoNode/RemoveAllSchedules.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoNode/RemoveAllTriggers.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoNode/RemoveSchedule.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoNode/RemoveTrigger.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoNode/SetParams.d.ts +23 -0
- package/dist/types/methods/ESPRMNeoNode/SubscriptionConfig.d.ts +33 -0
- package/dist/types/methods/ESPRMNeoNode/Sync.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoNode/UnsubscribeFromMqttUpdates.d.ts +23 -0
- package/dist/types/methods/ESPRMNeoNode/index.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoSchedule/Delete.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoSchedule/Enable.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoSchedule/Update.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoSchedule/index.d.ts +3 -0
- package/dist/types/methods/ESPRMNeoService/GetParams.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoService/index.d.ts +1 -0
- package/dist/types/methods/ESPRMNeoSharingRequest/Accept.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoSharingRequest/Decline.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoSharingRequest/index.d.ts +2 -0
- package/dist/types/methods/ESPRMNeoTrigger/Delete.d.ts +15 -0
- package/dist/types/methods/ESPRMNeoTrigger/Enable.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoTrigger/Update.d.ts +22 -0
- package/dist/types/methods/ESPRMNeoTrigger/index.d.ts +3 -0
- package/dist/types/methods/ESPRMNeoUser/CreateESPDevice.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoUser/CreateGroup.d.ts +17 -0
- package/dist/types/methods/ESPRMNeoUser/EventSubscription.d.ts +29 -0
- package/dist/types/methods/ESPRMNeoUser/GetGroups.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoUser/GetTemporaryAWSCredentials.d.ts +42 -0
- package/dist/types/methods/ESPRMNeoUser/GetUserInfo.d.ts +14 -0
- package/dist/types/methods/ESPRMNeoUser/ListIntegrations.d.ts +20 -0
- package/dist/types/methods/ESPRMNeoUser/ListSharingRequests.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoUser/Logout.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoUser/MQTT/AssumeRole.d.ts +33 -0
- package/dist/types/methods/ESPRMNeoUser/MQTT/ConnectMQTT.d.ts +18 -0
- package/dist/types/methods/ESPRMNeoUser/MQTT/DisconnectMQTT.d.ts +15 -0
- package/dist/types/methods/ESPRMNeoUser/MQTT/index.d.ts +4 -0
- package/dist/types/methods/ESPRMNeoUser/RegisterIntegrationEndpoint.d.ts +22 -0
- package/dist/types/methods/ESPRMNeoUser/SearchESPDevices.d.ts +16 -0
- package/dist/types/methods/ESPRMNeoUser/UnregisterIntegrationEndpoint.d.ts +19 -0
- package/dist/types/methods/ESPRMNeoUser/index.d.ts +13 -0
- package/dist/types/methods/export.d.ts +12 -0
- package/dist/types/proto/constants.d.ts +15 -0
- package/dist/types/proto/esp_local_ctrl.d.ts +283 -0
- package/dist/types/proto/esp_rmaker_chal_resp.d.ts +157 -0
- package/dist/types/proto/esp_rmaker_claim.d.ts +136 -0
- package/dist/types/proto/esp_rmaker_user_mapping.d.ts +101 -0
- package/dist/types/services/ESPRMNeoAPIManager.d.ts +84 -0
- package/dist/types/services/ESPRMNeoHelpers/BinaryWriter.d.ts +5 -0
- package/dist/types/services/ESPRMNeoHelpers/ChallengeResponseHelper.d.ts +33 -0
- package/dist/types/services/ESPRMNeoHelpers/ChannelRegistration.d.ts +14 -0
- package/dist/types/services/ESPRMNeoHelpers/CheckTokenExpiry.d.ts +8 -0
- package/dist/types/services/ESPRMNeoHelpers/ClaimingHelper.d.ts +141 -0
- package/dist/types/services/ESPRMNeoHelpers/DecodeToken.d.ts +12 -0
- package/dist/types/services/ESPRMNeoHelpers/DelegatedTransportHandler.d.ts +25 -0
- package/dist/types/services/ESPRMNeoHelpers/FetchTSData.d.ts +37 -0
- package/dist/types/services/ESPRMNeoHelpers/GenerateUUID.d.ts +1 -0
- package/dist/types/services/ESPRMNeoHelpers/GetCurrentTimestamp.d.ts +7 -0
- package/dist/types/services/ESPRMNeoHelpers/NodeMappingHelper.d.ts +26 -0
- package/dist/types/services/ESPRMNeoHelpers/TransformEncoding.d.ts +13 -0
- package/dist/types/services/ESPRMNeoHelpers/transformShadowToNodeUpdate.d.ts +25 -0
- package/dist/types/services/ESPRMNeoMqtt/ESPMQTTConfig.d.ts +15 -0
- package/dist/types/services/ESPRMNeoMqtt/ESPRMNeoMqtt.d.ts +83 -0
- package/dist/types/services/ESPRMNeoStorage/DefaultStorageAdapter.d.ts +17 -0
- package/dist/types/services/ESPRMNeoStorage/ESPRMNeoStorage.d.ts +65 -0
- package/dist/types/services/ESPRMNeoSubscriptionManager.d.ts +211 -0
- package/dist/types/services/ESPSigV4APIManager.d.ts +99 -0
- package/dist/types/services/ESPTransport/ESPDiscovery/ESPDiscoveryManager.d.ts +32 -0
- package/dist/types/services/ESPTransport/ESPLocalControlTransport.d.ts +38 -0
- package/dist/types/services/ESPTransport/ESPMqttTransport.d.ts +13 -0
- package/dist/types/services/ESPTransport/ESPTransportManager.d.ts +15 -0
- package/dist/types/services/MQTTSubscriptionChannel.d.ts +140 -0
- package/dist/types/services/NodeMQTTOrchestrator.d.ts +213 -0
- package/dist/types/services/NodeMQTTOrchestratorHelpers.d.ts +45 -0
- package/dist/types/services/NodeUpdatesBus.d.ts +21 -0
- package/dist/types/services/export.d.ts +41 -0
- package/dist/types/services/interfaces/MQTTTransport.d.ts +62 -0
- package/dist/types/types/auth.d.ts +89 -0
- package/dist/types/types/automation.d.ts +63 -0
- package/dist/types/types/common.d.ts +5 -0
- package/dist/types/types/discovery.d.ts +71 -0
- package/dist/types/types/export.d.ts +17 -0
- package/dist/types/types/group.d.ts +10 -0
- package/dist/types/types/input.d.ts +81 -0
- package/dist/types/types/localControl.d.ts +17 -0
- package/dist/types/types/mainTypes.d.ts +5 -0
- package/dist/types/types/node.d.ts +202 -0
- package/dist/types/types/output.d.ts +195 -0
- package/dist/types/types/provision.d.ts +120 -0
- package/dist/types/types/schedule.d.ts +45 -0
- package/dist/types/types/storage.d.ts +31 -0
- package/dist/types/types/subscription.d.ts +149 -0
- package/dist/types/types/transport.d.ts +65 -0
- package/dist/types/types/trigger.d.ts +24 -0
- package/dist/types/types/tsData.d.ts +222 -0
- package/dist/types/utils/authUtils.d.ts +14 -0
- package/dist/types/utils/awsShadowTopics.d.ts +78 -0
- package/dist/types/utils/awsSigv4Utils.d.ts +53 -0
- package/dist/types/utils/awsUtils.d.ts +48 -0
- package/dist/types/utils/baseUtils.d.ts +136 -0
- package/dist/types/utils/coerce.d.ts +19 -0
- package/dist/types/utils/common.d.ts +15 -0
- package/dist/types/utils/constants.d.ts +825 -0
- package/dist/types/utils/error/ESPAPICallValidationError.d.ts +19 -0
- package/dist/types/utils/error/ESPAuthError.d.ts +11 -0
- package/dist/types/utils/error/ESPBaseError.d.ts +8 -0
- package/dist/types/utils/error/ESPClaimError.d.ts +25 -0
- package/dist/types/utils/error/ESPConfigError.d.ts +19 -0
- package/dist/types/utils/error/ESPProvError.d.ts +19 -0
- package/dist/types/utils/error/ESPStorageAdapterError.d.ts +19 -0
- package/dist/types/utils/error/ESPTokenError.d.ts +20 -0
- package/dist/types/utils/error/ESPValidationError.d.ts +19 -0
- package/dist/types/utils/error/Error.d.ts +8 -0
- package/dist/types/utils/error/errorMessages.d.ts +267 -0
- package/dist/types/utils/eventEmitter.d.ts +11 -0
- package/dist/types/utils/eventSubscriptionUtils.d.ts +17 -0
- package/dist/types/utils/export.d.ts +22 -0
- package/dist/types/utils/groupUtils.d.ts +20 -0
- package/dist/types/utils/logger.d.ts +16 -0
- package/dist/types/utils/mapLimit.d.ts +10 -0
- package/dist/types/utils/mqtt.d.ts +9 -0
- package/dist/types/utils/nodeNcfgVersionHandler.d.ts +36 -0
- package/dist/types/utils/nodeTransform.d.ts +66 -0
- package/dist/types/utils/nodeUtils.d.ts +36 -0
- package/dist/types/utils/normalizeApiResponse.d.ts +6 -0
- package/dist/types/utils/paramValues.d.ts +30 -0
- package/dist/types/utils/scheduleUtils.d.ts +14 -0
- package/dist/types/utils/shadowUtils.d.ts +29 -0
- package/dist/types/utils/triggerUtils.d.ts +32 -0
- package/dist/types/utils/tsDataUtils.d.ts +70 -0
- package/dist/types/utils/userUtils.d.ts +11 -0
- package/dist/types/utils/validator/ConfigValidator.d.ts +99 -0
- package/dist/types/utils/validator/ScheduleValidator.d.ts +23 -0
- package/dist/types/utils/validator/validators.d.ts +18 -0
- package/dist/types/utils/waitForNodeOnline.d.ts +48 -0
- package/package.json +116 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { ESPRMNeoBase } from '../../../ESPRMNeoBase.js';
|
|
2
|
+
import { ESPDiscoveryProtocol } from '../../../types/discovery.js';
|
|
3
|
+
import { ServiceType } from '../../../utils/constants.js';
|
|
4
|
+
|
|
5
|
+
/*
|
|
6
|
+
* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
|
|
7
|
+
*
|
|
8
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Manages local node discovery through the app-supplied local discovery
|
|
12
|
+
* adapter (see {@link ESPRMNeoBase.setLocalDiscoveryAdapter}).
|
|
13
|
+
*
|
|
14
|
+
* - With no discovery config, the default local protocol is used
|
|
15
|
+
* (mDNS service `_esp_local_ctrl._tcp.` in the `local` domain).
|
|
16
|
+
* - A custom {@link DiscoveryParamsInterface} can be supplied for other
|
|
17
|
+
* discovery protocols.
|
|
18
|
+
*/
|
|
19
|
+
class ESPDiscoveryManager {
|
|
20
|
+
/** Discovery parameters (service type / domain) passed to the adapter. */
|
|
21
|
+
params;
|
|
22
|
+
/**
|
|
23
|
+
* @param discoveryConfig - Optional custom discovery parameters. Defaults to
|
|
24
|
+
* the local mDNS protocol.
|
|
25
|
+
* @throws {Error} If no local discovery adapter is set.
|
|
26
|
+
*/
|
|
27
|
+
constructor(discoveryConfig) {
|
|
28
|
+
if (!ESPRMNeoBase.getLocalDiscoveryAdapter()) {
|
|
29
|
+
throw new Error("ESPLocalDiscoveryAdapter not set");
|
|
30
|
+
}
|
|
31
|
+
this.params = discoveryConfig || {
|
|
32
|
+
serviceType: ServiceType.ESP_LOCAL_CTRL_TCP,
|
|
33
|
+
domain: ESPDiscoveryProtocol.local,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
get adapter() {
|
|
37
|
+
const adapter = ESPRMNeoBase.getLocalDiscoveryAdapter();
|
|
38
|
+
if (!adapter) {
|
|
39
|
+
throw new Error("ESPLocalDiscoveryAdapter not set");
|
|
40
|
+
}
|
|
41
|
+
return adapter;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Starts discovery. The callback is invoked for each discovered node.
|
|
45
|
+
*
|
|
46
|
+
* @param callback - Invoked with the adapter's per-node discovery result.
|
|
47
|
+
*/
|
|
48
|
+
startDiscovery(callback) {
|
|
49
|
+
this.adapter.startDiscovery(callback, this.params);
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Stops any ongoing discovery started by {@link startDiscovery}.
|
|
53
|
+
*/
|
|
54
|
+
stopDiscovery() {
|
|
55
|
+
this.adapter.stopDiscovery();
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
export { ESPDiscoveryManager };
|
|
60
|
+
//# sourceMappingURL=ESPDiscoveryManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ESPDiscoveryManager.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { ESPRMNeoBase } from '../../ESPRMNeoBase.js';
|
|
2
|
+
import { Status } from '../../proto/constants.js';
|
|
3
|
+
import { LocalCtrlMessage, LocalCtrlMsgType, CmdSetPropertyValues, PropertyValue, CmdGetPropertyCount, CmdGetPropertyValues } from '../../proto/esp_local_ctrl.js';
|
|
4
|
+
import { Endpoint } from '../../utils/constants.js';
|
|
5
|
+
import { uint8ArrayToBase64, base64ToUint8Array } from '../ESPRMNeoHelpers/TransformEncoding.js';
|
|
6
|
+
|
|
7
|
+
/*
|
|
8
|
+
* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
|
|
9
|
+
*
|
|
10
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
11
|
+
*/
|
|
12
|
+
/** Property index of the writable "params" property exposed by RMNeo local-control firmware. */
|
|
13
|
+
const LOCAL_CONTROL_PARAMS_INDEX = 1;
|
|
14
|
+
/**
|
|
15
|
+
* Built-in `local` transport. Communicates with the node over the LAN through
|
|
16
|
+
* the app-supplied {@link ESPRMNeoBase.ESPLocalControlAdapter} using the
|
|
17
|
+
* `esp_local_ctrl` protobuf protocol. Connection metadata (`baseUrl`,
|
|
18
|
+
* `securityType`, `pop`, and `username` for sec2) is supplied via the transport
|
|
19
|
+
* config by {@link delegatedTransportHandler}.
|
|
20
|
+
*/
|
|
21
|
+
class ESPLocalControlTransport {
|
|
22
|
+
payload;
|
|
23
|
+
metadata;
|
|
24
|
+
propertyInfo = {};
|
|
25
|
+
constructor(transportConfig) {
|
|
26
|
+
this.metadata = transportConfig.metadata ?? {};
|
|
27
|
+
}
|
|
28
|
+
get adapter() {
|
|
29
|
+
const adapter = ESPRMNeoBase.getLocalControlAdapter();
|
|
30
|
+
if (!adapter) {
|
|
31
|
+
throw new Error("Local control adapter is not configured");
|
|
32
|
+
}
|
|
33
|
+
return adapter;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Connects to the node, retrying on failure. RMNeo's adapter resolves on a
|
|
37
|
+
* successful connection and rejects otherwise, so a resolved call is treated
|
|
38
|
+
* as connected.
|
|
39
|
+
*/
|
|
40
|
+
async connectWithRetry(nodeId, baseUrl, securityType, pop, username, maxRetries = 3) {
|
|
41
|
+
let attempt = 0;
|
|
42
|
+
let lastError;
|
|
43
|
+
while (attempt < maxRetries) {
|
|
44
|
+
try {
|
|
45
|
+
await this.adapter.connect(nodeId, baseUrl, securityType, pop, username);
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
catch (error) {
|
|
49
|
+
lastError = error;
|
|
50
|
+
attempt += 1;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
const message = lastError instanceof Error ? lastError.message : String(lastError);
|
|
54
|
+
throw new Error(`Failed to connect after ${maxRetries} attempts: ${message}`);
|
|
55
|
+
}
|
|
56
|
+
async ensureConnected(nodeId) {
|
|
57
|
+
const isConnected = await this.adapter.isConnected(nodeId);
|
|
58
|
+
if (!isConnected) {
|
|
59
|
+
await this.connectWithRetry(nodeId, this.metadata.baseUrl, this.metadata.securityType ?? 0, this.metadata.pop, this.metadata.username);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
async setParam(payload, _nodeRef) {
|
|
63
|
+
this.payload = payload;
|
|
64
|
+
await this.ensureConnected(this.payload?.node_id);
|
|
65
|
+
const success = await this.setProperty(this.payload?.payload ?? {});
|
|
66
|
+
if (!success) {
|
|
67
|
+
throw new Error("Failed to set device params over local control");
|
|
68
|
+
}
|
|
69
|
+
return { message: "Parameters updated successfully", statusCode: 200 };
|
|
70
|
+
}
|
|
71
|
+
async getParams(payload, _nodeRef) {
|
|
72
|
+
this.payload = payload;
|
|
73
|
+
await this.ensureConnected(this.payload?.node_id);
|
|
74
|
+
return this.getPropertyInfo();
|
|
75
|
+
}
|
|
76
|
+
// ── set ──────────────────────────────────────────────────────────────────
|
|
77
|
+
async setProperty(json) {
|
|
78
|
+
const request = this.buildSetPropertyRequest(json);
|
|
79
|
+
const response = await this.adapter.sendData(this.payload?.node_id, Endpoint.LOCAL_CTRL, request);
|
|
80
|
+
return this.processSetPropertyResponse(response);
|
|
81
|
+
}
|
|
82
|
+
buildSetPropertyRequest(json) {
|
|
83
|
+
const message = new LocalCtrlMessage();
|
|
84
|
+
message.msg = LocalCtrlMsgType.TypeCmdSetPropertyValues;
|
|
85
|
+
const cmd = new CmdSetPropertyValues();
|
|
86
|
+
const prop = new PropertyValue();
|
|
87
|
+
prop.index = LOCAL_CONTROL_PARAMS_INDEX;
|
|
88
|
+
prop.value = new TextEncoder().encode(JSON.stringify(json ?? {}));
|
|
89
|
+
cmd.props.push(prop);
|
|
90
|
+
message.cmd_set_prop_vals = cmd;
|
|
91
|
+
return uint8ArrayToBase64(message.serialize());
|
|
92
|
+
}
|
|
93
|
+
processSetPropertyResponse(response) {
|
|
94
|
+
const deserialized = LocalCtrlMessage.deserialize(base64ToUint8Array(response));
|
|
95
|
+
return deserialized.resp_set_prop_vals.status === Status.Success;
|
|
96
|
+
}
|
|
97
|
+
// ── get ──────────────────────────────────────────────────────────────────
|
|
98
|
+
/** Fetches the property count, then reads each property value into propertyInfo. */
|
|
99
|
+
async getPropertyInfo() {
|
|
100
|
+
this.propertyInfo = {};
|
|
101
|
+
const count = await this.fetchPropertyCount();
|
|
102
|
+
for (let index = 0; index < count; index++) {
|
|
103
|
+
await this.fetchPropertyValue(index);
|
|
104
|
+
}
|
|
105
|
+
return this.propertyInfo;
|
|
106
|
+
}
|
|
107
|
+
async fetchPropertyCount() {
|
|
108
|
+
const response = await this.adapter.sendData(this.payload?.node_id, Endpoint.LOCAL_CTRL, this.buildGetPropertyCountRequest());
|
|
109
|
+
return this.processGetPropertyCountResponse(response);
|
|
110
|
+
}
|
|
111
|
+
buildGetPropertyCountRequest() {
|
|
112
|
+
const request = new LocalCtrlMessage();
|
|
113
|
+
request.msg = LocalCtrlMsgType.TypeCmdGetPropertyCount;
|
|
114
|
+
request.cmd_get_prop_count = new CmdGetPropertyCount();
|
|
115
|
+
return uint8ArrayToBase64(request.serialize());
|
|
116
|
+
}
|
|
117
|
+
processGetPropertyCountResponse(response) {
|
|
118
|
+
const deserialized = LocalCtrlMessage.deserialize(base64ToUint8Array(response));
|
|
119
|
+
if (deserialized.resp_get_prop_count.status !== Status.Success) {
|
|
120
|
+
throw new Error("Failed to retrieve property count from device");
|
|
121
|
+
}
|
|
122
|
+
return deserialized.resp_get_prop_count.count;
|
|
123
|
+
}
|
|
124
|
+
async fetchPropertyValue(index) {
|
|
125
|
+
const response = await this.adapter.sendData(this.payload?.node_id, Endpoint.LOCAL_CTRL, this.buildGetPropertyValueRequest(index));
|
|
126
|
+
const property = this.processGetPropertyValueResponse(response);
|
|
127
|
+
if (property) {
|
|
128
|
+
this.propertyInfo[property.name] = property.value;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
buildGetPropertyValueRequest(index) {
|
|
132
|
+
const request = new LocalCtrlMessage();
|
|
133
|
+
request.msg = LocalCtrlMsgType.TypeCmdGetPropertyValues;
|
|
134
|
+
const cmd = new CmdGetPropertyValues();
|
|
135
|
+
cmd.indices.push(index);
|
|
136
|
+
request.cmd_get_prop_vals = cmd;
|
|
137
|
+
return uint8ArrayToBase64(request.serialize());
|
|
138
|
+
}
|
|
139
|
+
processGetPropertyValueResponse(response) {
|
|
140
|
+
const deserialized = LocalCtrlMessage.deserialize(base64ToUint8Array(response));
|
|
141
|
+
if (deserialized.resp_get_prop_vals.status !== Status.Success) {
|
|
142
|
+
throw new Error("Failed to get property values from device response");
|
|
143
|
+
}
|
|
144
|
+
const prop = deserialized.resp_get_prop_vals.props[0];
|
|
145
|
+
if (!prop)
|
|
146
|
+
return undefined;
|
|
147
|
+
return {
|
|
148
|
+
name: prop.name || "unknown",
|
|
149
|
+
value: JSON.parse(new TextDecoder().decode(prop.value)),
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
export { ESPLocalControlTransport };
|
|
155
|
+
//# sourceMappingURL=ESPLocalControlTransport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ESPLocalControlTransport.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { NodeMQTTOrchestrator } from '../NodeMQTTOrchestrator.js';
|
|
2
|
+
|
|
3
|
+
/*
|
|
4
|
+
* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
|
|
5
|
+
*
|
|
6
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Built-in `mqtt` transport — the RainMaker Neo cloud channel. Drives node
|
|
10
|
+
* params over MQTT (AWS IoT shadow / RainMaker user params topic) through
|
|
11
|
+
* {@link NodeMQTTOrchestrator}.
|
|
12
|
+
*/
|
|
13
|
+
class ESPMqttTransport {
|
|
14
|
+
async setParam(payload, _nodeRef) {
|
|
15
|
+
await NodeMQTTOrchestrator.setParams(payload.node_id, payload.payload);
|
|
16
|
+
return { message: "Parameters updated successfully", statusCode: 200 };
|
|
17
|
+
}
|
|
18
|
+
async getParams(payload, _nodeRef) {
|
|
19
|
+
return NodeMQTTOrchestrator.getParams(payload.node_id);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { ESPMqttTransport };
|
|
24
|
+
//# sourceMappingURL=ESPMqttTransport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ESPMqttTransport.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ESPTransportMode } from '../../types/transport.js';
|
|
2
|
+
import { ESPMqttTransport } from './ESPMqttTransport.js';
|
|
3
|
+
import { ESPLocalControlTransport } from './ESPLocalControlTransport.js';
|
|
4
|
+
|
|
5
|
+
/*
|
|
6
|
+
* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
|
|
7
|
+
*
|
|
8
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Selects and wraps a built-in transport implementation based on the transport
|
|
12
|
+
* config `type`. The {@link delegatedTransportHandler} constructs one of these
|
|
13
|
+
* per transport attempt and drives it through {@link ESPTransportInterface}.
|
|
14
|
+
*/
|
|
15
|
+
class ESPTransportManager {
|
|
16
|
+
transport;
|
|
17
|
+
constructor(transportConfig) {
|
|
18
|
+
if (transportConfig) {
|
|
19
|
+
switch (transportConfig.type) {
|
|
20
|
+
case ESPTransportMode.mqtt:
|
|
21
|
+
this.transport = new ESPMqttTransport();
|
|
22
|
+
break;
|
|
23
|
+
case ESPTransportMode.local:
|
|
24
|
+
this.transport = new ESPLocalControlTransport(transportConfig);
|
|
25
|
+
break;
|
|
26
|
+
default:
|
|
27
|
+
throw new Error(`Unsupported transport type: ${transportConfig.type}. Please provide a transport manager via customTransportManagers.`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
setParam(payload, nodeRef) {
|
|
32
|
+
return this.transport.setParam(payload, nodeRef);
|
|
33
|
+
}
|
|
34
|
+
getParams(payload, nodeRef) {
|
|
35
|
+
return this.transport.getParams(payload, nodeRef);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export { ESPTransportManager };
|
|
40
|
+
//# sourceMappingURL=ESPTransportManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ESPTransportManager.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -0,0 +1,272 @@
|
|
|
1
|
+
import { NodeMQTTOrchestrator } from './NodeMQTTOrchestrator.js';
|
|
2
|
+
import { transformShadowToNodeUpdate } from './ESPRMNeoHelpers/transformShadowToNodeUpdate.js';
|
|
3
|
+
import { constructShadowName } from '../utils/shadowUtils.js';
|
|
4
|
+
import { SubscriptionChannelIds } from '../utils/constants.js';
|
|
5
|
+
import { Logger } from '../utils/logger.js';
|
|
6
|
+
|
|
7
|
+
/*
|
|
8
|
+
* SPDX-FileCopyrightText: 2026 Espressif Systems (Shanghai) CO LTD
|
|
9
|
+
*
|
|
10
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
11
|
+
*/
|
|
12
|
+
const logger = new Logger("MQTTSubscriptionChannel");
|
|
13
|
+
/**
|
|
14
|
+
* MQTT subscription channel for ESP RainMaker Neo.
|
|
15
|
+
*
|
|
16
|
+
* This channel is a thin adapter over {@link NodeMQTTOrchestrator}, which owns
|
|
17
|
+
* the single MQTT connection, the AWS IoT shadow topic subscriptions, and the
|
|
18
|
+
* deduplication of nodes that share a group/subgroup shadow. The channel's job
|
|
19
|
+
* is only to:
|
|
20
|
+
* - map a node to its shadow and register it with the orchestrator,
|
|
21
|
+
* - normalize each shadow message into the canonical {@link ESPNodeUpdateData}
|
|
22
|
+
* envelope (so the app sees the same shape from every channel), and
|
|
23
|
+
* - fan that envelope out to the app callbacks subscribed for the node.
|
|
24
|
+
*
|
|
25
|
+
* It deliberately does **not** open/close the MQTT connection — that lifecycle
|
|
26
|
+
* is owned by `ESPRMNeoBase.init()` / the orchestrator, so disposing one channel
|
|
27
|
+
* never tears down a connection other channels (or the node) still use.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const mqttChannel = new MQTTSubscriptionChannel();
|
|
32
|
+
* await ESPRMNeoBase.subscriptionManager.registerChannel(mqttChannel);
|
|
33
|
+
* await ESPRMNeoBase.subscriptionManager.subscribeToNode(node, (update) => {
|
|
34
|
+
* console.log(`Node ${update.nodeId} updated:`, update.payload);
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
class MQTTSubscriptionChannel {
|
|
39
|
+
channelId = SubscriptionChannelIds.MQTT;
|
|
40
|
+
/**
|
|
41
|
+
* App callbacks per node (nodeId → set of subscriber callbacks).
|
|
42
|
+
*/
|
|
43
|
+
nodeCallbacks = new Map();
|
|
44
|
+
/**
|
|
45
|
+
* The single orchestrator listener installed per node (nodeId → listener).
|
|
46
|
+
* Kept so we can detach exactly that listener on unsubscribe.
|
|
47
|
+
*/
|
|
48
|
+
orchestratorListeners = new Map();
|
|
49
|
+
/**
|
|
50
|
+
* nodeId → orchestrator generation at which we last attached its listener.
|
|
51
|
+
* If the orchestrator is re-initialized (logout→login), the generation
|
|
52
|
+
* changes and we re-attach instead of trusting stale cached state.
|
|
53
|
+
*/
|
|
54
|
+
nodeGeneration = new Map();
|
|
55
|
+
/**
|
|
56
|
+
* nodeId → tail of the in-flight operation chain for that node. Subscribe and
|
|
57
|
+
* unsubscribe for the same node are serialized through this so they never
|
|
58
|
+
* interleave across an await boundary (see {@link runSerial}).
|
|
59
|
+
*/
|
|
60
|
+
nodeOps = new Map();
|
|
61
|
+
isInitialized = false;
|
|
62
|
+
/**
|
|
63
|
+
* Initialize the channel. The MQTT engine
|
|
64
|
+
* ({@link NodeMQTTOrchestrator} over `ESPRMNeoMqtt`) is initialized by
|
|
65
|
+
* `ESPRMNeoBase.init()` when an `mqttAdapter` is configured, so there is no
|
|
66
|
+
* connection to set up here.
|
|
67
|
+
*/
|
|
68
|
+
async initialize() {
|
|
69
|
+
this.isInitialized = true;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* MQTT is the universal transport for RainMaker Neo nodes, so this channel
|
|
73
|
+
* supports every node.
|
|
74
|
+
*
|
|
75
|
+
* @param _node - Unused; MQTT supports all Neo nodes.
|
|
76
|
+
* @returns Always `true`.
|
|
77
|
+
*/
|
|
78
|
+
supportsNode(_node) {
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Subscribe to parameter updates for a node.
|
|
83
|
+
*
|
|
84
|
+
* Constructs the node's shadow name from its group/subgroup context, registers
|
|
85
|
+
* it with the orchestrator (deduped by shadow), and installs a single
|
|
86
|
+
* orchestrator listener per node that normalizes shadow messages and fans
|
|
87
|
+
* them out to all subscriber callbacks.
|
|
88
|
+
*
|
|
89
|
+
* @param callback - Invoked with a normalized {@link ESPNodeUpdateData} on each update.
|
|
90
|
+
* @param node - The node to subscribe to. Must carry `nodeId` (or `id`) and
|
|
91
|
+
* `groupId`; `subgroupIds` optional. Group context is used to build the
|
|
92
|
+
* shadow name directly — no reverse lookup from persisted state.
|
|
93
|
+
* @throws Error if the node has no id or the orchestrator subscription fails.
|
|
94
|
+
*/
|
|
95
|
+
async subscribe(callback, node) {
|
|
96
|
+
const nodeId = node.nodeId ?? node.id;
|
|
97
|
+
if (!nodeId) {
|
|
98
|
+
throw new Error("MQTTSubscriptionChannel.subscribe requires a node with an id");
|
|
99
|
+
}
|
|
100
|
+
if (!this.isInitialized) {
|
|
101
|
+
await this.initialize();
|
|
102
|
+
}
|
|
103
|
+
// Serialize per node so this subscribe never interleaves with another
|
|
104
|
+
// subscribe/detach for the same node across an await. Without this, a late
|
|
105
|
+
// subscriber could attach to about-to-be-rolled-back (failed first install)
|
|
106
|
+
// or about-to-be-torn-down (concurrent detach) state and then silently
|
|
107
|
+
// never receive updates.
|
|
108
|
+
return this.runSerial(nodeId, () => this.installSubscriber(callback, node));
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Installs a single subscriber for a node. Runs exclusively per node via
|
|
112
|
+
* {@link runSerial}: the first subscriber constructs the shadow name from the
|
|
113
|
+
* node's group context, registers the node and attaches one shared
|
|
114
|
+
* orchestrator listener; later subscribers join the node's existing callback
|
|
115
|
+
* set.
|
|
116
|
+
*
|
|
117
|
+
* @param callback - Subscriber to add.
|
|
118
|
+
* @param node - The node whose shadow is constructed from its group context.
|
|
119
|
+
*/
|
|
120
|
+
async installSubscriber(callback, node) {
|
|
121
|
+
const nodeId = (node.nodeId ?? node.id);
|
|
122
|
+
const shadowName = constructShadowName(node.groupId ?? "", node.subgroupIds ?? []);
|
|
123
|
+
// Re-bind shadow from node group context (no-op if unchanged).
|
|
124
|
+
NodeMQTTOrchestrator.registerNode(nodeId, shadowName);
|
|
125
|
+
// If the orchestrator was re-initialized since we last attached this node
|
|
126
|
+
// (e.g. logout→login wiped its subscription state), our cached listener is
|
|
127
|
+
// dead. Drop the stale local state so the block below re-creates the
|
|
128
|
+
// listener and re-attaches it to the new orchestrator.
|
|
129
|
+
const generation = NodeMQTTOrchestrator.getGeneration();
|
|
130
|
+
if (this.nodeCallbacks.has(nodeId) &&
|
|
131
|
+
this.nodeGeneration.get(nodeId) !== generation) {
|
|
132
|
+
this.nodeCallbacks.delete(nodeId);
|
|
133
|
+
this.orchestratorListeners.delete(nodeId);
|
|
134
|
+
}
|
|
135
|
+
this.nodeGeneration.set(nodeId, generation);
|
|
136
|
+
// First subscriber for this node installs the shared orchestrator listener.
|
|
137
|
+
if (!this.nodeCallbacks.has(nodeId)) {
|
|
138
|
+
const callbacks = new Set();
|
|
139
|
+
this.nodeCallbacks.set(nodeId, callbacks);
|
|
140
|
+
const listener = (params) => {
|
|
141
|
+
const update = transformShadowToNodeUpdate(nodeId, params, { shadowName }, this.channelId);
|
|
142
|
+
callbacks.forEach((cb) => {
|
|
143
|
+
try {
|
|
144
|
+
cb(update);
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
logger.error(`Subscriber threw for node ${nodeId}`, error);
|
|
148
|
+
}
|
|
149
|
+
});
|
|
150
|
+
};
|
|
151
|
+
this.orchestratorListeners.set(nodeId, listener);
|
|
152
|
+
try {
|
|
153
|
+
await NodeMQTTOrchestrator.subscribeToNode(nodeId, listener);
|
|
154
|
+
}
|
|
155
|
+
catch (error) {
|
|
156
|
+
// Roll back bookkeeping so a later retry can subscribe cleanly.
|
|
157
|
+
this.nodeCallbacks.delete(nodeId);
|
|
158
|
+
this.orchestratorListeners.delete(nodeId);
|
|
159
|
+
this.nodeGeneration.delete(nodeId);
|
|
160
|
+
throw error;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
this.nodeCallbacks.get(nodeId).add(callback);
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* Unsubscribe from a node.
|
|
167
|
+
*
|
|
168
|
+
* - No `nodeId`: detach every node.
|
|
169
|
+
* - `nodeId` only: detach the node and all its subscribers.
|
|
170
|
+
* - `nodeId` + `callback`: remove just that subscriber; the node stays
|
|
171
|
+
* subscribed (and the shared orchestrator listener stays attached) until its
|
|
172
|
+
* last subscriber is removed, so sibling subscribers are not affected.
|
|
173
|
+
*
|
|
174
|
+
* @param nodeId - Node id to detach; omit to detach all nodes.
|
|
175
|
+
* @param callback - Optional specific subscriber to remove.
|
|
176
|
+
*/
|
|
177
|
+
async unsubscribe(nodeId, callback) {
|
|
178
|
+
if (!nodeId) {
|
|
179
|
+
const ids = Array.from(this.nodeCallbacks.keys());
|
|
180
|
+
for (const id of ids) {
|
|
181
|
+
await this.runSerial(id, () => this.removeSubscriber(id, undefined));
|
|
182
|
+
}
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
return this.runSerial(nodeId, () => this.removeSubscriber(nodeId, callback));
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Removes a subscriber for a node. Runs exclusively per node via
|
|
189
|
+
* {@link runSerial}. With a `callback`, only that subscriber is removed and the
|
|
190
|
+
* node stays subscribed while others remain; once the last subscriber is gone
|
|
191
|
+
* (or when `callback` is omitted) the node is fully detached.
|
|
192
|
+
*
|
|
193
|
+
* @param nodeId - Node id.
|
|
194
|
+
* @param callback - Specific subscriber to remove, or omit to detach the node.
|
|
195
|
+
*/
|
|
196
|
+
async removeSubscriber(nodeId, callback) {
|
|
197
|
+
if (callback) {
|
|
198
|
+
const callbacks = this.nodeCallbacks.get(nodeId);
|
|
199
|
+
if (!callbacks)
|
|
200
|
+
return;
|
|
201
|
+
callbacks.delete(callback);
|
|
202
|
+
// Other subscribers remain → keep the node (and its orchestrator listener).
|
|
203
|
+
if (callbacks.size > 0)
|
|
204
|
+
return;
|
|
205
|
+
// Last subscriber removed → fall through to fully detach the node.
|
|
206
|
+
}
|
|
207
|
+
await this.detachNode(nodeId);
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* Detach all listeners. The shared MQTT connection is intentionally left
|
|
211
|
+
* intact — its lifecycle is owned by the orchestrator / `ESPRMNeoBase`.
|
|
212
|
+
*/
|
|
213
|
+
async dispose() {
|
|
214
|
+
await this.unsubscribe();
|
|
215
|
+
this.isInitialized = false;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Removes this channel's orchestrator listener for a node and clears its
|
|
219
|
+
* bookkeeping. Only this channel's listener is detached — the orchestrator
|
|
220
|
+
* idle-cleans the underlying shadow topic once no listeners remain, so a
|
|
221
|
+
* node's own subscription (e.g. from `ESPRMNeoNode`) is never clobbered.
|
|
222
|
+
*
|
|
223
|
+
* @param nodeId - Node id to detach.
|
|
224
|
+
*/
|
|
225
|
+
async detachNode(nodeId) {
|
|
226
|
+
const listener = this.orchestratorListeners.get(nodeId);
|
|
227
|
+
const callbacks = this.nodeCallbacks.get(nodeId);
|
|
228
|
+
// Drop local state synchronously (before the await) so nothing observes
|
|
229
|
+
// half-torn-down state, and empty the set the listener closes over so an
|
|
230
|
+
// in-flight message during the orchestrator unsubscribe cannot reach a
|
|
231
|
+
// removed subscriber.
|
|
232
|
+
this.orchestratorListeners.delete(nodeId);
|
|
233
|
+
this.nodeCallbacks.delete(nodeId);
|
|
234
|
+
this.nodeGeneration.delete(nodeId);
|
|
235
|
+
callbacks?.clear();
|
|
236
|
+
if (listener) {
|
|
237
|
+
try {
|
|
238
|
+
await NodeMQTTOrchestrator.unsubscribeFromNode(nodeId, listener);
|
|
239
|
+
}
|
|
240
|
+
catch (error) {
|
|
241
|
+
logger.error(`Failed to unsubscribe node ${nodeId} from MQTT`, error);
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* Runs `op` exclusively per node: operations for the same nodeId are chained
|
|
247
|
+
* so they never interleave across an await point, while operations for
|
|
248
|
+
* different nodes still run concurrently. The caller receives `op`'s own
|
|
249
|
+
* outcome (success or failure); a failed op does not block later ops.
|
|
250
|
+
*
|
|
251
|
+
* @param nodeId - Node whose operations are serialized.
|
|
252
|
+
* @param op - The operation to run once it reaches the front of the queue.
|
|
253
|
+
* @returns The result of `op`.
|
|
254
|
+
*/
|
|
255
|
+
runSerial(nodeId, op) {
|
|
256
|
+
const prev = this.nodeOps.get(nodeId) ?? Promise.resolve();
|
|
257
|
+
// Chain after the previous op regardless of whether it resolved or rejected.
|
|
258
|
+
const result = prev.then(op, op);
|
|
259
|
+
const tail = result.then(() => undefined, () => undefined);
|
|
260
|
+
this.nodeOps.set(nodeId, tail);
|
|
261
|
+
void tail.then(() => {
|
|
262
|
+
// Drop the queue entry once this was the last queued op for the node.
|
|
263
|
+
if (this.nodeOps.get(nodeId) === tail) {
|
|
264
|
+
this.nodeOps.delete(nodeId);
|
|
265
|
+
}
|
|
266
|
+
});
|
|
267
|
+
return result;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
export { MQTTSubscriptionChannel };
|
|
272
|
+
//# sourceMappingURL=MQTTSubscriptionChannel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MQTTSubscriptionChannel.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|