@dronedeploy/rocos-js-sdk 0.0.1 → 1.0.0-alpha-2
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/IRocosSDK.d.ts +55 -0
- package/IRocosSDK.js +2 -0
- package/README.md +108 -0
- package/RocosSDK.d.ts +138 -0
- package/RocosSDK.js +292 -0
- package/api/StreamRegister.d.ts +13 -0
- package/api/StreamRegister.js +69 -0
- package/api/atoms/StreamHeartbeat.d.ts +27 -0
- package/api/atoms/StreamHeartbeat.js +111 -0
- package/api/streams/caller/CallerStream.d.ts +13 -0
- package/api/streams/caller/CallerStream.js +77 -0
- package/api/streams/caller/CallerStreamAbstract.d.ts +23 -0
- package/api/streams/caller/CallerStreamAbstract.js +87 -0
- package/api/streams/caller/CallerStreamNode.d.ts +13 -0
- package/api/streams/caller/CallerStreamNode.js +115 -0
- package/api/streams/command/CommandStream.d.ts +10 -0
- package/api/streams/command/CommandStream.js +66 -0
- package/api/streams/command/CommandStreamAbstract.d.ts +20 -0
- package/api/streams/command/CommandStreamAbstract.js +63 -0
- package/api/streams/command/CommandStreamNode.d.ts +10 -0
- package/api/streams/command/CommandStreamNode.js +69 -0
- package/api/streams/control/ControlStream.d.ts +12 -0
- package/api/streams/control/ControlStream.js +75 -0
- package/api/streams/control/ControlStreamAbstract.d.ts +25 -0
- package/api/streams/control/ControlStreamAbstract.js +111 -0
- package/api/streams/control/ControlStreamNode.d.ts +12 -0
- package/api/streams/control/ControlStreamNode.js +73 -0
- package/api/streams/fileAccessor/FileAccessorStream.d.ts +8 -0
- package/api/streams/fileAccessor/FileAccessorStream.js +59 -0
- package/api/streams/fileAccessor/FileAccessorStreamAbstract.d.ts +21 -0
- package/api/streams/fileAccessor/FileAccessorStreamAbstract.js +62 -0
- package/api/streams/fileAccessor/FileAccessorStreamNode.d.ts +8 -0
- package/api/streams/fileAccessor/FileAccessorStreamNode.js +66 -0
- package/api/streams/search/SearchStream.d.ts +13 -0
- package/api/streams/search/SearchStream.js +96 -0
- package/api/streams/search/SearchStreamAbstract.d.ts +25 -0
- package/api/streams/search/SearchStreamAbstract.js +72 -0
- package/api/streams/search/SearchStreamNode.d.ts +13 -0
- package/api/streams/search/SearchStreamNode.js +118 -0
- package/api/streams/telemetry/TelemetryStream.d.ts +17 -0
- package/api/streams/telemetry/TelemetryStream.js +97 -0
- package/api/streams/telemetry/TelemetryStreamAbstract.d.ts +59 -0
- package/api/streams/telemetry/TelemetryStreamAbstract.js +402 -0
- package/api/streams/telemetry/TelemetryStreamNode.d.ts +21 -0
- package/api/streams/telemetry/TelemetryStreamNode.js +175 -0
- package/api/streams/webRTCSignalling/WebRTCSignallingStream.d.ts +39 -0
- package/api/streams/webRTCSignalling/WebRTCSignallingStream.js +84 -0
- package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.d.ts +29 -0
- package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.js +65 -0
- package/constants/api.d.ts +126 -0
- package/constants/api.js +126 -0
- package/constants/auth.d.ts +2 -0
- package/constants/auth.js +2 -0
- package/constants/grpc.d.ts +5 -0
- package/constants/grpc.js +5 -0
- package/constants/identifier.d.ts +6 -0
- package/constants/identifier.js +6 -0
- package/constants/timezones.d.ts +2 -0
- package/constants/timezones.js +427 -0
- package/grpc/conker_pb.client.d.ts +78 -0
- package/grpc/conker_pb.client.js +55 -0
- package/grpc/conker_pb.d.ts +141 -0
- package/grpc/conker_pb.grpc-client.d.ts +81 -0
- package/grpc/conker_pb.grpc-client.js +58 -0
- package/grpc/conker_pb.js +104 -0
- package/grpc/filagree_pb.client.d.ts +68 -0
- package/grpc/filagree_pb.client.js +48 -0
- package/grpc/filagree_pb.d.ts +404 -0
- package/grpc/filagree_pb.grpc-client.d.ts +69 -0
- package/grpc/filagree_pb.grpc-client.js +51 -0
- package/grpc/filagree_pb.js +329 -0
- package/grpc/google/protobuf/descriptor_pb.d.ts +1798 -0
- package/grpc/google/protobuf/descriptor_pb.js +2378 -0
- package/grpc/google/protobuf/empty_pb.d.ts +23 -0
- package/grpc/google/protobuf/empty_pb.js +47 -0
- package/grpc/pigeon_pb.client.d.ts +96 -0
- package/grpc/pigeon_pb.client.js +72 -0
- package/grpc/pigeon_pb.d.ts +207 -0
- package/grpc/pigeon_pb.grpc-client.d.ts +98 -0
- package/grpc/pigeon_pb.grpc-client.js +68 -0
- package/grpc/pigeon_pb.js +144 -0
- package/grpc/rambo.uri.v1_pb.d.ts +73 -0
- package/grpc/rambo.uri.v1_pb.js +48 -0
- package/grpc/rambo.v1_pb.client.d.ts +66 -0
- package/grpc/rambo.v1_pb.client.js +48 -0
- package/grpc/rambo.v1_pb.d.ts +392 -0
- package/grpc/rambo.v1_pb.grpc-client.d.ts +56 -0
- package/grpc/rambo.v1_pb.grpc-client.js +44 -0
- package/grpc/rambo.v1_pb.js +272 -0
- package/grpc/serviette.uri.v1_pb.d.ts +89 -0
- package/grpc/serviette.uri.v1_pb.js +62 -0
- package/grpc/serviette.v1_pb.client.d.ts +225 -0
- package/grpc/serviette.v1_pb.client.js +174 -0
- package/grpc/serviette.v1_pb.d.ts +827 -0
- package/grpc/serviette.v1_pb.grpc-client.d.ts +215 -0
- package/grpc/serviette.v1_pb.grpc-client.js +162 -0
- package/grpc/serviette.v1_pb.js +553 -0
- package/grpc/slowlane_pb.client.d.ts +61 -0
- package/grpc/slowlane_pb.client.js +41 -0
- package/grpc/slowlane_pb.d.ts +303 -0
- package/grpc/slowlane_pb.grpc-client.d.ts +64 -0
- package/grpc/slowlane_pb.grpc-client.js +44 -0
- package/grpc/slowlane_pb.js +185 -0
- package/grpc/teletubby_pb.client.d.ts +145 -0
- package/grpc/teletubby_pb.client.js +104 -0
- package/grpc/teletubby_pb.d.ts +634 -0
- package/grpc/teletubby_pb.grpc-client.d.ts +152 -0
- package/grpc/teletubby_pb.grpc-client.js +100 -0
- package/grpc/teletubby_pb.js +1264 -0
- package/helpers/arrayRemove.d.ts +1 -0
- package/helpers/arrayRemove.js +3 -0
- package/helpers/arrayUnique.d.ts +1 -0
- package/helpers/arrayUnique.js +3 -0
- package/helpers/average.d.ts +1 -0
- package/helpers/average.js +6 -0
- package/helpers/cleanObject.d.ts +1 -0
- package/helpers/cleanObject.js +18 -0
- package/helpers/cleanObject.spec.d.ts +1 -0
- package/helpers/cleanObject.spec.js +53 -0
- package/helpers/enviroment.d.ts +8 -0
- package/helpers/enviroment.js +13 -0
- package/helpers/flattenCallsignsLookup.d.ts +2 -0
- package/helpers/flattenCallsignsLookup.js +6 -0
- package/helpers/flattenObject.d.ts +1 -0
- package/helpers/flattenObject.js +13 -0
- package/helpers/flattenObject.spec.d.ts +1 -0
- package/helpers/flattenObject.spec.js +29 -0
- package/helpers/flattenOneOf.d.ts +67 -0
- package/helpers/flattenOneOf.js +29 -0
- package/helpers/flattenOneOf.spec.d.ts +1 -0
- package/helpers/flattenOneOf.spec.js +157 -0
- package/helpers/formatServiceUrl.d.ts +1 -0
- package/helpers/formatServiceUrl.js +7 -0
- package/helpers/formatServiceUrl.spec.d.ts +1 -0
- package/helpers/formatServiceUrl.spec.js +16 -0
- package/helpers/generateUUID.d.ts +1 -0
- package/helpers/generateUUID.js +4 -0
- package/helpers/getSubscriptionsDifference.d.ts +10 -0
- package/helpers/getSubscriptionsDifference.js +35 -0
- package/helpers/getUniqueConfigKey.d.ts +7 -0
- package/helpers/getUniqueConfigKey.js +14 -0
- package/helpers/getUniqueId.d.ts +9 -0
- package/helpers/getUniqueId.js +11 -0
- package/helpers/getUnixTimeMs.d.ts +1 -0
- package/helpers/getUnixTimeMs.js +4 -0
- package/helpers/index.d.ts +3 -0
- package/helpers/index.js +3 -0
- package/helpers/nanosecondToMillisecond.d.ts +1 -0
- package/helpers/nanosecondToMillisecond.js +6 -0
- package/helpers/randomString.d.ts +1 -0
- package/helpers/randomString.js +3 -0
- package/helpers/standardDeviation.d.ts +1 -0
- package/helpers/standardDeviation.js +12 -0
- package/helpers/standardDeviation.spec.d.ts +1 -0
- package/helpers/standardDeviation.spec.js +11 -0
- package/helpers/stringToUint8Array.d.ts +1 -0
- package/helpers/stringToUint8Array.js +10 -0
- package/helpers/uint8ArrayToString.d.ts +1 -0
- package/helpers/uint8ArrayToString.js +10 -0
- package/index.d.ts +7 -0
- package/index.js +7 -0
- package/logger/RocosLogger.d.ts +7 -0
- package/logger/RocosLogger.js +37 -0
- package/models/CallsignStatus.d.ts +6 -0
- package/models/CallsignStatus.js +7 -0
- package/models/ExportDataQuery.d.ts +8 -0
- package/models/ExportDataQuery.js +13 -0
- package/models/ExternalProject.d.ts +6 -0
- package/models/ExternalProject.js +2 -0
- package/models/IBaseService.d.ts +4 -0
- package/models/IBaseService.js +1 -0
- package/models/IConfigGroup.d.ts +5 -0
- package/models/IConfigGroup.js +1 -0
- package/models/IDebugLevel.d.ts +2 -0
- package/models/IDebugLevel.js +1 -0
- package/models/IExportDataQuery.d.ts +9 -0
- package/models/IExportDataQuery.js +1 -0
- package/models/IFunctionConfig.d.ts +8 -0
- package/models/IFunctionConfig.js +1 -0
- package/models/IInvitation.d.ts +6 -0
- package/models/IInvitation.js +1 -0
- package/models/IInvitationExists.d.ts +4 -0
- package/models/IInvitationExists.js +1 -0
- package/models/IOperation.d.ts +6 -0
- package/models/IOperation.js +1 -0
- package/models/IPersonalAccessToken.d.ts +16 -0
- package/models/IPersonalAccessToken.js +1 -0
- package/models/IProject.d.ts +4 -0
- package/models/IProject.js +1 -0
- package/models/IProjectApplication.d.ts +6 -0
- package/models/IProjectApplication.js +1 -0
- package/models/IRobot.d.ts +18 -0
- package/models/IRobot.js +1 -0
- package/models/IRobotConfig.d.ts +8 -0
- package/models/IRobotConfig.js +1 -0
- package/models/IRobotPlugin.d.ts +3 -0
- package/models/IRobotPlugin.js +1 -0
- package/models/IRobotSettings.d.ts +28 -0
- package/models/IRobotSettings.js +1 -0
- package/models/IRobotTemplate.d.ts +10 -0
- package/models/IRobotTemplate.js +1 -0
- package/models/IRocosSDKConfig.d.ts +19 -0
- package/models/IRocosSDKConfig.js +1 -0
- package/models/ISource.d.ts +8 -0
- package/models/ISource.js +1 -0
- package/models/IStream.d.ts +9 -0
- package/models/IStream.js +1 -0
- package/models/IStreamConfig.d.ts +9 -0
- package/models/IStreamConfig.js +1 -0
- package/models/IStreamOptions.d.ts +7 -0
- package/models/IStreamOptions.js +1 -0
- package/models/IStreamSource.d.ts +8 -0
- package/models/IStreamSource.js +1 -0
- package/models/ISubscriberStatus.d.ts +5 -0
- package/models/ISubscriberStatus.js +1 -0
- package/models/ITelemetryStreamConfig.d.ts +7 -0
- package/models/ITelemetryStreamConfig.js +1 -0
- package/models/IToken.d.ts +9 -0
- package/models/IToken.js +1 -0
- package/models/IWidget.d.ts +25 -0
- package/models/IWidget.js +1 -0
- package/models/IWidgetLineGroup.d.ts +8 -0
- package/models/IWidgetLineGroup.js +1 -0
- package/models/ResponseLevelEnum.d.ts +10 -0
- package/models/ResponseLevelEnum.js +11 -0
- package/models/Robot.d.ts +20 -0
- package/models/Robot.js +8 -0
- package/models/RobotConfig.d.ts +10 -0
- package/models/RobotConfig.js +5 -0
- package/models/RobotPlugin.d.ts +5 -0
- package/models/RobotPlugin.js +5 -0
- package/models/RobotTemplate.d.ts +12 -0
- package/models/RobotTemplate.js +25 -0
- package/models/RocosError.d.ts +30 -0
- package/models/RocosError.js +39 -0
- package/models/ServiceEnum.d.ts +26 -0
- package/models/ServiceEnum.js +27 -0
- package/models/Stream.d.ts +10 -0
- package/models/Stream.js +11 -0
- package/models/StreamOptions.d.ts +9 -0
- package/models/StreamOptions.js +33 -0
- package/models/StreamSource.d.ts +10 -0
- package/models/StreamSource.js +11 -0
- package/models/SubscriberStatusEnum.d.ts +6 -0
- package/models/SubscriberStatusEnum.js +7 -0
- package/models/Token.d.ts +40 -0
- package/models/Token.js +78 -0
- package/models/Token.spec.d.ts +1 -0
- package/models/Token.spec.js +108 -0
- package/models/Widget.d.ts +27 -0
- package/models/Widget.js +12 -0
- package/models/WidgetLineGroup.d.ts +10 -0
- package/models/WidgetLineGroup.js +5 -0
- package/models/asset-storage/AssetModelItem.d.ts +29 -0
- package/models/asset-storage/AssetModelItem.js +1 -0
- package/models/caller/IRocosCallerMessageChunk.d.ts +10 -0
- package/models/caller/IRocosCallerMessageChunk.js +1 -0
- package/models/caller/IRocosCallerMessageChunks.d.ts +4 -0
- package/models/caller/IRocosCallerMessageChunks.js +1 -0
- package/models/caller/IRocosCallerMessageHeartbeat.d.ts +3 -0
- package/models/caller/IRocosCallerMessageHeartbeat.js +1 -0
- package/models/caller/IRocosCallerMessageResponse.d.ts +10 -0
- package/models/caller/IRocosCallerMessageResponse.js +1 -0
- package/models/caller/IRocosCallerMessageResponseAck.d.ts +16 -0
- package/models/caller/IRocosCallerMessageResponseAck.js +13 -0
- package/models/caller/IRocosCallerMessageResponseResult.d.ts +15 -0
- package/models/caller/IRocosCallerMessageResponseResult.js +12 -0
- package/models/caller/IRocosCallerMessageResponseReturn.d.ts +8 -0
- package/models/caller/IRocosCallerMessageResponseReturn.js +1 -0
- package/models/caller/IRocosCallerMessageResponseUid.d.ts +10 -0
- package/models/caller/IRocosCallerMessageResponseUid.js +7 -0
- package/models/caller/IRocosCallerMessageResponses.d.ts +4 -0
- package/models/caller/IRocosCallerMessageResponses.js +1 -0
- package/models/caller/RocosCallerResultStatus.d.ts +11 -0
- package/models/caller/RocosCallerResultStatus.js +12 -0
- package/models/caller/RocosResponseLevel.d.ts +6 -0
- package/models/caller/RocosResponseLevel.js +7 -0
- package/models/caller/index.d.ts +10 -0
- package/models/caller/index.js +10 -0
- package/models/callsigns/CallsignsEnums.d.ts +13 -0
- package/models/callsigns/CallsignsEnums.js +17 -0
- package/models/callsigns/CallsignsLookup.d.ts +8 -0
- package/models/callsigns/CallsignsLookup.js +28 -0
- package/models/callsigns/CallsignsQuery.d.ts +9 -0
- package/models/callsigns/CallsignsQuery.js +14 -0
- package/models/callsigns/CallsignsQueryPredicate.d.ts +9 -0
- package/models/callsigns/CallsignsQueryPredicate.js +15 -0
- package/models/command/IRocosCommandMessageHeartbeat.d.ts +1 -0
- package/models/command/IRocosCommandMessageHeartbeat.js +1 -0
- package/models/command/IRocosCommandMessageResponse.d.ts +55 -0
- package/models/command/IRocosCommandMessageResponse.js +29 -0
- package/models/command/RocosCommandResultStatus.d.ts +11 -0
- package/models/command/RocosCommandResultStatus.js +12 -0
- package/models/command/index.d.ts +4 -0
- package/models/command/index.js +4 -0
- package/models/file/FileEnums.d.ts +30 -0
- package/models/file/FileEnums.js +33 -0
- package/models/index.d.ts +75 -0
- package/models/index.js +75 -0
- package/models/integrations/Overlay.d.ts +49 -0
- package/models/integrations/Overlay.js +1 -0
- package/models/integrations/Plan.d.ts +324 -0
- package/models/integrations/Plan.js +1 -0
- package/models/maps/Map.d.ts +13 -0
- package/models/maps/Map.js +1 -0
- package/models/message/IRocosCallerMessage.d.ts +8 -0
- package/models/message/IRocosCallerMessage.js +1 -0
- package/models/message/IRocosChangeMessage.d.ts +6 -0
- package/models/message/IRocosChangeMessage.js +1 -0
- package/models/message/IRocosCommandMessage.d.ts +6 -0
- package/models/message/IRocosCommandMessage.js +1 -0
- package/models/message/IRocosControlMessage.d.ts +7 -0
- package/models/message/IRocosControlMessage.js +1 -0
- package/models/message/IRocosOpResultMessage.d.ts +6 -0
- package/models/message/IRocosOpResultMessage.js +1 -0
- package/models/message/IRocosSearchMessage.d.ts +5 -0
- package/models/message/IRocosSearchMessage.js +1 -0
- package/models/message/IRocosSearchRowMessage.d.ts +9 -0
- package/models/message/IRocosSearchRowMessage.js +1 -0
- package/models/message/IRocosSearchStatusMessage.d.ts +4 -0
- package/models/message/IRocosSearchStatusMessage.js +1 -0
- package/models/message/IRocosTelemetryMessage.d.ts +23 -0
- package/models/message/IRocosTelemetryMessage.js +1 -0
- package/models/message/IStreamStatusMessage.d.ts +5 -0
- package/models/message/IStreamStatusMessage.js +1 -0
- package/models/message/RocosCallerMessage.d.ts +10 -0
- package/models/message/RocosCallerMessage.js +32 -0
- package/models/message/RocosCommandMessage.d.ts +9 -0
- package/models/message/RocosCommandMessage.js +13 -0
- package/models/message/RocosControlMessage.d.ts +11 -0
- package/models/message/RocosControlMessage.js +14 -0
- package/models/message/RocosOpResultMessage.d.ts +10 -0
- package/models/message/RocosOpResultMessage.js +18 -0
- package/models/message/RocosSearchMessage.d.ts +9 -0
- package/models/message/RocosSearchMessage.js +24 -0
- package/models/message/RocosSearchRowMessage.d.ts +13 -0
- package/models/message/RocosSearchRowMessage.js +16 -0
- package/models/message/RocosTelemetryMessage.d.ts +10 -0
- package/models/message/RocosTelemetryMessage.js +63 -0
- package/models/message/index.d.ts +17 -0
- package/models/message/index.js +17 -0
- package/models/params/ICallerParams.d.ts +16 -0
- package/models/params/ICallerParams.js +1 -0
- package/models/params/ICommandParams.d.ts +9 -0
- package/models/params/ICommandParams.js +1 -0
- package/models/params/IControlParams.d.ts +8 -0
- package/models/params/IControlParams.js +1 -0
- package/models/params/IFileAccessorParams.d.ts +11 -0
- package/models/params/IFileAccessorParams.js +1 -0
- package/models/params/ISearchParams.d.ts +10 -0
- package/models/params/ISearchParams.js +1 -0
- package/models/params/ITelemetryParams.d.ts +18 -0
- package/models/params/ITelemetryParams.js +1 -0
- package/models/params/IWebRTCSignallingParams.d.ts +21 -0
- package/models/params/IWebRTCSignallingParams.js +1 -0
- package/models/projects/ProjectUser.d.ts +6 -0
- package/models/projects/ProjectUser.js +1 -0
- package/models/schedule/IScheduleAction.d.ts +13 -0
- package/models/schedule/IScheduleAction.js +6 -0
- package/models/schedule/IScheduleInfo.d.ts +11 -0
- package/models/schedule/IScheduleInfo.js +1 -0
- package/models/schedule/IScheduleJob.d.ts +12 -0
- package/models/schedule/IScheduleJob.js +1 -0
- package/models/search/SearchQueryFilter.d.ts +5 -0
- package/models/search/SearchQueryFilter.js +5 -0
- package/models/search/SearchStreamQuery.d.ts +15 -0
- package/models/search/SearchStreamQuery.js +6 -0
- package/models/stream/IBaseStream.d.ts +8 -0
- package/models/stream/IBaseStream.js +1 -0
- package/models/stream/ICallerStream.d.ts +8 -0
- package/models/stream/ICallerStream.js +1 -0
- package/models/stream/ICommandStream.d.ts +7 -0
- package/models/stream/ICommandStream.js +1 -0
- package/models/stream/IControlStream.d.ts +9 -0
- package/models/stream/IControlStream.js +1 -0
- package/models/stream/IFileAccessorStream.d.ts +9 -0
- package/models/stream/IFileAccessorStream.js +1 -0
- package/models/stream/ISearchStream.d.ts +11 -0
- package/models/stream/ISearchStream.js +1 -0
- package/models/stream/ITelemetryStream.d.ts +10 -0
- package/models/stream/ITelemetryStream.js +1 -0
- package/models/stream/IWebRTCSignallingStream.d.ts +76 -0
- package/models/stream/IWebRTCSignallingStream.js +1 -0
- package/models/types.d.ts +5 -0
- package/models/types.js +1 -0
- package/node/RocosSDKNode.d.ts +42 -0
- package/node/RocosSDKNode.js +143 -0
- package/node/index.d.ts +7 -0
- package/node/index.js +7 -0
- package/package.json +22 -6
- package/services/AssetStorageService.d.ts +99 -0
- package/services/AssetStorageService.js +158 -0
- package/services/AuthService.d.ts +93 -0
- package/services/AuthService.js +235 -0
- package/services/AuthService.spec.d.ts +1 -0
- package/services/AuthService.spec.js +163 -0
- package/services/BaseServiceAbstract.d.ts +36 -0
- package/services/BaseServiceAbstract.js +101 -0
- package/services/BaseStreamService.d.ts +18 -0
- package/services/BaseStreamService.js +47 -0
- package/services/CallerService.d.ts +10 -0
- package/services/CallerService.js +53 -0
- package/services/CallerServiceNode.d.ts +6 -0
- package/services/CallerServiceNode.js +7 -0
- package/services/CommandService.d.ts +9 -0
- package/services/CommandService.js +38 -0
- package/services/CommandServiceNode.d.ts +6 -0
- package/services/CommandServiceNode.js +7 -0
- package/services/ConfigGroupService.d.ts +89 -0
- package/services/ConfigGroupService.js +153 -0
- package/services/ControlService.d.ts +11 -0
- package/services/ControlService.js +57 -0
- package/services/ControlServiceNode.d.ts +6 -0
- package/services/ControlServiceNode.js +7 -0
- package/services/DashboardService.d.ts +97 -0
- package/services/DashboardService.js +142 -0
- package/services/EventService.d.ts +53 -0
- package/services/EventService.js +85 -0
- package/services/FileAccessorService.d.ts +11 -0
- package/services/FileAccessorService.js +37 -0
- package/services/FileAccessorServiceNode.d.ts +6 -0
- package/services/FileAccessorServiceNode.js +7 -0
- package/services/FunctionService.d.ts +68 -0
- package/services/FunctionService.js +99 -0
- package/services/IntegrationService.d.ts +48 -0
- package/services/IntegrationService.js +72 -0
- package/services/MapService.d.ts +109 -0
- package/services/MapService.js +149 -0
- package/services/PlatformTimeService.d.ts +35 -0
- package/services/PlatformTimeService.js +156 -0
- package/services/PlatformTimeService.spec.d.ts +1 -0
- package/services/PlatformTimeService.spec.js +180 -0
- package/services/ProfileService.d.ts +244 -0
- package/services/ProfileService.js +362 -0
- package/services/ProjectService.d.ts +110 -0
- package/services/ProjectService.js +160 -0
- package/services/RobotService.d.ts +278 -0
- package/services/RobotService.js +460 -0
- package/services/ScheduleService.d.ts +22 -0
- package/services/ScheduleService.js +36 -0
- package/services/SearchService.d.ts +12 -0
- package/services/SearchService.js +58 -0
- package/services/SearchServiceNode.d.ts +6 -0
- package/services/SearchServiceNode.js +7 -0
- package/services/SpotProvisioningService.d.ts +14 -0
- package/services/SpotProvisioningService.js +43 -0
- package/services/SpotProvisioningServiceNode.d.ts +15 -0
- package/services/SpotProvisioningServiceNode.js +43 -0
- package/services/StreamService.d.ts +98 -0
- package/services/StreamService.js +142 -0
- package/services/TelemetryService.d.ts +40 -0
- package/services/TelemetryService.js +142 -0
- package/services/TelemetryService.spec.d.ts +1 -0
- package/services/TelemetryService.spec.js +37 -0
- package/services/TelemetryServiceNode.d.ts +6 -0
- package/services/TelemetryServiceNode.js +7 -0
- package/services/TimeSyncerService.d.ts +13 -0
- package/services/TimeSyncerService.js +23 -0
- package/services/UserService.d.ts +200 -0
- package/services/UserService.js +315 -0
- package/services/WebRTCSignallingService.d.ts +22 -0
- package/services/WebRTCSignallingService.js +78 -0
- package/services/WorkflowService.d.ts +71 -0
- package/services/WorkflowService.js +118 -0
- package/services/index.d.ts +26 -0
- package/services/index.js +26 -0
- package/store/RocosStore.d.ts +31 -0
- package/store/RocosStore.js +47 -0
@@ -0,0 +1,143 @@
|
|
1
|
+
import { MapService, ScheduleService, SpotProvisioningServiceNode } from '../services';
|
2
|
+
import { AssetStorageService } from '../services/AssetStorageService';
|
3
|
+
import { AuthService } from '../services/AuthService';
|
4
|
+
import { CallerServiceNode } from '../services/CallerServiceNode';
|
5
|
+
import { CommandServiceNode } from '../services/CommandServiceNode';
|
6
|
+
import { ConfigGroupService } from '../services/ConfigGroupService';
|
7
|
+
import { ControlServiceNode } from '../services/ControlServiceNode';
|
8
|
+
import { DashboardService } from '../services/DashboardService';
|
9
|
+
import { EventService } from '../services/EventService';
|
10
|
+
import { FileAccessorServiceNode } from '../services/FileAccessorServiceNode';
|
11
|
+
import { FunctionService } from '../services/FunctionService';
|
12
|
+
import { IntegrationService } from '../services/IntegrationService';
|
13
|
+
import { ProfileService } from '../services/ProfileService';
|
14
|
+
import { ProjectService } from '../services/ProjectService';
|
15
|
+
import { RobotService } from '../services/RobotService';
|
16
|
+
import { RocosSDK } from '../RocosSDK';
|
17
|
+
import { SearchServiceNode } from '../services/SearchServiceNode';
|
18
|
+
import { ServiceEnum } from '../models/ServiceEnum';
|
19
|
+
import { StreamService } from '../services/StreamService';
|
20
|
+
import { TelemetryServiceNode } from '../services/TelemetryServiceNode';
|
21
|
+
import { UserService } from '../services/UserService';
|
22
|
+
import { WorkflowService } from '../services/WorkflowService';
|
23
|
+
export class RocosSDKNode extends RocosSDK {
|
24
|
+
// eslint-disable-next-line max-lines-per-function
|
25
|
+
getService(name) {
|
26
|
+
if (!this.services?.[name]) {
|
27
|
+
this.logger.info(`Service ${name} does not exist, creating it now.`);
|
28
|
+
switch (name) {
|
29
|
+
case ServiceEnum.AUTH:
|
30
|
+
this.services[name] = new AuthService(this.config);
|
31
|
+
break;
|
32
|
+
case ServiceEnum.TELEMETRY:
|
33
|
+
this.services[name] = new TelemetryServiceNode(this.config);
|
34
|
+
break;
|
35
|
+
case ServiceEnum.ROBOT:
|
36
|
+
this.services[name] = new RobotService(this.config);
|
37
|
+
break;
|
38
|
+
case ServiceEnum.EVENT:
|
39
|
+
this.services[name] = new EventService(this.config);
|
40
|
+
break;
|
41
|
+
case ServiceEnum.PROJECT:
|
42
|
+
this.services[name] = new ProjectService(this.config);
|
43
|
+
break;
|
44
|
+
case ServiceEnum.CALLER:
|
45
|
+
this.services[name] = new CallerServiceNode(this.config);
|
46
|
+
break;
|
47
|
+
case ServiceEnum.COMMAND:
|
48
|
+
this.services[name] = new CommandServiceNode(this.config);
|
49
|
+
break;
|
50
|
+
case ServiceEnum.CONTROL:
|
51
|
+
this.services[name] = new ControlServiceNode(this.config);
|
52
|
+
break;
|
53
|
+
case ServiceEnum.SEARCH:
|
54
|
+
this.services[name] = new SearchServiceNode(this.config);
|
55
|
+
break;
|
56
|
+
case ServiceEnum.CONFIG_GROUP:
|
57
|
+
this.services[name] = new ConfigGroupService(this.config);
|
58
|
+
break;
|
59
|
+
case ServiceEnum.DASHBOARD:
|
60
|
+
this.services[name] = new DashboardService(this.config);
|
61
|
+
break;
|
62
|
+
case ServiceEnum.FUNCTION:
|
63
|
+
this.services[name] = new FunctionService(this.config);
|
64
|
+
break;
|
65
|
+
case ServiceEnum.STREAM:
|
66
|
+
this.services[name] = new StreamService(this.config);
|
67
|
+
break;
|
68
|
+
case ServiceEnum.USER:
|
69
|
+
this.services[name] = new UserService(this.config);
|
70
|
+
break;
|
71
|
+
case ServiceEnum.WORKFLOW:
|
72
|
+
this.services[name] = new WorkflowService(this.config);
|
73
|
+
break;
|
74
|
+
case ServiceEnum.ASSET_STORAGE:
|
75
|
+
this.services[name] = new AssetStorageService(this.config);
|
76
|
+
break;
|
77
|
+
case ServiceEnum.PROFILE:
|
78
|
+
this.services[name] = new ProfileService(this.config);
|
79
|
+
break;
|
80
|
+
case ServiceEnum.FILE_ACCESSOR:
|
81
|
+
this.services[name] = new FileAccessorServiceNode(this.config);
|
82
|
+
break;
|
83
|
+
case ServiceEnum.SPOT_PROVISIONER:
|
84
|
+
this.services[name] = new SpotProvisioningServiceNode(this.config);
|
85
|
+
break;
|
86
|
+
case ServiceEnum.SCHEDULE:
|
87
|
+
this.services[name] = new ScheduleService(this.config);
|
88
|
+
break;
|
89
|
+
case ServiceEnum.INTEGRATION:
|
90
|
+
this.services[name] = new IntegrationService(this.config);
|
91
|
+
break;
|
92
|
+
case ServiceEnum.MAP:
|
93
|
+
this.services[name] = new MapService(this.config);
|
94
|
+
break;
|
95
|
+
}
|
96
|
+
}
|
97
|
+
this.logger.debug(`Found service ${name}.`);
|
98
|
+
return this.services[name];
|
99
|
+
}
|
100
|
+
/**
|
101
|
+
* Gets the telemetry service.
|
102
|
+
*/
|
103
|
+
getTelemetryService() {
|
104
|
+
return this.getService(ServiceEnum.TELEMETRY);
|
105
|
+
}
|
106
|
+
/**
|
107
|
+
* Gets the scheduler service.
|
108
|
+
*/
|
109
|
+
getSchedulerService() {
|
110
|
+
return this.getService(ServiceEnum.SCHEDULE);
|
111
|
+
}
|
112
|
+
/**
|
113
|
+
* Gets the service call service.
|
114
|
+
*/
|
115
|
+
getCallerService() {
|
116
|
+
return this.getService(ServiceEnum.CALLER);
|
117
|
+
}
|
118
|
+
/**
|
119
|
+
* Gets the command service.
|
120
|
+
*/
|
121
|
+
getCommandService() {
|
122
|
+
return this.getService(ServiceEnum.COMMAND);
|
123
|
+
}
|
124
|
+
/**
|
125
|
+
* Gets the robot control service.
|
126
|
+
*/
|
127
|
+
getControlService() {
|
128
|
+
return this.getService(ServiceEnum.CONTROL);
|
129
|
+
}
|
130
|
+
/**
|
131
|
+
* Gets the search service.
|
132
|
+
*/
|
133
|
+
getSearchService() {
|
134
|
+
return this.getService(ServiceEnum.SEARCH);
|
135
|
+
}
|
136
|
+
/**
|
137
|
+
* Gets the file accessor service
|
138
|
+
* @returns FileAccessorServiceNode
|
139
|
+
*/
|
140
|
+
getFileAccessorService() {
|
141
|
+
return this.getService(ServiceEnum.FILE_ACCESSOR);
|
142
|
+
}
|
143
|
+
}
|
package/node/index.d.ts
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
export * from './RocosSDKNode';
|
2
|
+
export * from '../services/CallerServiceNode';
|
3
|
+
export * from '../services/CommandServiceNode';
|
4
|
+
export * from '../services/ControlServiceNode';
|
5
|
+
export * from '../services/FileAccessorServiceNode';
|
6
|
+
export * from '../services/SearchServiceNode';
|
7
|
+
export * from '../services/TelemetryServiceNode';
|
package/node/index.js
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
export * from './RocosSDKNode';
|
2
|
+
export * from '../services/CallerServiceNode';
|
3
|
+
export * from '../services/CommandServiceNode';
|
4
|
+
export * from '../services/ControlServiceNode';
|
5
|
+
export * from '../services/FileAccessorServiceNode';
|
6
|
+
export * from '../services/SearchServiceNode';
|
7
|
+
export * from '../services/TelemetryServiceNode';
|
package/package.json
CHANGED
@@ -1,11 +1,27 @@
|
|
1
1
|
{
|
2
2
|
"name": "@dronedeploy/rocos-js-sdk",
|
3
|
-
"version": "0.0
|
4
|
-
"description": "
|
3
|
+
"version": "1.0.0-alpha-2",
|
4
|
+
"description": "Javascript SDK for rocos",
|
5
5
|
"main": "index.js",
|
6
|
-
"
|
7
|
-
|
6
|
+
"types": "index.d.ts",
|
7
|
+
"author": "Rocos",
|
8
|
+
"scripts": {},
|
9
|
+
"license": "MIT",
|
10
|
+
"devDependencies": {},
|
11
|
+
"dependencies": {
|
12
|
+
"@grpc/grpc-js": "^1.7.1",
|
13
|
+
"@improbable-eng/grpc-web": "^0.14.0",
|
14
|
+
"@protobuf-ts/grpcweb-transport": "^2.9.1",
|
15
|
+
"@protobuf-ts/plugin": "^2.9.1",
|
16
|
+
"@protobuf-ts/runtime": "^2.9.1",
|
17
|
+
"buffer": "^6.0.3",
|
18
|
+
"loglevel": "^1.7.1",
|
19
|
+
"loglevel-plugin-prefix": "^0.8.4",
|
20
|
+
"uuid": "^9.0.0"
|
8
21
|
},
|
9
|
-
"
|
10
|
-
|
22
|
+
"peerDependencies": {
|
23
|
+
"rxjs": "^6.6.6 || ^7.0.0"
|
24
|
+
},
|
25
|
+
"repository": {},
|
26
|
+
"private": false
|
11
27
|
}
|
@@ -0,0 +1,99 @@
|
|
1
|
+
import { AssetItemModel, AssetSyncDefinitionModel, AssetSyncDefinitionsModel } from '../models';
|
2
|
+
import { RocosError } from '../models/RocosError';
|
3
|
+
import { BaseServiceAbstract } from './BaseServiceAbstract';
|
4
|
+
import { IBaseService } from '../models/IBaseService';
|
5
|
+
import { IRocosSDKConfig } from '../models/IRocosSDKConfig';
|
6
|
+
export declare class AssetStorageService extends BaseServiceAbstract implements IBaseService {
|
7
|
+
constructor(config: IRocosSDKConfig);
|
8
|
+
protected getError(e: Error): RocosError;
|
9
|
+
getStatus(): boolean;
|
10
|
+
/**
|
11
|
+
* Create a new project asset
|
12
|
+
*
|
13
|
+
* @param projectId - Project Id
|
14
|
+
* @param filePath - Path to asset file
|
15
|
+
* @param file - File payload
|
16
|
+
*/
|
17
|
+
create(projectId: string, filePath: string, file: File): Promise<any>;
|
18
|
+
/**
|
19
|
+
* Update a project asset
|
20
|
+
*
|
21
|
+
* @param projectId - Project Id
|
22
|
+
* @param filePath - Path to asset file
|
23
|
+
* @param file - File payload
|
24
|
+
*/
|
25
|
+
update(projectId: string, filePath: string, file: File): Promise<any>;
|
26
|
+
/**
|
27
|
+
* Delete a project asset
|
28
|
+
*
|
29
|
+
* @param projectId - Project Id
|
30
|
+
* @param filePath - Path to asset file
|
31
|
+
*/
|
32
|
+
delete(projectId: string, filePath: string): Promise<any>;
|
33
|
+
/**
|
34
|
+
* Lost assets for a project or project file path
|
35
|
+
*
|
36
|
+
* @param projectId - Project Id
|
37
|
+
* @param filePath - Path to asset file
|
38
|
+
*/
|
39
|
+
list(projectId: string, filePath?: string): Promise<any>;
|
40
|
+
/**
|
41
|
+
* Get a project asset
|
42
|
+
*
|
43
|
+
* @param projectId - Project Id
|
44
|
+
* @param filePath - Path to asset file
|
45
|
+
*/
|
46
|
+
getAsset(projectId: string, filePath: string): Promise<any>;
|
47
|
+
/**
|
48
|
+
* List assets for a robot
|
49
|
+
*
|
50
|
+
* @param projectId
|
51
|
+
* @param callsign
|
52
|
+
* @param parent
|
53
|
+
* @param signedURL
|
54
|
+
*/
|
55
|
+
listRobotAssets(projectId: string, callsign: string, parent?: string, signedURL?: boolean): Promise<AssetItemModel[]>;
|
56
|
+
/**
|
57
|
+
* List assets for a flow
|
58
|
+
*
|
59
|
+
* @param projectId
|
60
|
+
* @param flowId
|
61
|
+
* @param flowInstance
|
62
|
+
* @param parent
|
63
|
+
* @param signedURL
|
64
|
+
*/
|
65
|
+
listFlowAssets(projectId: string, flowId: string, flowInstance: string, parent?: string, signedURL?: boolean): Promise<AssetItemModel[]>;
|
66
|
+
/**
|
67
|
+
* List assets for a mission
|
68
|
+
*
|
69
|
+
* @param projectId
|
70
|
+
* @param dataUUID
|
71
|
+
*/
|
72
|
+
getMissionAsset(projectId: string, dataUUID: string): Promise<AssetItemModel>;
|
73
|
+
/**
|
74
|
+
* Set Robot Sync Definitions
|
75
|
+
* @param projectId
|
76
|
+
* @param callsign
|
77
|
+
* @param definition
|
78
|
+
*/
|
79
|
+
setRobotSyncDefinitions(projectId: string, callsign: string, definition: AssetSyncDefinitionModel): Promise<AssetSyncDefinitionsModel>;
|
80
|
+
/**
|
81
|
+
* Get Robot Sync Definitions
|
82
|
+
* @param projectId
|
83
|
+
* @param callsign
|
84
|
+
*/
|
85
|
+
getRobotSyncDefinitions(projectId: string, callsign: string): Promise<AssetSyncDefinitionsModel>;
|
86
|
+
/**
|
87
|
+
* Set Profile Sync Definitions
|
88
|
+
* @param projectId
|
89
|
+
* @param profileId
|
90
|
+
* @param definition
|
91
|
+
*/
|
92
|
+
setProfileSyncDefinitions(projectId: string, profileId: string, definition: AssetSyncDefinitionModel): Promise<any>;
|
93
|
+
/**
|
94
|
+
* Get Profile Sync Definitions
|
95
|
+
* @param projectId
|
96
|
+
* @param profileId
|
97
|
+
*/
|
98
|
+
getProfileSyncDefinition(projectId: string, profileId: string): Promise<AssetSyncDefinitionsModel>;
|
99
|
+
}
|
@@ -0,0 +1,158 @@
|
|
1
|
+
import { API_PROJECT_ASSET_PATH_URL, API_PROJECT_ASSET_PROFILES_SYNC_DEFINITION_PATH_URL, API_PROJECT_ASSET_ROBOTS_SYNC_DEFINITION_PATH_URL, API_PROJECT_ASSET_URL, API_PROJECT_FLOW_ASSET_PATH_URL, API_PROJECT_MISSION_ASSET_PATH_URL, API_PROJECT_ROBOT_ASSET_PATH_URL, } from '../constants/api';
|
2
|
+
import { RocosError, errorCodes } from '../models/RocosError';
|
3
|
+
import { BaseServiceAbstract } from './BaseServiceAbstract';
|
4
|
+
import { RocosLogger } from '../logger/RocosLogger';
|
5
|
+
import { formatServiceUrl } from '../helpers/formatServiceUrl';
|
6
|
+
export class AssetStorageService extends BaseServiceAbstract {
|
7
|
+
constructor(config) {
|
8
|
+
super(config);
|
9
|
+
this.logger = RocosLogger.getInstance(`AssetStorageService(${this.config.url})`);
|
10
|
+
}
|
11
|
+
getError(e) {
|
12
|
+
return new RocosError(e, errorCodes.ASSET_STORAGE_SERVICE_ERROR);
|
13
|
+
}
|
14
|
+
getStatus() {
|
15
|
+
return true;
|
16
|
+
}
|
17
|
+
/**
|
18
|
+
* Create a new project asset
|
19
|
+
*
|
20
|
+
* @param projectId - Project Id
|
21
|
+
* @param filePath - Path to asset file
|
22
|
+
* @param file - File payload
|
23
|
+
*/
|
24
|
+
// TODO: map the response object
|
25
|
+
async create(projectId, filePath, file) {
|
26
|
+
const formData = new FormData();
|
27
|
+
formData.append('file', file);
|
28
|
+
return this.callPut(formatServiceUrl(API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), formData, `Failed to create asset for ${projectId}, filePath ${filePath}.`);
|
29
|
+
}
|
30
|
+
/**
|
31
|
+
* Update a project asset
|
32
|
+
*
|
33
|
+
* @param projectId - Project Id
|
34
|
+
* @param filePath - Path to asset file
|
35
|
+
* @param file - File payload
|
36
|
+
*/
|
37
|
+
// TODO: map the response object
|
38
|
+
async update(projectId, filePath, file) {
|
39
|
+
const formData = new FormData();
|
40
|
+
formData.append('file', file);
|
41
|
+
return this.callPost(formatServiceUrl(API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), formData, `Failed to update asset for ${projectId}, filePath ${filePath}.`);
|
42
|
+
}
|
43
|
+
/**
|
44
|
+
* Delete a project asset
|
45
|
+
*
|
46
|
+
* @param projectId - Project Id
|
47
|
+
* @param filePath - Path to asset file
|
48
|
+
*/
|
49
|
+
// TODO: map the response object
|
50
|
+
async delete(projectId, filePath) {
|
51
|
+
return this.callDelete(formatServiceUrl(API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), `Failed to delete asset for ${projectId}, filePath ${filePath}.`);
|
52
|
+
}
|
53
|
+
/**
|
54
|
+
* Lost assets for a project or project file path
|
55
|
+
*
|
56
|
+
* @param projectId - Project Id
|
57
|
+
* @param filePath - Path to asset file
|
58
|
+
*/
|
59
|
+
// TODO: map the response object
|
60
|
+
async list(projectId, filePath) {
|
61
|
+
let url = '';
|
62
|
+
if (filePath) {
|
63
|
+
url = formatServiceUrl(API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure);
|
64
|
+
}
|
65
|
+
else {
|
66
|
+
url = formatServiceUrl(API_PROJECT_ASSET_URL, { url: this.config.url, projectId }, this.config.insecure);
|
67
|
+
}
|
68
|
+
return this.callGet(url, `Failed to get asset list for ${projectId}, filePath ${filePath}.`);
|
69
|
+
}
|
70
|
+
/**
|
71
|
+
* Get a project asset
|
72
|
+
*
|
73
|
+
* @param projectId - Project Id
|
74
|
+
* @param filePath - Path to asset file
|
75
|
+
*/
|
76
|
+
// TODO: map the response object
|
77
|
+
async getAsset(projectId, filePath) {
|
78
|
+
return this.callGet(formatServiceUrl(API_PROJECT_ASSET_PATH_URL, { url: this.config.url, projectId, filePath }, this.config.insecure), `Failed to get asset for ${projectId}, filePath ${filePath}.`, undefined, {
|
79
|
+
responseType: 'blob',
|
80
|
+
});
|
81
|
+
}
|
82
|
+
/**
|
83
|
+
* List assets for a robot
|
84
|
+
*
|
85
|
+
* @param projectId
|
86
|
+
* @param callsign
|
87
|
+
* @param parent
|
88
|
+
* @param signedURL
|
89
|
+
*/
|
90
|
+
async listRobotAssets(projectId, callsign, parent = '/', signedURL = false) {
|
91
|
+
return this.callGet(formatServiceUrl(API_PROJECT_ROBOT_ASSET_PATH_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed to get asset for ${projectId}, callsign ${callsign}.`, { parent, signedURL });
|
92
|
+
}
|
93
|
+
/**
|
94
|
+
* List assets for a flow
|
95
|
+
*
|
96
|
+
* @param projectId
|
97
|
+
* @param flowId
|
98
|
+
* @param flowInstance
|
99
|
+
* @param parent
|
100
|
+
* @param signedURL
|
101
|
+
*/
|
102
|
+
async listFlowAssets(projectId, flowId, flowInstance, parent = '/', signedURL = false) {
|
103
|
+
return this.callGet(formatServiceUrl(API_PROJECT_FLOW_ASSET_PATH_URL, { url: this.config.url, projectId, flowId, flowInstance }, this.config.insecure), `Failed to get asset for ${projectId}, flow ${flowId}, flow instance ${flowInstance}.`, { parent, signedURL });
|
104
|
+
}
|
105
|
+
/**
|
106
|
+
* List assets for a mission
|
107
|
+
*
|
108
|
+
* @param projectId
|
109
|
+
* @param dataUUID
|
110
|
+
*/
|
111
|
+
async getMissionAsset(projectId, dataUUID) {
|
112
|
+
return this.callGet(formatServiceUrl(API_PROJECT_MISSION_ASSET_PATH_URL, { url: this.config.url, projectId, dataUUID }, this.config.insecure), `Failed to get asset for ${projectId}, dataUUID ${dataUUID}.`, undefined);
|
113
|
+
}
|
114
|
+
/**
|
115
|
+
* Set Robot Sync Definitions
|
116
|
+
* @param projectId
|
117
|
+
* @param callsign
|
118
|
+
* @param definition
|
119
|
+
*/
|
120
|
+
setRobotSyncDefinitions(projectId, callsign, definition) {
|
121
|
+
const httpOptions = {
|
122
|
+
headers: {
|
123
|
+
'content-type': 'application/json',
|
124
|
+
},
|
125
|
+
};
|
126
|
+
return this.callPost(formatServiceUrl(API_PROJECT_ASSET_ROBOTS_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), definition, `Failed to update asset for ${projectId}, callsign ${callsign}.`, httpOptions);
|
127
|
+
}
|
128
|
+
/**
|
129
|
+
* Get Robot Sync Definitions
|
130
|
+
* @param projectId
|
131
|
+
* @param callsign
|
132
|
+
*/
|
133
|
+
getRobotSyncDefinitions(projectId, callsign) {
|
134
|
+
return this.callGet(formatServiceUrl(API_PROJECT_ASSET_ROBOTS_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed to get asset for ${projectId}, callsign ${callsign}.`, undefined);
|
135
|
+
}
|
136
|
+
/**
|
137
|
+
* Set Profile Sync Definitions
|
138
|
+
* @param projectId
|
139
|
+
* @param profileId
|
140
|
+
* @param definition
|
141
|
+
*/
|
142
|
+
setProfileSyncDefinitions(projectId, profileId, definition) {
|
143
|
+
const httpOptions = {
|
144
|
+
headers: {
|
145
|
+
'content-type': 'application/json',
|
146
|
+
},
|
147
|
+
};
|
148
|
+
return this.callPost(formatServiceUrl(API_PROJECT_ASSET_PROFILES_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, profileId }, this.config.insecure), definition, `Failed to update sync-definition for ${projectId}, callsign ${profileId}.`, httpOptions);
|
149
|
+
}
|
150
|
+
/**
|
151
|
+
* Get Profile Sync Definitions
|
152
|
+
* @param projectId
|
153
|
+
* @param profileId
|
154
|
+
*/
|
155
|
+
getProfileSyncDefinition(projectId, profileId) {
|
156
|
+
return this.callGet(formatServiceUrl(API_PROJECT_ASSET_PROFILES_SYNC_DEFINITION_PATH_URL, { url: this.config.url, projectId, profileId }, this.config.insecure), `Failed to get sync-definition for ${projectId}, callsign ${profileId}.`, undefined);
|
157
|
+
}
|
158
|
+
}
|
@@ -0,0 +1,93 @@
|
|
1
|
+
import { IBaseService, IRocosSDKConfig, RocosError, Token } from '../models';
|
2
|
+
import { BaseServiceAbstract } from './BaseServiceAbstract';
|
3
|
+
export declare class AuthService extends BaseServiceAbstract implements IBaseService {
|
4
|
+
protected config: IRocosSDKConfig;
|
5
|
+
private token?;
|
6
|
+
private tokenRefreshTimeoutId?;
|
7
|
+
constructor(config: IRocosSDKConfig);
|
8
|
+
getStatus(): boolean;
|
9
|
+
teardown(): void;
|
10
|
+
protected getError(e: RocosError): RocosError;
|
11
|
+
/**
|
12
|
+
* Set the Auth token
|
13
|
+
* @param value - Token value
|
14
|
+
*/
|
15
|
+
setToken(value: string | Token): void;
|
16
|
+
/**
|
17
|
+
* @deprecated `expiresIn` is now derived from the token. Use `setToken(value: string | Token)` instead
|
18
|
+
*/
|
19
|
+
setToken(value: string | Token, expiresIn: number): void;
|
20
|
+
/**
|
21
|
+
* Clear token
|
22
|
+
*/
|
23
|
+
clearToken(): void;
|
24
|
+
/**
|
25
|
+
* Get the authentication token for application Id and application Key.
|
26
|
+
*/
|
27
|
+
getAppToken(): Promise<Token>;
|
28
|
+
/**
|
29
|
+
* Get new auth token for a user
|
30
|
+
* @desc This only works for user auth tokens, not appId auth tokens
|
31
|
+
*/
|
32
|
+
getNewUserToken(): Promise<Token>;
|
33
|
+
/**
|
34
|
+
* Get new auth token for a user.
|
35
|
+
*
|
36
|
+
* Uses the OTP flow to exchange an external token for a user token.
|
37
|
+
*
|
38
|
+
* @desc This only works for user auth tokens, not appId auth tokens
|
39
|
+
*/
|
40
|
+
private getNewUserTokenFromExternalToken;
|
41
|
+
/**
|
42
|
+
* Get the authentication token
|
43
|
+
*
|
44
|
+
* This will return the current token if it is not expired, otherwise it will get a new token based on your config.
|
45
|
+
*/
|
46
|
+
getToken(): Promise<Token>;
|
47
|
+
/**
|
48
|
+
* Refresh the authentication token
|
49
|
+
*
|
50
|
+
* This only works for user auth tokens, not appId auth tokens.
|
51
|
+
*
|
52
|
+
* The new token is not automatically set as the current token. Use `setToken` to set the new token.
|
53
|
+
*
|
54
|
+
* @see setToken
|
55
|
+
* @param token the token to refresh. If not provided, the current token will be used.
|
56
|
+
*/
|
57
|
+
refreshToken(token?: Token): Promise<Token>;
|
58
|
+
/** Refresh the token if it is expired or will expire in the next `minutes` minutes
|
59
|
+
*
|
60
|
+
* This only works for user auth tokens, not appId auth tokens.
|
61
|
+
*
|
62
|
+
* If you want to refresh the token regardless of the expiry time, use `refreshToken`.
|
63
|
+
*
|
64
|
+
* @param minutes the number of minutes before the token expires to refresh the token
|
65
|
+
* @see refreshToken
|
66
|
+
*/
|
67
|
+
refreshTokenIfExpired(minutes: number): Promise<void>;
|
68
|
+
/** Start a 5-minute loop to check if the token needs to be refreshed
|
69
|
+
*
|
70
|
+
* This is useful when you are using GRPC services (i.e. telemetry) which does not automatically refresh the token.
|
71
|
+
* It is not required when using REST services as the token is refreshed automatically.
|
72
|
+
*
|
73
|
+
* The loop will stop when `stopTokenRefreshChecker` is called.
|
74
|
+
*
|
75
|
+
* @see stopTokenRefreshChecker
|
76
|
+
*/
|
77
|
+
startTokenRefreshChecker(): void;
|
78
|
+
/**
|
79
|
+
* Stop the token refresh checker
|
80
|
+
* @see startTokenRefreshChecker
|
81
|
+
*/
|
82
|
+
stopTokenRefreshChecker(): void;
|
83
|
+
/** Check if the token refresh checker is running
|
84
|
+
*
|
85
|
+
* @see startTokenRefreshChecker
|
86
|
+
* @see stopTokenRefreshChecker
|
87
|
+
* @returns true if the token refresh checker is running
|
88
|
+
*/
|
89
|
+
isTokenRefreshCheckerRunning(): boolean;
|
90
|
+
/** Checks if the token is valid for use with the API */
|
91
|
+
isTokenValid(token: Token): boolean;
|
92
|
+
private isTokenIssuedByApp;
|
93
|
+
}
|