@dronedeploy/rocos-js-sdk 1.0.0-alpha-2 → 2.6.1

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.
Files changed (568) hide show
  1. package/IRocosSDK.js +5 -1
  2. package/README.md +0 -18
  3. package/RocosSDK.js +95 -93
  4. package/api/StreamRegister.d.ts +1 -1
  5. package/api/StreamRegister.js +12 -23
  6. package/api/atoms/StreamHeartbeat.js +7 -3
  7. package/api/streams/caller/CallerStream.d.ts +6 -6
  8. package/api/streams/caller/CallerStream.js +49 -41
  9. package/api/streams/caller/CallerStreamAbstract.d.ts +11 -6
  10. package/api/streams/caller/CallerStreamAbstract.js +67 -55
  11. package/api/streams/caller/CallerStreamNode.d.ts +6 -6
  12. package/api/streams/caller/CallerStreamNode.js +61 -48
  13. package/api/streams/command/CommandStream.d.ts +4 -2
  14. package/api/streams/command/CommandStream.js +30 -28
  15. package/api/streams/command/CommandStreamAbstract.d.ts +8 -4
  16. package/api/streams/command/CommandStreamAbstract.js +42 -33
  17. package/api/streams/command/CommandStreamNode.d.ts +4 -2
  18. package/api/streams/command/CommandStreamNode.js +40 -16
  19. package/api/streams/control/ControlStream.d.ts +6 -4
  20. package/api/streams/control/ControlStream.js +36 -30
  21. package/api/streams/control/ControlStreamAbstract.d.ts +9 -6
  22. package/api/streams/control/ControlStreamAbstract.js +54 -57
  23. package/api/streams/control/ControlStreamNode.d.ts +5 -3
  24. package/api/streams/control/ControlStreamNode.js +44 -19
  25. package/api/streams/fileAccessor/FileAccessorStream.d.ts +4 -2
  26. package/api/streams/fileAccessor/FileAccessorStream.js +57 -42
  27. package/api/streams/fileAccessor/FileAccessorStreamAbstract.d.ts +9 -4
  28. package/api/streams/fileAccessor/FileAccessorStreamAbstract.js +48 -28
  29. package/api/streams/fileAccessor/FileAccessorStreamNode.d.ts +3 -1
  30. package/api/streams/fileAccessor/FileAccessorStreamNode.js +53 -23
  31. package/api/streams/search/SearchStream.d.ts +5 -2
  32. package/api/streams/search/SearchStream.js +74 -50
  33. package/api/streams/search/SearchStreamAbstract.d.ts +9 -4
  34. package/api/streams/search/SearchStreamAbstract.js +35 -33
  35. package/api/streams/search/SearchStreamNode.d.ts +5 -2
  36. package/api/streams/search/SearchStreamNode.js +48 -23
  37. package/api/streams/telemetry/TelemetryStream.d.ts +4 -4
  38. package/api/streams/telemetry/TelemetryStream.js +78 -49
  39. package/api/streams/telemetry/TelemetryStreamAbstract.d.ts +11 -8
  40. package/api/streams/telemetry/TelemetryStreamAbstract.js +145 -126
  41. package/api/streams/telemetry/TelemetryStreamNode.d.ts +5 -5
  42. package/api/streams/telemetry/TelemetryStreamNode.js +64 -44
  43. package/api/streams/webRTCSignalling/WebRTCSignallingStream.d.ts +10 -5
  44. package/api/streams/webRTCSignalling/WebRTCSignallingStream.js +20 -37
  45. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.d.ts +13 -10
  46. package/api/streams/webRTCSignalling/WebRTCSignallingStreamAbstract.js +37 -37
  47. package/constants/api.d.ts +1 -6
  48. package/constants/api.js +126 -126
  49. package/constants/grpc.js +8 -5
  50. package/constants/identifier.js +9 -6
  51. package/constants/timezones.d.ts +1 -1
  52. package/constants/timezones.js +4 -1
  53. package/demo/angular/.editorconfig +16 -0
  54. package/demo/angular/.eslintignore +4 -0
  55. package/demo/angular/.eslintrc.json +50 -0
  56. package/demo/angular/README.md +36 -0
  57. package/demo/angular/angular.json +132 -0
  58. package/demo/angular/karma.conf.js +44 -0
  59. package/demo/angular/package.json +41 -0
  60. package/demo/angular/src/app/app.component.css +0 -0
  61. package/demo/angular/src/app/app.component.html +9 -0
  62. package/demo/angular/src/app/app.component.ts +10 -0
  63. package/demo/angular/src/app/app.module.ts +38 -0
  64. package/demo/angular/src/app/components/assets/assets.component.css +0 -0
  65. package/demo/angular/src/app/components/assets/assets.component.html +29 -0
  66. package/demo/angular/src/app/components/assets/assets.component.ts +107 -0
  67. package/demo/angular/src/app/components/auth/auth.component.css +0 -0
  68. package/demo/angular/src/app/components/auth/auth.component.html +27 -0
  69. package/demo/angular/src/app/components/auth/auth.component.ts +33 -0
  70. package/demo/angular/src/app/components/caller/caller.component.css +0 -0
  71. package/demo/angular/src/app/components/caller/caller.component.html +22 -0
  72. package/demo/angular/src/app/components/caller/caller.component.ts +61 -0
  73. package/demo/angular/src/app/components/command/command.component.css +0 -0
  74. package/demo/angular/src/app/components/command/command.component.html +22 -0
  75. package/demo/angular/src/app/components/command/command.component.ts +60 -0
  76. package/demo/angular/src/app/components/integrations/integrations.component.ts +43 -0
  77. package/demo/angular/src/app/components/robots/robots.component.css +0 -0
  78. package/demo/angular/src/app/components/robots/robots.component.html +13 -0
  79. package/demo/angular/src/app/components/robots/robots.component.ts +26 -0
  80. package/demo/angular/src/app/components/sdk/sdk.component.css +0 -0
  81. package/demo/angular/src/app/components/sdk/sdk.component.html +43 -0
  82. package/demo/angular/src/app/components/sdk/sdk.component.ts +50 -0
  83. package/demo/angular/src/app/components/subscription/subscription.component.css +0 -0
  84. package/demo/angular/src/app/components/subscription/subscription.component.html +6 -0
  85. package/demo/angular/src/app/components/subscription/subscription.component.ts +40 -0
  86. package/demo/angular/src/app/components/telemetry/telemetry.component.css +0 -0
  87. package/demo/angular/src/app/components/telemetry/telemetry.component.html +19 -0
  88. package/demo/angular/src/app/components/telemetry/telemetry.component.ts +61 -0
  89. package/demo/angular/src/app/components/token/token.component.css +0 -0
  90. package/demo/angular/src/app/components/token/token.component.html +10 -0
  91. package/demo/angular/src/app/components/token/token.component.ts +18 -0
  92. package/demo/angular/src/app/components/video/p2pvideo/index.ts +646 -0
  93. package/demo/angular/src/app/components/video/video-source.ts +315 -0
  94. package/demo/angular/src/app/components/video/video.component.css +6 -0
  95. package/demo/angular/src/app/components/video/video.component.html +54 -0
  96. package/demo/angular/src/app/components/video/video.component.ts +151 -0
  97. package/demo/angular/src/app/services/sdk.service.ts +193 -0
  98. package/demo/angular/src/assets/.gitkeep +0 -0
  99. package/demo/angular/src/assets/HKGrotesk-Bold.otf +0 -0
  100. package/demo/angular/src/assets/HKGrotesk-Regular.otf +0 -0
  101. package/demo/angular/src/assets/logo.svg +16 -0
  102. package/demo/angular/src/environments/environment.prod.ts +3 -0
  103. package/demo/angular/src/environments/environment.ts +16 -0
  104. package/demo/angular/src/favicon.ico +0 -0
  105. package/demo/angular/src/index.html +15 -0
  106. package/demo/angular/src/main.ts +7 -0
  107. package/demo/angular/src/polyfills.ts +53 -0
  108. package/demo/angular/src/styles.css +198 -0
  109. package/demo/angular/tsconfig.app.json +15 -0
  110. package/demo/angular/tsconfig.json +39 -0
  111. package/demo/html/README.md +8 -0
  112. package/demo/html/assets/HKGrotesk-Bold.otf +0 -0
  113. package/demo/html/assets/HKGrotesk-Regular.otf +0 -0
  114. package/demo/html/assets/logo.svg +16 -0
  115. package/demo/html/favicon.ico +0 -0
  116. package/demo/html/index.html +416 -0
  117. package/demo/html/rocos-js-sdk.js +3 -0
  118. package/demo/html/rocos-js-sdk.js.LICENSE.txt +8 -0
  119. package/demo/html/rocos-js-sdk.js.map +1 -0
  120. package/demo/html/styles.css +190 -0
  121. package/demo/node/README.md +17 -0
  122. package/demo/node/index.js +134 -0
  123. package/demo/node/package.json +8 -0
  124. package/demo/react/.env +1 -0
  125. package/demo/react/.env.dist +1 -0
  126. package/demo/react/.eslintrc.json +46 -0
  127. package/demo/react/README.md +65 -0
  128. package/demo/react/package.json +60 -0
  129. package/demo/react/public/favicon.ico +0 -0
  130. package/demo/react/public/index.html +43 -0
  131. package/demo/react/public/logo192.png +0 -0
  132. package/demo/react/public/logo512.png +0 -0
  133. package/demo/react/public/manifest.json +25 -0
  134. package/demo/react/public/robots.txt +3 -0
  135. package/demo/react/src/App.css +190 -0
  136. package/demo/react/src/App.tsx +31 -0
  137. package/demo/react/src/actions/index.ts +8 -0
  138. package/demo/react/src/actions/sdkActions.ts +62 -0
  139. package/demo/react/src/assets/HKGrotesk-Bold.otf +0 -0
  140. package/demo/react/src/assets/HKGrotesk-Regular.otf +0 -0
  141. package/demo/react/src/assets/logo.svg +16 -0
  142. package/demo/react/src/components/AuthForm.tsx +76 -0
  143. package/demo/react/src/components/CallerBox.tsx +53 -0
  144. package/demo/react/src/components/CallerForm.tsx +98 -0
  145. package/demo/react/src/components/CommandBox.tsx +47 -0
  146. package/demo/react/src/components/CommandForm.tsx +98 -0
  147. package/demo/react/src/components/RobotsForm.tsx +51 -0
  148. package/demo/react/src/components/SubscriptionBox.tsx +55 -0
  149. package/demo/react/src/components/TelemetryForm.tsx +98 -0
  150. package/demo/react/src/components/TokenForm.tsx +39 -0
  151. package/demo/react/src/config.json +14 -0
  152. package/demo/react/src/controllers/RocosSDKController.ts +48 -0
  153. package/demo/react/src/helpers/deepEqual.ts +27 -0
  154. package/demo/react/src/hooks/useInput.ts +29 -0
  155. package/demo/react/src/index.css +11 -0
  156. package/demo/react/src/index.tsx +26 -0
  157. package/demo/react/src/react-app-env.d.ts +1 -0
  158. package/demo/react/src/reducers/sdkReducer.ts +133 -0
  159. package/demo/react/src/reportWebVitals.ts +15 -0
  160. package/demo/react/src/selectors/sdkSelector.ts +11 -0
  161. package/demo/react/src/setupTests.ts +5 -0
  162. package/demo/react/src/store.ts +14 -0
  163. package/demo/react/tsconfig.json +26 -0
  164. package/demo/sdk-sizer/dist/sdk-sizer/3rdpartylicenses.txt +975 -0
  165. package/demo/sdk-sizer/dist/sdk-sizer/favicon.ico +0 -0
  166. package/demo/sdk-sizer/dist/sdk-sizer/index.html +12 -0
  167. package/demo/sdk-sizer/dist/sdk-sizer/main.c9183649ce1856ef.js +2 -0
  168. package/demo/sdk-sizer/dist/sdk-sizer/main.c9183649ce1856ef.js.map +1 -0
  169. package/demo/sdk-sizer/dist/sdk-sizer/polyfills.701c8e5d007909aa.js +2 -0
  170. package/demo/sdk-sizer/dist/sdk-sizer/polyfills.701c8e5d007909aa.js.map +1 -0
  171. package/demo/sdk-sizer/dist/sdk-sizer/runtime.00e20e689f5284a8.js +2 -0
  172. package/demo/sdk-sizer/dist/sdk-sizer/runtime.00e20e689f5284a8.js.map +1 -0
  173. package/demo/sdk-sizer/dist/sdk-sizer/stats.json +1 -0
  174. package/demo/sdk-sizer/dist/sdk-sizer/styles.b45f7e627ac8cbce.css +2 -0
  175. package/demo/sdk-sizer/dist/sdk-sizer/styles.b45f7e627ac8cbce.css.map +1 -0
  176. package/grpc/file-accessor/filagree_grpc_pb.d.ts +41 -0
  177. package/grpc/file-accessor/filagree_grpc_pb.js +121 -0
  178. package/grpc/file-accessor/filagree_pb.d.ts +339 -0
  179. package/grpc/file-accessor/filagree_pb.js +2261 -0
  180. package/grpc/file-accessor/filagree_pb_service.d.ts +115 -0
  181. package/grpc/file-accessor/filagree_pb_service.js +257 -0
  182. package/grpc/rambo/rambo.v1_grpc_pb.d.ts +39 -0
  183. package/grpc/rambo/rambo.v1_grpc_pb.js +73 -0
  184. package/grpc/rambo/rambo.v1_pb.d.ts +365 -0
  185. package/grpc/rambo/rambo.v1_pb.js +2469 -0
  186. package/grpc/rambo/rambo.v1_pb_service.d.ts +76 -0
  187. package/grpc/rambo/rambo.v1_pb_service.js +138 -0
  188. package/grpc/rambo/uri.v1_grpc_pb.d.ts +1 -0
  189. package/grpc/rambo/uri.v1_grpc_pb.js +1 -0
  190. package/grpc/rambo/uri.v1_pb.d.ts +80 -0
  191. package/grpc/rambo/uri.v1_pb.js +563 -0
  192. package/grpc/rambo/uri.v1_pb_service.d.ts +3 -0
  193. package/grpc/rambo/uri.v1_pb_service.js +3 -0
  194. package/grpc/robot-control/conker_grpc_pb.d.ts +46 -0
  195. package/grpc/robot-control/conker_grpc_pb.js +143 -0
  196. package/grpc/robot-control/conker_pb.d.ts +168 -0
  197. package/grpc/robot-control/conker_pb.js +1287 -0
  198. package/grpc/robot-control/conker_pb_service.d.ts +126 -0
  199. package/grpc/robot-control/conker_pb_service.js +301 -0
  200. package/grpc/serviette/common.v1_grpc_pb.d.ts +1 -0
  201. package/grpc/serviette/common.v1_grpc_pb.js +1 -0
  202. package/grpc/serviette/common.v1_pb.d.ts +8 -0
  203. package/grpc/serviette/common.v1_pb.js +45 -0
  204. package/grpc/serviette/common.v1_pb_service.d.ts +3 -0
  205. package/grpc/serviette/common.v1_pb_service.js +3 -0
  206. package/grpc/serviette/serviette.v1_grpc_pb.d.ts +137 -0
  207. package/grpc/serviette/serviette.v1_grpc_pb.js +331 -0
  208. package/grpc/serviette/serviette.v1_pb.d.ts +884 -0
  209. package/grpc/serviette/serviette.v1_pb.js +6363 -0
  210. package/grpc/serviette/serviette.v1_pb_service.d.ts +278 -0
  211. package/grpc/serviette/serviette.v1_pb_service.js +699 -0
  212. package/grpc/serviette/uri.v1_grpc_pb.d.ts +1 -0
  213. package/grpc/serviette/uri.v1_grpc_pb.js +1 -0
  214. package/grpc/serviette/uri.v1_pb.d.ts +102 -0
  215. package/grpc/serviette/uri.v1_pb.js +741 -0
  216. package/grpc/serviette/uri.v1_pb_service.d.ts +3 -0
  217. package/grpc/serviette/uri.v1_pb_service.js +3 -0
  218. package/grpc/slowlane/slowlane_grpc_pb.d.ts +38 -0
  219. package/grpc/slowlane/slowlane_grpc_pb.js +132 -0
  220. package/grpc/slowlane/slowlane_pb.d.ts +373 -0
  221. package/grpc/slowlane/slowlane_pb.js +2908 -0
  222. package/grpc/slowlane/slowlane_pb_service.d.ts +112 -0
  223. package/grpc/slowlane/slowlane_pb_service.js +189 -0
  224. package/grpc/teletubby/teletubby_grpc_pb.d.ts +73 -0
  225. package/grpc/teletubby/teletubby_grpc_pb.js +231 -0
  226. package/grpc/teletubby/teletubby_pb.d.ts +647 -0
  227. package/grpc/teletubby/teletubby_pb.js +4786 -0
  228. package/grpc/teletubby/teletubby_pb_service.d.ts +193 -0
  229. package/grpc/teletubby/teletubby_pb_service.js +436 -0
  230. package/grpc/video/pigeon_grpc_pb.d.ts +59 -0
  231. package/grpc/video/pigeon_grpc_pb.js +180 -0
  232. package/grpc/video/pigeon_pb.d.ts +237 -0
  233. package/grpc/video/pigeon_pb.js +1775 -0
  234. package/grpc/video/pigeon_pb_service.d.ts +152 -0
  235. package/grpc/video/pigeon_pb_service.js +292 -0
  236. package/helpers/arrayRemove.js +6 -2
  237. package/helpers/arrayUnique.js +6 -2
  238. package/helpers/average.js +7 -2
  239. package/helpers/cleanObject.js +19 -17
  240. package/helpers/enviroment.js +11 -4
  241. package/helpers/flattenCallsignsLookup.d.ts +1 -1
  242. package/helpers/flattenCallsignsLookup.js +5 -1
  243. package/helpers/flattenObject.js +5 -1
  244. package/helpers/formatServiceUrl.js +5 -1
  245. package/helpers/generateUUID.js +7 -3
  246. package/helpers/getSubscriptionsDifference.d.ts +3 -3
  247. package/helpers/getSubscriptionsDifference.js +10 -6
  248. package/helpers/getUniqueConfigKey.js +6 -1
  249. package/helpers/getUniqueId.js +7 -3
  250. package/helpers/getUnixTimeMs.js +5 -1
  251. package/helpers/index.d.ts +1 -1
  252. package/helpers/index.js +15 -3
  253. package/helpers/nanosecondToMillisecond.d.ts +1 -1
  254. package/helpers/nanosecondToMillisecond.js +6 -5
  255. package/helpers/randomString.js +5 -1
  256. package/helpers/standardDeviation.js +8 -4
  257. package/helpers/stringToUint8Array.js +7 -3
  258. package/helpers/uint8ArrayToString.js +8 -3
  259. package/index.js +19 -7
  260. package/logger/RocosLogger.js +44 -18
  261. package/models/ExportDataQuery.js +5 -1
  262. package/models/ExternalProject.js +5 -1
  263. package/models/IBaseService.d.ts +0 -1
  264. package/models/IBaseService.js +2 -1
  265. package/models/IConfigGroup.js +2 -1
  266. package/models/IDebugLevel.d.ts +1 -1
  267. package/models/IDebugLevel.js +2 -1
  268. package/models/IExportDataQuery.js +2 -1
  269. package/models/IFunctionConfig.js +2 -1
  270. package/models/IInvitation.d.ts +1 -1
  271. package/models/IInvitation.js +2 -1
  272. package/models/IInvitationExists.js +2 -1
  273. package/models/IOperation.js +2 -1
  274. package/models/IPersonalAccessToken.js +2 -1
  275. package/models/IProject.js +2 -1
  276. package/models/IProjectApplication.js +2 -1
  277. package/models/IRobot.d.ts +0 -1
  278. package/models/IRobot.js +2 -1
  279. package/models/IRobotConfig.js +2 -1
  280. package/models/IRobotPlugin.js +2 -1
  281. package/models/IRobotTemplate.js +2 -1
  282. package/models/IRocosSDKConfig.d.ts +9 -3
  283. package/models/IRocosSDKConfig.js +2 -1
  284. package/models/ISignupParams.d.ts +8 -0
  285. package/models/ISignupParams.js +2 -0
  286. package/models/ISource.js +2 -1
  287. package/models/IStream.js +2 -1
  288. package/models/IStreamConfig.js +2 -1
  289. package/models/IStreamOptions.js +2 -1
  290. package/models/IStreamSource.js +2 -1
  291. package/models/ISubscriberStatus.js +2 -1
  292. package/models/ITelemetryStreamConfig.js +2 -1
  293. package/models/IToken.d.ts +3 -7
  294. package/models/IToken.js +2 -1
  295. package/models/IWidget.js +2 -1
  296. package/models/IWidgetLineGroup.js +2 -1
  297. package/models/ResponseLevelEnum.d.ts +0 -4
  298. package/models/ResponseLevelEnum.js +5 -6
  299. package/models/Robot.d.ts +0 -1
  300. package/models/Robot.js +5 -1
  301. package/models/RobotConfig.js +5 -1
  302. package/models/RobotPlugin.js +5 -1
  303. package/models/RobotTemplate.js +14 -9
  304. package/models/RocosError.js +6 -2
  305. package/models/ServiceEnum.js +5 -2
  306. package/models/Stream.js +8 -4
  307. package/models/StreamOptions.js +5 -1
  308. package/models/StreamSource.js +7 -3
  309. package/models/SubscriberStatusEnum.js +5 -2
  310. package/models/Token.d.ts +4 -36
  311. package/models/Token.js +11 -74
  312. package/models/Widget.js +8 -4
  313. package/models/WidgetLineGroup.js +5 -1
  314. package/models/asset-storage/AssetModelItem.js +2 -1
  315. package/models/caller/IRocosCallerMessageChunk.d.ts +2 -3
  316. package/models/caller/IRocosCallerMessageChunk.js +2 -1
  317. package/models/caller/IRocosCallerMessageChunks.d.ts +3 -2
  318. package/models/caller/IRocosCallerMessageChunks.js +2 -1
  319. package/models/caller/IRocosCallerMessageHeartbeat.d.ts +2 -3
  320. package/models/caller/IRocosCallerMessageHeartbeat.js +2 -1
  321. package/models/caller/IRocosCallerMessageResponse.d.ts +2 -3
  322. package/models/caller/IRocosCallerMessageResponse.js +2 -1
  323. package/models/caller/IRocosCallerMessageResponseAck.d.ts +2 -16
  324. package/models/caller/IRocosCallerMessageResponseAck.js +2 -13
  325. package/models/caller/IRocosCallerMessageResponseResult.d.ts +2 -15
  326. package/models/caller/IRocosCallerMessageResponseResult.js +2 -12
  327. package/models/caller/IRocosCallerMessageResponseUid.d.ts +2 -10
  328. package/models/caller/IRocosCallerMessageResponseUid.js +2 -7
  329. package/models/caller/IRocosCallerMessageResponses.d.ts +3 -2
  330. package/models/caller/IRocosCallerMessageResponses.js +2 -1
  331. package/models/caller/RocosCallerResultStatus.d.ts +1 -11
  332. package/models/caller/RocosCallerResultStatus.js +5 -12
  333. package/models/callsigns/CallsignsEnums.d.ts +3 -3
  334. package/models/callsigns/CallsignsEnums.js +14 -11
  335. package/models/callsigns/CallsignsLookup.js +15 -10
  336. package/models/callsigns/CallsignsQuery.js +5 -1
  337. package/models/callsigns/CallsignsQueryPredicate.js +5 -1
  338. package/models/command/IRocosCommandMessageHeartbeat.d.ts +2 -1
  339. package/models/command/IRocosCommandMessageHeartbeat.js +2 -1
  340. package/models/command/IRocosCommandMessageResponse.d.ts +2 -55
  341. package/models/command/IRocosCommandMessageResponse.js +2 -29
  342. package/models/command/RocosCommandResultStatus.d.ts +1 -11
  343. package/models/command/RocosCommandResultStatus.js +5 -12
  344. package/models/file/FileEnums.d.ts +4 -4
  345. package/models/file/FileEnums.js +12 -9
  346. package/models/index.d.ts +31 -5
  347. package/models/index.js +113 -75
  348. package/models/integrations/Overlay.js +2 -1
  349. package/models/integrations/Plan.js +2 -1
  350. package/models/maps/Map.d.ts +0 -1
  351. package/models/maps/Map.js +2 -1
  352. package/models/message/IRocosCallerMessage.js +2 -1
  353. package/models/message/IRocosChangeMessage.js +2 -1
  354. package/models/message/IRocosCommandMessage.js +2 -1
  355. package/models/message/IRocosControlMessage.js +2 -1
  356. package/models/message/IRocosOpResultMessage.d.ts +2 -2
  357. package/models/message/IRocosOpResultMessage.js +2 -1
  358. package/models/message/IRocosSearchMessage.js +2 -1
  359. package/models/message/IRocosSearchRowMessage.js +2 -1
  360. package/models/message/IRocosSearchStatusMessage.js +2 -1
  361. package/models/message/IRocosTelemetryMessage.d.ts +7 -12
  362. package/models/message/IRocosTelemetryMessage.js +2 -1
  363. package/models/message/IStreamStatusMessage.js +2 -1
  364. package/models/message/RocosCallerMessage.d.ts +4 -2
  365. package/models/message/RocosCallerMessage.js +15 -24
  366. package/models/message/RocosCommandMessage.d.ts +3 -2
  367. package/models/message/RocosCommandMessage.js +8 -5
  368. package/models/message/RocosControlMessage.d.ts +1 -1
  369. package/models/message/RocosControlMessage.js +10 -6
  370. package/models/message/RocosOpResultMessage.d.ts +2 -3
  371. package/models/message/RocosOpResultMessage.js +10 -6
  372. package/models/message/RocosSearchMessage.d.ts +1 -1
  373. package/models/message/RocosSearchMessage.js +9 -5
  374. package/models/message/RocosSearchRowMessage.d.ts +1 -1
  375. package/models/message/RocosSearchRowMessage.js +12 -8
  376. package/models/message/RocosTelemetryMessage.d.ts +23 -9
  377. package/models/message/RocosTelemetryMessage.js +93 -51
  378. package/models/params/ICallerParams.d.ts +1 -2
  379. package/models/params/ICallerParams.js +2 -1
  380. package/models/params/ICommandParams.js +2 -1
  381. package/models/params/IControlParams.d.ts +1 -1
  382. package/models/params/IControlParams.js +2 -1
  383. package/models/params/IFileAccessorParams.js +2 -1
  384. package/models/params/ISearchParams.js +2 -1
  385. package/models/params/ITelemetryParams.d.ts +1 -1
  386. package/models/params/ITelemetryParams.js +2 -1
  387. package/models/params/IWebRTCSignallingParams.js +2 -1
  388. package/models/projects/ProjectUser.js +2 -1
  389. package/models/schedule/IScheduleAction.d.ts +1 -1
  390. package/models/schedule/IScheduleAction.js +5 -2
  391. package/models/schedule/IScheduleInfo.js +2 -1
  392. package/models/schedule/IScheduleJob.js +2 -1
  393. package/models/search/SearchQueryFilter.js +5 -1
  394. package/models/search/SearchStreamQuery.js +5 -1
  395. package/models/stream/IBaseStream.js +2 -1
  396. package/models/stream/ICallerStream.js +2 -1
  397. package/models/stream/ICommandStream.js +2 -1
  398. package/models/stream/IControlStream.js +2 -1
  399. package/models/stream/IFileAccessorStream.d.ts +2 -1
  400. package/models/stream/IFileAccessorStream.js +2 -1
  401. package/models/stream/ISearchStream.js +2 -1
  402. package/models/stream/ITelemetryStream.js +2 -1
  403. package/models/stream/IWebRTCSignallingStream.d.ts +16 -51
  404. package/models/stream/IWebRTCSignallingStream.js +7 -1
  405. package/models/types.d.ts +5 -5
  406. package/models/types.js +2 -1
  407. package/node/RocosSDKNode.js +80 -75
  408. package/node/index.js +19 -7
  409. package/package.json +9 -6
  410. package/services/AssetStorageService.d.ts +0 -7
  411. package/services/AssetStorageService.js +24 -29
  412. package/services/AuthService.d.ts +27 -59
  413. package/services/AuthService.js +86 -167
  414. package/services/BaseServiceAbstract.d.ts +13 -11
  415. package/services/BaseServiceAbstract.js +19 -17
  416. package/services/CallerService.d.ts +17 -5
  417. package/services/CallerService.js +65 -22
  418. package/services/CallerServiceNode.js +8 -4
  419. package/services/CommandService.d.ts +17 -5
  420. package/services/CommandService.js +62 -19
  421. package/services/CommandServiceNode.js +8 -4
  422. package/services/ConfigGroupService.js +21 -17
  423. package/services/ControlService.d.ts +17 -5
  424. package/services/ControlService.js +65 -22
  425. package/services/ControlServiceNode.js +8 -4
  426. package/services/DashboardService.js +24 -20
  427. package/services/EventService.js +17 -13
  428. package/services/FileAccessorService.d.ts +18 -4
  429. package/services/FileAccessorService.js +62 -14
  430. package/services/FileAccessorServiceNode.js +8 -4
  431. package/services/FunctionService.js +21 -17
  432. package/services/IntegrationService.js +19 -14
  433. package/services/MapService.d.ts +23 -36
  434. package/services/MapService.js +40 -70
  435. package/services/PlatformTimeService.js +12 -8
  436. package/services/ProfileService.js +40 -36
  437. package/services/ProjectService.js +27 -23
  438. package/services/RobotService.d.ts +6 -2
  439. package/services/RobotService.js +55 -48
  440. package/services/ScheduleService.js +14 -10
  441. package/services/SearchService.d.ts +17 -4
  442. package/services/SearchService.js +59 -24
  443. package/services/SearchServiceNode.js +8 -4
  444. package/services/SpotProvisioningService.d.ts +1 -1
  445. package/services/SpotProvisioningService.js +16 -16
  446. package/services/SpotProvisioningServiceNode.d.ts +1 -1
  447. package/services/SpotProvisioningServiceNode.js +16 -16
  448. package/services/StreamService.js +30 -26
  449. package/services/TelemetryService.d.ts +17 -14
  450. package/services/TelemetryService.js +93 -91
  451. package/services/TelemetryServiceNode.js +8 -4
  452. package/services/TimeSyncerService.js +13 -9
  453. package/services/UserService.js +41 -37
  454. package/services/WebRTCSignallingService.d.ts +4 -4
  455. package/services/WebRTCSignallingService.js +27 -24
  456. package/services/WorkflowService.js +20 -16
  457. package/services/index.js +38 -26
  458. package/store/RocosStore.js +15 -9
  459. package/utils/axisangle.d.ts +18 -0
  460. package/utils/axisangle.js +48 -0
  461. package/utils/eulerangles.d.ts +22 -0
  462. package/utils/eulerangles.js +133 -0
  463. package/utils/helperfunctions.d.ts +5 -0
  464. package/utils/helperfunctions.js +50 -0
  465. package/utils/localtransform.d.ts +17 -0
  466. package/utils/localtransform.js +50 -0
  467. package/utils/localtransformtree.d.ts +17 -0
  468. package/utils/localtransformtree.js +88 -0
  469. package/utils/misc.d.ts +17 -0
  470. package/utils/misc.js +23 -0
  471. package/utils/positionvector.d.ts +13 -0
  472. package/utils/positionvector.js +79 -0
  473. package/utils/quaternion.d.ts +20 -0
  474. package/utils/quaternion.js +62 -0
  475. package/utils/rotationmatrix.d.ts +23 -0
  476. package/utils/rotationmatrix.js +262 -0
  477. package/utils/transformationmatrix.d.ts +12 -0
  478. package/utils/transformationmatrix.js +123 -0
  479. package/utils/vector3.d.ts +11 -0
  480. package/utils/vector3.js +61 -0
  481. package/constants/auth.d.ts +0 -2
  482. package/constants/auth.js +0 -2
  483. package/grpc/conker_pb.client.d.ts +0 -78
  484. package/grpc/conker_pb.client.js +0 -55
  485. package/grpc/conker_pb.d.ts +0 -141
  486. package/grpc/conker_pb.grpc-client.d.ts +0 -81
  487. package/grpc/conker_pb.grpc-client.js +0 -58
  488. package/grpc/conker_pb.js +0 -104
  489. package/grpc/filagree_pb.client.d.ts +0 -68
  490. package/grpc/filagree_pb.client.js +0 -48
  491. package/grpc/filagree_pb.d.ts +0 -404
  492. package/grpc/filagree_pb.grpc-client.d.ts +0 -69
  493. package/grpc/filagree_pb.grpc-client.js +0 -51
  494. package/grpc/filagree_pb.js +0 -329
  495. package/grpc/google/protobuf/descriptor_pb.d.ts +0 -1798
  496. package/grpc/google/protobuf/descriptor_pb.js +0 -2378
  497. package/grpc/google/protobuf/empty_pb.d.ts +0 -23
  498. package/grpc/google/protobuf/empty_pb.js +0 -47
  499. package/grpc/pigeon_pb.client.d.ts +0 -96
  500. package/grpc/pigeon_pb.client.js +0 -72
  501. package/grpc/pigeon_pb.d.ts +0 -207
  502. package/grpc/pigeon_pb.grpc-client.d.ts +0 -98
  503. package/grpc/pigeon_pb.grpc-client.js +0 -68
  504. package/grpc/pigeon_pb.js +0 -144
  505. package/grpc/rambo.uri.v1_pb.d.ts +0 -73
  506. package/grpc/rambo.uri.v1_pb.js +0 -48
  507. package/grpc/rambo.v1_pb.client.d.ts +0 -66
  508. package/grpc/rambo.v1_pb.client.js +0 -48
  509. package/grpc/rambo.v1_pb.d.ts +0 -392
  510. package/grpc/rambo.v1_pb.grpc-client.d.ts +0 -56
  511. package/grpc/rambo.v1_pb.grpc-client.js +0 -44
  512. package/grpc/rambo.v1_pb.js +0 -272
  513. package/grpc/serviette.uri.v1_pb.d.ts +0 -89
  514. package/grpc/serviette.uri.v1_pb.js +0 -62
  515. package/grpc/serviette.v1_pb.client.d.ts +0 -225
  516. package/grpc/serviette.v1_pb.client.js +0 -174
  517. package/grpc/serviette.v1_pb.d.ts +0 -827
  518. package/grpc/serviette.v1_pb.grpc-client.d.ts +0 -215
  519. package/grpc/serviette.v1_pb.grpc-client.js +0 -162
  520. package/grpc/serviette.v1_pb.js +0 -553
  521. package/grpc/slowlane_pb.client.d.ts +0 -61
  522. package/grpc/slowlane_pb.client.js +0 -41
  523. package/grpc/slowlane_pb.d.ts +0 -303
  524. package/grpc/slowlane_pb.grpc-client.d.ts +0 -64
  525. package/grpc/slowlane_pb.grpc-client.js +0 -44
  526. package/grpc/slowlane_pb.js +0 -185
  527. package/grpc/teletubby_pb.client.d.ts +0 -145
  528. package/grpc/teletubby_pb.client.js +0 -104
  529. package/grpc/teletubby_pb.d.ts +0 -634
  530. package/grpc/teletubby_pb.grpc-client.d.ts +0 -152
  531. package/grpc/teletubby_pb.grpc-client.js +0 -100
  532. package/grpc/teletubby_pb.js +0 -1264
  533. package/helpers/cleanObject.spec.d.ts +0 -1
  534. package/helpers/cleanObject.spec.js +0 -53
  535. package/helpers/flattenObject.spec.d.ts +0 -1
  536. package/helpers/flattenObject.spec.js +0 -29
  537. package/helpers/flattenOneOf.d.ts +0 -67
  538. package/helpers/flattenOneOf.js +0 -29
  539. package/helpers/flattenOneOf.spec.d.ts +0 -1
  540. package/helpers/flattenOneOf.spec.js +0 -157
  541. package/helpers/formatServiceUrl.spec.d.ts +0 -1
  542. package/helpers/formatServiceUrl.spec.js +0 -16
  543. package/helpers/standardDeviation.spec.d.ts +0 -1
  544. package/helpers/standardDeviation.spec.js +0 -11
  545. package/models/CallsignStatus.d.ts +0 -6
  546. package/models/CallsignStatus.js +0 -7
  547. package/models/IRobotSettings.d.ts +0 -28
  548. package/models/IRobotSettings.js +0 -1
  549. package/models/Token.spec.d.ts +0 -1
  550. package/models/Token.spec.js +0 -108
  551. package/models/caller/IRocosCallerMessageResponseReturn.d.ts +0 -8
  552. package/models/caller/IRocosCallerMessageResponseReturn.js +0 -1
  553. package/models/caller/RocosResponseLevel.d.ts +0 -6
  554. package/models/caller/RocosResponseLevel.js +0 -7
  555. package/models/caller/index.d.ts +0 -10
  556. package/models/caller/index.js +0 -10
  557. package/models/command/index.d.ts +0 -4
  558. package/models/command/index.js +0 -4
  559. package/models/message/index.d.ts +0 -17
  560. package/models/message/index.js +0 -17
  561. package/services/AuthService.spec.d.ts +0 -1
  562. package/services/AuthService.spec.js +0 -163
  563. package/services/BaseStreamService.d.ts +0 -18
  564. package/services/BaseStreamService.js +0 -47
  565. package/services/PlatformTimeService.spec.d.ts +0 -1
  566. package/services/PlatformTimeService.spec.js +0 -180
  567. package/services/TelemetryService.spec.d.ts +0 -1
  568. package/services/TelemetryService.spec.js +0 -37
@@ -1,15 +1,26 @@
1
- import { SubscriberStatusEnum, } from '../models';
2
- import { Subject } from 'rxjs';
3
- import { BaseStreamService } from './BaseStreamService';
4
- import { IDENTIFIER_NAME_FILE_ACCESSOR } from '../constants/identifier';
5
- import { SearchStream } from '../api/streams/search/SearchStream';
6
- import { finalize } from 'rxjs/operators';
7
- export class SearchService extends BaseStreamService {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchService = void 0;
4
+ const rxjs_1 = require("rxjs");
5
+ const identifier_1 = require("../constants/identifier");
6
+ const RocosLogger_1 = require("../logger/RocosLogger");
7
+ const RocosStore_1 = require("../store/RocosStore");
8
+ const SearchStream_1 = require("../api/streams/search/SearchStream");
9
+ const StreamRegister_1 = require("../api/StreamRegister");
10
+ const SubscriberStatusEnum_1 = require("../models/SubscriberStatusEnum");
11
+ const operators_1 = require("rxjs/operators");
12
+ class SearchService {
8
13
  constructor(config) {
9
- super('SearchService', config);
14
+ this.status = false;
15
+ this.status$ = new rxjs_1.Subject();
16
+ this.config = config;
17
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`SearchService(${this.config.url})`);
18
+ }
19
+ getStatus() {
20
+ return this.status;
10
21
  }
11
22
  searchStream(params) {
12
- const subject = new Subject();
23
+ const subject = new rxjs_1.Subject();
13
24
  let subscription;
14
25
  this.createStream()
15
26
  .then((stream) => {
@@ -19,8 +30,8 @@ export class SearchService extends BaseStreamService {
19
30
  this.logger.info('takeActionWithAck error', e);
20
31
  subject.error(e);
21
32
  });
22
- return subject.asObservable().pipe(finalize(() => {
23
- subscription?.unsubscribe();
33
+ return subject.asObservable().pipe(operators_1.finalize(() => {
34
+ subscription === null || subscription === void 0 ? void 0 : subscription.unsubscribe();
24
35
  }));
25
36
  }
26
37
  async queryData(params) {
@@ -36,23 +47,47 @@ export class SearchService extends BaseStreamService {
36
47
  return stream.deleteProjectData(params);
37
48
  }
38
49
  async createStream() {
39
- const newStream = await this.createStreamFromConfig(IDENTIFIER_NAME_FILE_ACCESSOR, {
40
- url: this.config.url,
41
- token: this.config.token,
42
- scope: 'default',
43
- options: this.config.options,
44
- port: this.config.port,
45
- insecure: this.config.insecure,
46
- });
47
- if (newStream.isNew) {
48
- newStream.stream.statusStream$.subscribe((msg) => {
49
- this.status = msg === SubscriberStatusEnum.STOPPED || msg === SubscriberStatusEnum.ALIVE;
50
+ const scope = 'default';
51
+ const identifier = StreamRegister_1.StreamRegister.getIdentifier(identifier_1.IDENTIFIER_NAME_SEARCH, scope);
52
+ const streamRegister = StreamRegister_1.StreamRegister.getInstance();
53
+ let stream = streamRegister.getStream(identifier);
54
+ if (!stream) {
55
+ stream = this.getStream({
56
+ url: this.config.url,
57
+ token: this.config.token,
58
+ scope,
59
+ options: this.config.options,
60
+ port: this.config.port,
61
+ insecure: this.config.insecure,
62
+ });
63
+ stream.statusStream$.subscribe((msg) => {
64
+ this.status = msg === SubscriberStatusEnum_1.SubscriberStatusEnum.STOPPED || msg === SubscriberStatusEnum_1.SubscriberStatusEnum.ALIVE;
50
65
  this.status$.next(msg);
51
66
  });
67
+ // don't wait for these promises, they can be init after startup
68
+ await streamRegister.addStream(stream);
69
+ await this.initStream(stream);
70
+ }
71
+ return stream;
72
+ }
73
+ async initStream(stream) {
74
+ // an async callback to set the stream token in case one was not set at startup
75
+ if (!this.config.token) {
76
+ try {
77
+ const authService = RocosStore_1.RocosStore.getSDKInstance(this.config).getAuthService();
78
+ const token = await authService.getToken();
79
+ if (token === null || token === void 0 ? void 0 : token.value) {
80
+ this.config.token = token === null || token === void 0 ? void 0 : token.value;
81
+ stream.setToken(this.config.token);
82
+ }
83
+ }
84
+ catch (e) {
85
+ this.logger.info('Can not retrieve auth token', e);
86
+ }
52
87
  }
53
- return newStream.stream;
54
88
  }
55
89
  getStream(config) {
56
- return new SearchStream(config);
90
+ return new SearchStream_1.SearchStream(config);
57
91
  }
58
92
  }
93
+ exports.SearchService = SearchService;
@@ -1,7 +1,11 @@
1
- import { SearchService } from './SearchService';
2
- import { SearchStreamNode } from '../api/streams/search/SearchStreamNode';
3
- export class SearchServiceNode extends SearchService {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SearchServiceNode = void 0;
4
+ const SearchService_1 = require("./SearchService");
5
+ const SearchStreamNode_1 = require("../api/streams/search/SearchStreamNode");
6
+ class SearchServiceNode extends SearchService_1.SearchService {
4
7
  getStream(config) {
5
- return new SearchStreamNode(config);
8
+ return new SearchStreamNode_1.SearchStreamNode(config);
6
9
  }
7
10
  }
11
+ exports.SearchServiceNode = SearchServiceNode;
@@ -1,7 +1,7 @@
1
1
  import { IBaseService, IRocosSDKConfig, RocosError } from '../models';
2
2
  import { BaseServiceAbstract } from './BaseServiceAbstract';
3
3
  import { Timezone } from '../constants/timezones';
4
- type SpotImageTag = 'stable' | 'dev' | 'unstable';
4
+ declare type SpotImageTag = 'stable' | 'dev' | 'unstable';
5
5
  export declare class SpotProvisioningService extends BaseServiceAbstract implements IBaseService {
6
6
  constructor(config: IRocosSDKConfig);
7
7
  getStatus(): boolean;
@@ -1,35 +1,34 @@
1
- import { RocosError, errorCodes } from '../models';
2
- import { API_SPOTTY_URL } from '../constants/api';
3
- import { BaseServiceAbstract } from './BaseServiceAbstract';
4
- import { RocosLogger } from '../logger/RocosLogger';
5
- import { RocosStore } from '../store/RocosStore';
6
- import { formatServiceUrl } from '../helpers/formatServiceUrl';
7
- export class SpotProvisioningService extends BaseServiceAbstract {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SpotProvisioningService = void 0;
4
+ const models_1 = require("../models");
5
+ const api_1 = require("../constants/api");
6
+ const BaseServiceAbstract_1 = require("./BaseServiceAbstract");
7
+ const RocosLogger_1 = require("../logger/RocosLogger");
8
+ const RocosStore_1 = require("../store/RocosStore");
9
+ const formatServiceUrl_1 = require("../helpers/formatServiceUrl");
10
+ class SpotProvisioningService extends BaseServiceAbstract_1.BaseServiceAbstract {
8
11
  constructor(config) {
9
12
  super(config);
10
- this.logger = RocosLogger.getInstance(`SpotService(${this.config.url})`);
13
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`SpotService(${this.config.url})`);
11
14
  }
12
15
  getStatus() {
13
16
  return true;
14
17
  }
15
18
  getError(e) {
16
- return new RocosError(e, errorCodes.SPOT_SERVICE_ERROR);
19
+ return new models_1.RocosError(e, models_1.errorCodes.SPOT_SERVICE_ERROR);
17
20
  }
18
21
  async getSpotCoreImage(projectId, profileId, robot, tag = 'stable', patMetadata, timezone) {
19
- const userService = RocosStore.getSDKInstance(this.config).getUserService();
22
+ const userService = RocosStore_1.RocosStore.getSDKInstance(this.config).getUserService();
20
23
  const pat = await userService.createPAT({
21
24
  name: `Spot provisioning token for ${robot.callsign}`,
22
25
  projectId,
23
26
  scope: ['provisioning'],
24
27
  robotDefinitionId: profileId,
25
- metaData: {
26
- singleUse: true,
27
- defaultRobotDefinitionId: profileId,
28
- ...patMetadata,
29
- },
28
+ metaData: Object.assign({ singleUse: true, defaultRobotDefinitionId: profileId }, patMetadata),
30
29
  ttlDays: 90,
31
30
  });
32
- return this.callPost(formatServiceUrl(API_SPOTTY_URL, { url: this.config.url }, this.config.insecure), {
31
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_SPOTTY_URL, { url: this.config.url }, this.config.insecure), {
33
32
  pat: pat.pat,
34
33
  callsign: robot.callsign,
35
34
  robotName: robot.name,
@@ -41,3 +40,4 @@ export class SpotProvisioningService extends BaseServiceAbstract {
41
40
  });
42
41
  }
43
42
  }
43
+ exports.SpotProvisioningService = SpotProvisioningService;
@@ -2,7 +2,7 @@
2
2
  import { IBaseService, IRocosSDKConfig, RocosError } from '../models';
3
3
  import { BaseServiceAbstract } from './BaseServiceAbstract';
4
4
  import { Timezone } from '../constants/timezones';
5
- type SpotImageTag = 'stable' | 'dev' | 'unstable';
5
+ declare type SpotImageTag = 'stable' | 'dev' | 'unstable';
6
6
  export declare class SpotProvisioningServiceNode extends BaseServiceAbstract implements IBaseService {
7
7
  constructor(config: IRocosSDKConfig);
8
8
  getStatus(): boolean;
@@ -1,35 +1,34 @@
1
- import { RocosError, errorCodes } from '../models';
2
- import { API_SPOTTY_URL } from '../constants/api';
3
- import { BaseServiceAbstract } from './BaseServiceAbstract';
4
- import { RocosLogger } from '../logger/RocosLogger';
5
- import { RocosStore } from '../store/RocosStore';
6
- import { formatServiceUrl } from '../helpers/formatServiceUrl';
7
- export class SpotProvisioningServiceNode extends BaseServiceAbstract {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SpotProvisioningServiceNode = void 0;
4
+ const models_1 = require("../models");
5
+ const api_1 = require("../constants/api");
6
+ const BaseServiceAbstract_1 = require("./BaseServiceAbstract");
7
+ const RocosLogger_1 = require("../logger/RocosLogger");
8
+ const RocosStore_1 = require("../store/RocosStore");
9
+ const formatServiceUrl_1 = require("../helpers/formatServiceUrl");
10
+ class SpotProvisioningServiceNode extends BaseServiceAbstract_1.BaseServiceAbstract {
8
11
  constructor(config) {
9
12
  super(config);
10
- this.logger = RocosLogger.getInstance(`SpotService(${this.config.url})`);
13
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`SpotService(${this.config.url})`);
11
14
  }
12
15
  getStatus() {
13
16
  return true;
14
17
  }
15
18
  getError(e) {
16
- return new RocosError(e, errorCodes.SPOT_SERVICE_ERROR);
19
+ return new models_1.RocosError(e, models_1.errorCodes.SPOT_SERVICE_ERROR);
17
20
  }
18
21
  async getSpotCoreImage(projectId, profileId, robot, tag = 'stable', patMetadata, timezone) {
19
- const userService = RocosStore.getSDKInstance(this.config).getUserService();
22
+ const userService = RocosStore_1.RocosStore.getSDKInstance(this.config).getUserService();
20
23
  const pat = await userService.createPAT({
21
24
  name: `Spot provisioning token for ${robot.callsign}`,
22
25
  projectId,
23
26
  scope: ['provisioning'],
24
27
  robotDefinitionId: profileId,
25
- metaData: {
26
- defaultRobotDefinitionId: profileId,
27
- singleUse: true,
28
- ...patMetadata,
29
- },
28
+ metaData: Object.assign({ defaultRobotDefinitionId: profileId, singleUse: true }, patMetadata),
30
29
  ttlDays: 90,
31
30
  });
32
- return this.callPost(formatServiceUrl(API_SPOTTY_URL, { url: this.config.url }, this.config.insecure), {
31
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_SPOTTY_URL, { url: this.config.url }, this.config.insecure), {
33
32
  pat: pat.pat,
34
33
  callsign: robot.callsign,
35
34
  robotName: robot.name,
@@ -41,3 +40,4 @@ export class SpotProvisioningServiceNode extends BaseServiceAbstract {
41
40
  });
42
41
  }
43
42
  }
43
+ exports.SpotProvisioningServiceNode = SpotProvisioningServiceNode;
@@ -1,18 +1,21 @@
1
- import { API_PROJECT_CALLSIGN_STREAM_URL, API_PROJECT_STREAM_CALLSIGN_URL, API_PROJECT_STREAM_DATA_URL, API_PROJECT_STREAM_ID_URL, API_PROJECT_STREAM_URL, API_SOURCE_ID_URL, API_SOURCE_URL, API_TEMPLATE_EXPORTER_URL, } from '../constants/api';
2
- import { RocosError, errorCodes } from '../models/RocosError';
3
- import { BaseServiceAbstract } from './BaseServiceAbstract';
4
- import { RocosLogger } from '../logger/RocosLogger';
5
- import { Stream } from '../models/Stream';
6
- import { StreamSource } from '../models/StreamSource';
7
- import { cleanObject } from '../helpers/cleanObject';
8
- import { formatServiceUrl } from '../helpers/formatServiceUrl';
9
- export class StreamService extends BaseServiceAbstract {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StreamService = void 0;
4
+ const api_1 = require("../constants/api");
5
+ const RocosError_1 = require("../models/RocosError");
6
+ const BaseServiceAbstract_1 = require("./BaseServiceAbstract");
7
+ const RocosLogger_1 = require("../logger/RocosLogger");
8
+ const Stream_1 = require("../models/Stream");
9
+ const StreamSource_1 = require("../models/StreamSource");
10
+ const cleanObject_1 = require("../helpers/cleanObject");
11
+ const formatServiceUrl_1 = require("../helpers/formatServiceUrl");
12
+ class StreamService extends BaseServiceAbstract_1.BaseServiceAbstract {
10
13
  constructor(config) {
11
14
  super(config);
12
- this.logger = RocosLogger.getInstance(`StreamService(${this.config.url})`);
15
+ this.logger = RocosLogger_1.RocosLogger.getInstance(`StreamService(${this.config.url})`);
13
16
  }
14
17
  getError(e) {
15
- return new RocosError(e, errorCodes.STREAM_SERVICE_ERROR);
18
+ return new RocosError_1.RocosError(e, RocosError_1.errorCodes.STREAM_SERVICE_ERROR);
16
19
  }
17
20
  getStatus() {
18
21
  return true;
@@ -25,14 +28,14 @@ export class StreamService extends BaseServiceAbstract {
25
28
  */
26
29
  // TODO: map the response object
27
30
  async create(projectId, stream) {
28
- return this.callPost(formatServiceUrl(API_PROJECT_STREAM_URL, { url: this.config.url, projectId }, this.config.insecure), cleanObject(new Stream(stream)), `Failed to create stream for ${projectId}.`);
31
+ return this.callPost(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_URL, { url: this.config.url, projectId }, this.config.insecure), cleanObject_1.cleanObject(new Stream_1.Stream(stream)), `Failed to create stream for ${projectId}.`);
29
32
  }
30
33
  /**
31
34
  * Get streams list by project id.
32
35
  */
33
36
  async list(projectId) {
34
- const data = await this.callGet(formatServiceUrl(API_PROJECT_STREAM_URL, { url: this.config.url, projectId }, this.config.insecure), `Failed to get streams for ${projectId}.`);
35
- return data.map((stream) => cleanObject(new Stream(stream)));
37
+ const data = await this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_URL, { url: this.config.url, projectId }, this.config.insecure), `Failed to get streams for ${projectId}.`);
38
+ return data.map((stream) => cleanObject_1.cleanObject(new Stream_1.Stream(stream)));
36
39
  }
37
40
  /**
38
41
  * Get stream information by project id and stream id.
@@ -41,8 +44,8 @@ export class StreamService extends BaseServiceAbstract {
41
44
  * @param streamId - Stream Id
42
45
  */
43
46
  async info(projectId, streamId) {
44
- const data = await this.callGet(formatServiceUrl(API_PROJECT_STREAM_ID_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to get stream for ${projectId}, streamId ${streamId}.`);
45
- return cleanObject(new Stream(data));
47
+ const data = await this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_ID_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to get stream for ${projectId}, streamId ${streamId}.`);
48
+ return cleanObject_1.cleanObject(new Stream_1.Stream(data));
46
49
  }
47
50
  /**
48
51
  * Add new data to the stream
@@ -53,13 +56,13 @@ export class StreamService extends BaseServiceAbstract {
53
56
  */
54
57
  // TODO: map the response object
55
58
  async addData(projectId, streamId, sources) {
56
- return this.callPut(formatServiceUrl(API_PROJECT_STREAM_DATA_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), { data: sources.map((source) => cleanObject(new StreamSource(source))) }, `Failed add data to stream for ${projectId}, streamId ${streamId}.`);
59
+ return this.callPut(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_DATA_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), { data: sources.map((source) => cleanObject_1.cleanObject(new StreamSource_1.StreamSource(source))) }, `Failed add data to stream for ${projectId}, streamId ${streamId}.`);
57
60
  }
58
61
  /**
59
62
  * Get sources for stream.
60
63
  */
61
64
  async sources() {
62
- return this.callGet(formatServiceUrl(API_SOURCE_URL, { url: this.config.url }, this.config.insecure), 'Failed to get sources for stream.');
65
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_SOURCE_URL, { url: this.config.url }, this.config.insecure), 'Failed to get sources for stream.');
63
66
  }
64
67
  /**
65
68
  * Get source info
@@ -67,7 +70,7 @@ export class StreamService extends BaseServiceAbstract {
67
70
  * @param sourceId - Source Id
68
71
  */
69
72
  async sourceInfo(sourceId) {
70
- return this.callGet(formatServiceUrl(API_SOURCE_ID_URL, { url: this.config.url, sourceId }, this.config.insecure), `Failed add et source info for ${sourceId}.`);
73
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_SOURCE_ID_URL, { url: this.config.url, sourceId }, this.config.insecure), `Failed add et source info for ${sourceId}.`);
71
74
  }
72
75
  /**
73
76
  * Get streams list of robot
@@ -76,7 +79,7 @@ export class StreamService extends BaseServiceAbstract {
76
79
  * @param callsign - Robot's Callsign
77
80
  */
78
81
  async streamsForRobot(projectId, callsign) {
79
- return this.callGet(formatServiceUrl(API_PROJECT_CALLSIGN_STREAM_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed get streams for ${projectId}, callsign ${callsign}.`);
82
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_CALLSIGN_STREAM_URL, { url: this.config.url, projectId, callsign }, this.config.insecure), `Failed get streams for ${projectId}, callsign ${callsign}.`);
80
83
  }
81
84
  /**
82
85
  * Bind robot with stream
@@ -87,7 +90,7 @@ export class StreamService extends BaseServiceAbstract {
87
90
  */
88
91
  // TODO: map the response object
89
92
  async bindRobot(projectId, streamId, callsigns) {
90
- return this.callPut(formatServiceUrl(API_PROJECT_STREAM_CALLSIGN_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), callsigns, `Failed to bind robot with stream for ${projectId}, streamId ${streamId}.`);
93
+ return this.callPut(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_CALLSIGN_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), callsigns, `Failed to bind robot with stream for ${projectId}, streamId ${streamId}.`);
91
94
  }
92
95
  /**
93
96
  * Unbind robot with stream
@@ -98,7 +101,7 @@ export class StreamService extends BaseServiceAbstract {
98
101
  */
99
102
  // TODO: map the response object
100
103
  async unbindRobot(projectId, streamId, callsigns) {
101
- return this.callDelete(formatServiceUrl(API_PROJECT_STREAM_CALLSIGN_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to unbind robot with stream for ${projectId}, streamId ${streamId}.`, callsigns);
104
+ return this.callDelete(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_CALLSIGN_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to unbind robot with stream for ${projectId}, streamId ${streamId}.`, callsigns);
102
105
  }
103
106
  /**
104
107
  * Remove streams by list
@@ -108,7 +111,7 @@ export class StreamService extends BaseServiceAbstract {
108
111
  */
109
112
  // TODO: map the response object
110
113
  async removeStreams(projectId, streamIds) {
111
- return this.callDelete(formatServiceUrl(API_PROJECT_STREAM_URL, { url: this.config.url, projectId }, this.config.insecure), `Failed to remove stream for ${projectId}.`, streamIds);
114
+ return this.callDelete(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_URL, { url: this.config.url, projectId }, this.config.insecure), `Failed to remove stream for ${projectId}.`, streamIds);
112
115
  }
113
116
  /**
114
117
  * Remove stream data by dataIds list
@@ -119,7 +122,7 @@ export class StreamService extends BaseServiceAbstract {
119
122
  */
120
123
  // TODO: map the response object
121
124
  async removeStreamData(projectId, streamId, dataIds) {
122
- return this.callDelete(formatServiceUrl(API_PROJECT_STREAM_DATA_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to remove streams for ${projectId}, streamId ${streamId}.`, dataIds);
125
+ return this.callDelete(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_DATA_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to remove streams for ${projectId}, streamId ${streamId}.`, dataIds);
123
126
  }
124
127
  /**
125
128
  * Remove stream data by ids list
@@ -130,13 +133,14 @@ export class StreamService extends BaseServiceAbstract {
130
133
  */
131
134
  // TODO: map the response object
132
135
  async removeStreamDataByIds(projectId, streamId, ids) {
133
- return this.callDelete(formatServiceUrl(API_PROJECT_STREAM_DATA_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to remove streams for ${projectId}, streamId ${streamId}.`, ids);
136
+ return this.callDelete(formatServiceUrl_1.formatServiceUrl(api_1.API_PROJECT_STREAM_DATA_URL, { url: this.config.url, projectId, streamId }, this.config.insecure), `Failed to remove streams for ${projectId}, streamId ${streamId}.`, ids);
134
137
  }
135
138
  /**
136
139
  * Get stream data exporter templates list
137
140
  */
138
141
  // TODO: map the response object
139
142
  async dataExporterTemplates() {
140
- return this.callGet(formatServiceUrl(API_TEMPLATE_EXPORTER_URL, { url: this.config.url }, this.config.insecure), 'Failed to get data exporters.');
143
+ return this.callGet(formatServiceUrl_1.formatServiceUrl(api_1.API_TEMPLATE_EXPORTER_URL, { url: this.config.url }, this.config.insecure), 'Failed to get data exporters.');
141
144
  }
142
145
  }
146
+ exports.StreamService = StreamService;
@@ -1,11 +1,23 @@
1
- import { Observable } from 'rxjs';
2
- import { CallsignStatus, IRocosSDKConfig, IRocosTelemetryMessage, IStreamStatusMessage, ITelemetryStream, ITelemetryStreamConfig, ITelemetrySubscriptionParams, ITelemetrySubscriptions } from '../models';
3
- import { BaseStreamService } from './BaseStreamService';
4
- export declare class TelemetryService extends BaseStreamService<ITelemetryStream, ITelemetryStreamConfig> {
1
+ import { Observable, Subject } from 'rxjs';
2
+ import { ITelemetrySubscriptionParams, ITelemetrySubscriptions } from '../models/params/ITelemetryParams';
3
+ import { IBaseService } from '../models/IBaseService';
4
+ import { IRocosSDKConfig } from '../models/IRocosSDKConfig';
5
+ import { IRocosTelemetryMessage } from '../models/message/IRocosTelemetryMessage';
6
+ import { IStreamStatusMessage } from '../models/message/IStreamStatusMessage';
7
+ import { ISubscriberStatus } from '../models/ISubscriberStatus';
8
+ import { ITelemetryStream } from '../models/stream/ITelemetryStream';
9
+ import { ITelemetryStreamConfig } from '../models/ITelemetryStreamConfig';
10
+ import { SubscriberStatusEnum } from '../models/SubscriberStatusEnum';
11
+ export declare class TelemetryService implements IBaseService, ISubscriberStatus {
12
+ private config;
13
+ private logger;
14
+ private status;
5
15
  private statusSubscription;
6
16
  private changeStream$;
7
17
  private streamStatusSubject$;
18
+ status$: Subject<SubscriberStatusEnum>;
8
19
  constructor(config: IRocosSDKConfig);
20
+ getStatus(): boolean;
9
21
  /**
10
22
  * The main method for subscribing to telemetry messages
11
23
  *
@@ -26,15 +38,6 @@ export declare class TelemetryService extends BaseStreamService<ITelemetryStream
26
38
  * @returns An Observable that outputs stream status
27
39
  */
28
40
  getStatusChanges(): Observable<IStreamStatusMessage>;
29
- /**
30
- * Subscribes to the heartbeat telemetry and checks we receive one at least every 5s
31
- * @param projectId
32
- * @param callsign
33
- * @param heartbeatTimeoutMs optionally override the deadline for heartbeats (in ms). Default 5000ms
34
- * @param intervalMs optionally override the interval to check for heartbeats (in ms). Default 2000ms
35
- */
36
- getRobotStatusChanges(projectId: string, callsign: string, heartbeatTimeoutMs?: number, intervalMs?: number): Observable<CallsignStatus>;
37
- protected initStream(stream: ITelemetryStream): Promise<void>;
38
- private createStream;
41
+ private initStream;
39
42
  protected getStream(config: ITelemetryStreamConfig): ITelemetryStream;
40
43
  }