@formant/data-sdk 1.50.0 → 1.52.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/dist/assets/DataFetchWorker-0a168933.js.map +1 -1
  2. package/dist/assets/{PcdLoaderWorker-6fe0da29.js.map → PcdLoaderWorker-eaac0b31.js.map} +1 -1
  3. package/dist/assets/ui-sdk-realtime-player-core-worker.umd-68a6e16a.js.map +1 -1
  4. package/dist/data-sdk.cjs.js +67 -120
  5. package/dist/data-sdk.cjs.js.map +1 -1
  6. package/dist/data-sdk.es.js +30256 -24832
  7. package/dist/data-sdk.es.js.map +1 -1
  8. package/dist/data-sdk.es6.js +30256 -24832
  9. package/dist/data-sdk.umd.js +67 -120
  10. package/dist/types/data-sdk/src/api/getTelemetry.d.ts +1 -1
  11. package/dist/types/data-sdk/src/config/whichFormantApiUrl.d.ts +1 -1
  12. package/dist/types/data-sdk/src/connector/data/BaseUniverseDataConnector.d.ts +2 -0
  13. package/dist/types/data-sdk/src/connector/data/LiveUniverseData.d.ts +1 -1
  14. package/dist/types/data-sdk/src/connector/data/TelemetryUniverseData.d.ts +3 -2
  15. package/dist/types/data-sdk/src/connector/model/IUniverseData.d.ts +3 -1
  16. package/dist/types/data-sdk/src/connector/model/IUniverseGridMap.d.ts +3 -2
  17. package/dist/types/data-sdk/src/connector/model/IUniverseOdometry.d.ts +1 -0
  18. package/dist/types/data-sdk/src/devices/BaseDevice.d.ts +7 -0
  19. package/dist/types/data-sdk/src/devices/Device.d.ts +5 -2
  20. package/dist/types/data-sdk/src/devices/IView.d.ts +29 -0
  21. package/dist/types/data-sdk/src/devices/PeerDevice.d.ts +11 -0
  22. package/dist/types/data-sdk/src/main.d.ts +1 -1
  23. package/dist/types/data-sdk/src/model/IBaseEvent.d.ts +8 -5
  24. package/dist/types/data-sdk/src/model/IEvent.d.ts +2 -1
  25. package/dist/types/data-sdk/src/model/IInterventionResponse.d.ts +2 -2
  26. package/dist/types/data-sdk/src/model/ILabelingRequestData.d.ts +1 -0
  27. package/dist/types/data-sdk/src/model/eventTypes.d.ts +1 -1
  28. package/package.json +2 -1
@@ -1,4 +1,4 @@
1
1
  import { TelemetryResult } from "../model/TelemetryResult";
2
2
  export declare function getTelemetry(deviceIdOrDeviceIds: string | string[], streamNameOrStreamNames: string | string[], start: Date, end: Date, tags?: {
3
3
  [key in string]: string[];
4
- }): Promise<TelemetryResult[]>;
4
+ }, latestOnly?: boolean): Promise<TelemetryResult[]>;
@@ -2,5 +2,5 @@ interface IHasString {
2
2
  get(key: string): string | null;
3
3
  has(key: string): boolean;
4
4
  }
5
- export declare function whichFormantApiUrl(global: any, urlParams: IHasString): any;
5
+ export declare function whichFormantApiUrl(global: any, urlParams: IHasString, host?: string): any;
6
6
  export {};
@@ -30,6 +30,8 @@ export declare class BasicUniverseDataConnector {
30
30
  timeChangeListeners: ((time: Date | "live") => void)[];
31
31
  queryStore: QueryStore;
32
32
  setTime(time: Date | "live"): void;
33
+ getTime(): Date | "live";
34
+ getTimeMs(): number;
33
35
  constructor();
34
36
  protected getAvailablePCDWorker(): Worker | undefined;
35
37
  protected getAvailableDataFetchWorker(): Worker | undefined;
@@ -18,7 +18,7 @@ export declare class LiveUniverseData extends BasicUniverseDataConnector impleme
18
18
  subscribeToImage(_deviceId: string, _source: UniverseDataSource, _callback: (image: HTMLCanvasElement) => void): CloseSubscription;
19
19
  subcribeToVideo(_deviceId: string, _source: UniverseDataSource, _callback: (frame: HTMLVideoElement) => void): CloseSubscription;
20
20
  subscribeToBitset(deviceId: string, source: UniverseDataSource, callback: (data: IBitset | Symbol) => void): CloseSubscription;
21
- subscribeToOdometry(deviceId: string, source: UniverseDataSource, callback: (data: IUniverseOdometry) => void): CloseSubscription;
21
+ subscribeToOdometry(deviceId: string, source: UniverseDataSource, callback: (data: IUniverseOdometry) => void, _trail?: number): CloseSubscription;
22
22
  subscribeToPose(deviceId: string, source: UniverseDataSource, callback: (data: IPose) => void): CloseSubscription;
23
23
  subscribeToNumeric(deviceId: string, source: UniverseDataSource, callback: (num: [number, number][]) => void): CloseSubscription;
24
24
  subscribeToNumericSet(deviceId: string, source: UniverseDataSource, callback: (entry: [number, INumericSetEntry[]][]) => void): CloseSubscription;
@@ -22,11 +22,12 @@ export declare class TelemetryUniverseData extends BasicUniverseDataConnector im
22
22
  onTimeChange(time: Date | "live"): void;
23
23
  findDataForTime(time: Date): void;
24
24
  timeFinders: ((time: Date) => void)[];
25
- addFinder<T extends StreamType>(t: (f: "too much data" | IDataPoint<T>[] | undefined) => Promise<void>, deviceId: string, name: string, dataType: T, latestOnly: boolean): (time: Date) => void;
25
+ addFinder<T extends StreamType>(callback: (f: "too much data" | IDataPoint<T>[] | undefined) => Promise<void>, deviceId: string, name: string, dataType: T, latestOnly: boolean): (time: Date) => void;
26
+ private getNearestPoint;
26
27
  removeFinder(fn: (time: Date) => void): void;
27
28
  subscribeTelemetry<T extends StreamType>(deviceId: string, source: UniverseDataSource, type: T, callback: (f: "too much data" | IDataPoint<T>[] | undefined) => Promise<void>): CloseSubscription;
28
29
  subscribeToPointCloud(deviceId: string, source: UniverseDataSource, callback: (data: IUniversePointCloud | Symbol) => void): CloseSubscription;
29
- subscribeToOdometry(deviceId: string, source: UniverseDataSource, callback: (data: Symbol | IUniverseOdometry) => void): CloseSubscription;
30
+ subscribeToOdometry(deviceId: string, source: UniverseDataSource, callback: (data: Symbol | IUniverseOdometry) => void, trail?: number): CloseSubscription;
30
31
  subscribeToPose(_deviceId: string, _source: UniverseDataSource, _callback: (data: Symbol | IPose) => void): CloseSubscription;
31
32
  subscribeToGeometry(deviceId: string, source: UniverseDataSource, callback: (data: Symbol | IMarker3DArray) => void): CloseSubscription;
32
33
  subscribeToJointState(deviceId: string, source: UniverseDataSource, callback: (data: Symbol | IJointState) => void): CloseSubscription;
@@ -79,6 +79,8 @@ export interface IUniverseData {
79
79
  addInteractionsChangedListener: (callback: (interactions: Interaction[]) => void) => () => void;
80
80
  addInteractionListener: (callback: (interaction: Interaction) => void) => () => void;
81
81
  setTime(time: Date | "live"): void;
82
+ getTime(): Date | "live";
83
+ getTimeMs(): number;
82
84
  getLatestTransformTrees(deviceId: string): Promise<{
83
85
  streamName: string;
84
86
  transformTree: ITransformNode;
@@ -100,7 +102,7 @@ export interface IUniverseData {
100
102
  getHardwareStreams(deviceId: string): Promise<IRealtimeStream[]>;
101
103
  subscribeToBitset(deviceId: string, source: UniverseDataSource, callback: (data: IBitset | DataStatus) => void): CloseSubscription;
102
104
  subscribeToPointCloud(deviceId: string, source: UniverseDataSource, callback: (data: IUniversePointCloud | DataStatus) => void): CloseSubscription;
103
- subscribeToOdometry(deviceId: string, source: UniverseDataSource, callback: (data: IUniverseOdometry | DataStatus) => void): CloseSubscription;
105
+ subscribeToOdometry(deviceId: string, source: UniverseDataSource, callback: (data: IUniverseOdometry | DataStatus) => void, trail?: number): CloseSubscription;
104
106
  subscribeToPath(deviceId: string, source: UniverseDataSource, callback: (data: IUniversePath | DataStatus) => void): CloseSubscription;
105
107
  subscribeToPose(deviceId: string, source: UniverseDataSource, callback: (data: IPose | DataStatus) => void): CloseSubscription;
106
108
  subscribeToGeometry(deviceId: string, source: UniverseDataSource, callback: (data: IMarker3DArray | DataStatus) => void): CloseSubscription;
@@ -1,10 +1,11 @@
1
1
  import { ITransform } from "../../model/ITransform";
2
2
  export interface IUniverseGridMap {
3
- canvas: HTMLCanvasElement;
4
3
  worldToLocal?: ITransform;
5
4
  width: number;
6
5
  height: number;
7
6
  resolution: number;
8
7
  origin: ITransform;
9
- data: number[];
8
+ url?: string;
9
+ data?: number[];
10
+ alpha?: number[];
10
11
  }
@@ -2,4 +2,5 @@ import { IPoseWithCovariance } from "../../model/IPoseWithCovariance";
2
2
  import { ITransform } from "../../model/ITransform";
3
3
  export interface IUniverseOdometry extends IPoseWithCovariance {
4
4
  worldToLocal?: ITransform;
5
+ trail?: [number, ITransform][];
5
6
  }
@@ -6,6 +6,9 @@ import { BinaryRequestDataChannel, TextRequestDataChannel } from "../RequestData
6
6
  import { IRealtimeSubscriber } from "./IRealtimeSubscriber";
7
7
  import { ICustomDataChannelCreator } from "./ICustomDataChannelCreator";
8
8
  import { ConfigurationDocument, RealtimeListener, RealtimeAudioStream, RealtimeVideoStream, RealtimeDataStream } from "./device.types";
9
+ import { TelemetryResult } from "../model/TelemetryResult";
10
+ import { IEventQuery } from "../model/IEventQuery";
11
+ import { IEvent } from "../model/IEvent";
9
12
  export declare abstract class BaseDevice extends EventEmitter implements IRealtimeSubscriber, ICustomDataChannelCreator {
10
13
  rtcClient: RtcClient | undefined;
11
14
  remoteDevicePeerId: string | null;
@@ -14,6 +17,10 @@ export declare abstract class BaseDevice extends EventEmitter implements IRealti
14
17
  abstract getConfiguration(): Promise<ConfigurationDocument>;
15
18
  abstract startRealtimeConnection(sessionType?: number): Promise<void>;
16
19
  abstract getRemotePeer(): Promise<IRtcPeer>;
20
+ abstract getTelemetry(streamNameOrStreamNames: string | string[], start: Date, end: Date, tags?: {
21
+ [key in string]: string[];
22
+ }, limit?: number, offset?: number, latestOnly?: boolean): Promise<TelemetryResult[]>;
23
+ abstract queryEvents(query: IEventQuery): Promise<IEvent[]>;
17
24
  protected handleMessage: (peerId: string, message: any) => void;
18
25
  protected stopConnectionMonitoring(): void;
19
26
  protected assertNotCancelled(cancelled: boolean): void;
@@ -16,6 +16,8 @@ import { patchDevice } from "../api/patchDevice";
16
16
  import { getDevicesData } from "../api/getDevicesData";
17
17
  import { queryDevicesData } from "../api/queryDevicesData";
18
18
  import { disableDevice } from "../api/disableDevice";
19
+ import { TelemetryResult } from "../model/TelemetryResult";
20
+ import { IEvent } from "../model/IEvent";
19
21
  export declare class Device extends BaseDevice {
20
22
  id: string;
21
23
  name: string;
@@ -62,7 +64,8 @@ export declare class Device extends BaseDevice {
62
64
  createCaptureStream(streamName: string): Promise<CaptureStream>;
63
65
  getTelemetry(streamNameOrStreamNames: string | string[], start: Date, end: Date, tags?: {
64
66
  [key in string]: string[];
65
- }): Promise<import("../main").TelemetryResult[]>;
67
+ }, limit?: number, offset?: number, latestOnly?: boolean): Promise<TelemetryResult[]>;
68
+ queryEvents(query: IEventQuery): Promise<IEvent[]>;
66
69
  getTelemetryStreams(): Promise<TelemetryStream[]>;
67
70
  createInterventionRequest<T extends InterventionType>(message: string, interventionType: InterventionType, interventionRequest: IInterventionTypeMap[T]["request"], tags?: {
68
71
  [key in string]: string[];
@@ -79,7 +82,7 @@ export declare class Device extends BaseDevice {
79
82
  }[]>;
80
83
  eventsCounter(eventTypes: EventType[], timeFrame: AggregateLevel, range: number, time: number, query?: IEventQuery): Promise<{
81
84
  date: string;
82
- events: import("../main").IEvent[];
85
+ events: IEvent[];
83
86
  }[]>;
84
87
  createShareLink(share: IShare, view: string): Promise<string | null>;
85
88
  }
@@ -0,0 +1,29 @@
1
+ export interface IView {
2
+ id: string;
3
+ tags: {
4
+ [key: string]: string;
5
+ };
6
+ organizationId: string;
7
+ name: string;
8
+ description?: string | null;
9
+ url?: string | null;
10
+ showOnSingleDevice?: boolean;
11
+ showOnMultiDevice?: boolean;
12
+ showOnTeleop?: boolean;
13
+ showOnAnalytics?: boolean;
14
+ showTimeline?: boolean;
15
+ localModeEnabled?: boolean;
16
+ filter: IFilter | null;
17
+ deviceFilter: IFilter | null;
18
+ groupFilter: IFilter | null;
19
+ layoutType?: string | null;
20
+ index: number;
21
+ }
22
+ export interface IFilter {
23
+ deviceIds?: string[];
24
+ names?: string[];
25
+ types?: any[];
26
+ tags?: any;
27
+ notTags?: any;
28
+ notNames?: string[];
29
+ }
@@ -2,6 +2,10 @@ import { IRtcPeer } from "@formant/realtime-sdk";
2
2
  import { IStreamCurrentValue } from "../model/IStreamCurrentValue";
3
3
  import { ConfigurationDocument } from "./device.types";
4
4
  import { BaseDevice } from "./BaseDevice";
5
+ import { TelemetryResult } from "../model/TelemetryResult";
6
+ import { IEventQuery } from "../model/IEventQuery";
7
+ import { IEvent } from "../model/IEvent";
8
+ import { IView } from "./IView";
5
9
  export declare class PeerDevice extends BaseDevice {
6
10
  peerUrl: string;
7
11
  id: string;
@@ -9,10 +13,17 @@ export declare class PeerDevice extends BaseDevice {
9
13
  private streamTelemetry;
10
14
  constructor(peerUrl: string);
11
15
  getLatestTelemetry(): Promise<IStreamCurrentValue[]>;
16
+ getTelemetry(streamNameOrStreamNames: string | string[], start: Date, end: Date, tags?: {
17
+ [key in string]: string[];
18
+ }, limit?: number, offset?: number, latestOnly?: boolean): Promise<TelemetryResult[]>;
19
+ queryEvents(query: IEventQuery): Promise<IEvent[]>;
20
+ private checkKeysAndThrow;
21
+ private getPointPayload;
12
22
  private subscribeToTelemetry;
13
23
  private handleXHRError;
14
24
  getDeviceId(): Promise<string>;
15
25
  getConfiguration(): Promise<ConfigurationDocument>;
26
+ getViews(): Promise<IView[]>;
16
27
  startRealtimeConnection(sessionType?: number): Promise<void>;
17
28
  private initConnectionMonitoring;
18
29
  getRemotePeer(): Promise<IRtcPeer>;
@@ -126,7 +126,7 @@ export * from "./model/IDeviceQuery";
126
126
  export * from "./model/IAnnotationQuery";
127
127
  export * from "./model/IStream";
128
128
  export { SessionTypeConstants as SessionType } from "./model/SessionType";
129
- export type { IRtcSendConfiguration, IRtcStreamMessage, IRtcStreamPayload, } from "@formant/realtime-sdk";
129
+ export type { IRtcSendConfiguration, IRtcStreamMessage, IRtcStreamPayload, RtcClient, RtcClientV1, RtcStreamType, RtcSignalingClient, } from "@formant/realtime-sdk";
130
130
  export * from "./model/JsonSchema";
131
131
  export * from "./utils/aggregateFunctionUtils";
132
132
  export * from "./model/IStreamColumn";
@@ -1,19 +1,22 @@
1
1
  import { EventType } from "./EventType";
2
- import { IBaseEntity } from "./IBaseEntity";
2
+ import { IDictionary } from "./IDictionary";
3
3
  import { IsoDate } from "./IsoDate";
4
- import { ITags } from "./ITags";
4
+ import { ITaggedEntity } from "./ITaggedEntity";
5
5
  import { StreamType } from "./StreamType";
6
6
  import { Uuid } from "./Uuid";
7
- export interface IBaseEvent<T extends EventType = EventType> extends IBaseEntity {
8
- type?: T;
7
+ export interface IBaseEvent<T extends EventType = EventType> extends ITaggedEntity {
8
+ type: T;
9
9
  organizationId?: Uuid;
10
10
  time: IsoDate;
11
11
  endTime?: IsoDate | null;
12
+ parentId?: Uuid | null;
13
+ metadata?: IDictionary;
12
14
  message: string;
13
15
  viewed?: boolean;
14
16
  deviceId?: Uuid;
15
17
  streamName?: string;
16
18
  streamType?: StreamType;
17
- tags?: ITags;
18
19
  notificationEnabled?: boolean;
20
+ eventTriggerId?: Uuid | null;
21
+ setsDeviceColor?: boolean;
19
22
  }
@@ -8,10 +8,11 @@ import { IDatapointEvent } from "./IDatapointEvent";
8
8
  import { IDeviceOfflineEvent } from "./IDeviceOfflineEvent";
9
9
  import { IDeviceOnlineEvent } from "./IDeviceOnlineEvent";
10
10
  import { IInterventionRequest } from "./IInterventionRequest";
11
+ import { IInterventionResponse } from "./IInterventionResponse";
11
12
  import { IPortForwardingSessionRecord } from "./IPortForwardingSessionRecord";
12
13
  import { IStatefulEvent } from "./IStatefulEvent";
13
14
  import { ISystemEvent } from "./ISystemEvent";
14
15
  import { ITaskSummary } from "./ITaskSummary";
15
16
  import { ITeleopSessionRecord } from "./ITeleopSessionRecord";
16
17
  import { ITriggeredEvent } from "./ITriggeredEvent";
17
- export type IEvent = ITriggeredEvent<"triggered-event"> | IDatapointEvent | IDeviceOnlineEvent | IDeviceOfflineEvent | IInterventionRequest | ITeleopSessionRecord | IPortForwardingSessionRecord | ICommandRequestEvent | ICommandResponseEvent | ICommandDeliveryEvent | ICustomEvent | IComment | ISystemEvent | IAnnotation | ITaskSummary | IStatefulEvent;
18
+ export type IEvent = ITriggeredEvent<"triggered-event"> | IDatapointEvent | IDeviceOnlineEvent | IDeviceOfflineEvent | IInterventionRequest | IInterventionResponse | ITeleopSessionRecord | IPortForwardingSessionRecord | ICommandRequestEvent | ICommandResponseEvent | ICommandDeliveryEvent | ICustomEvent | IComment | ISystemEvent | IAnnotation | ITaskSummary | IStatefulEvent;
@@ -1,8 +1,8 @@
1
- import { IBaseEntity } from "./IBaseEntity";
1
+ import { IBaseEvent } from "./IBaseEvent";
2
2
  import { IInterventionTypeMap } from "./IInterventionTypeMap";
3
3
  import { InterventionType } from "./InterventionType";
4
4
  import { Uuid } from "./Uuid";
5
- export interface IInterventionResponse<T extends InterventionType = InterventionType> extends IBaseEntity {
5
+ export interface IInterventionResponse<T extends InterventionType = InterventionType> extends IBaseEvent<"intervention-response"> {
6
6
  userId?: Uuid;
7
7
  interventionId: Uuid;
8
8
  interventionType: T;
@@ -5,4 +5,5 @@ export interface ILabelingRequestData {
5
5
  imageUrl: string;
6
6
  labels: ILabel[];
7
7
  hint?: ILabeledPolygon[];
8
+ title?: string;
8
9
  }
@@ -1 +1 @@
1
- export declare const eventTypes: readonly ["triggered-event", "datapoint-event", "device-online", "device-offline", "intervention-request", "teleop-session-record", "port-forwarding-session-record", "command-request", "command-response", "command-delivery", "custom", "comment", "system", "annotation", "task-summary", "stateful"];
1
+ export declare const eventTypes: readonly ["triggered-event", "datapoint-event", "device-online", "device-offline", "intervention-request", "teleop-session-record", "port-forwarding-session-record", "command-request", "command-response", "command-delivery", "intervention-response", "custom", "comment", "system", "annotation", "task-summary", "stateful"];
package/package.json CHANGED
@@ -24,7 +24,7 @@
24
24
  }
25
25
  }
26
26
  },
27
- "version": "1.50.0",
27
+ "version": "1.52.0",
28
28
  "scripts": {
29
29
  "preversion": "npm run verify",
30
30
  "postversion": "make",
@@ -69,6 +69,7 @@
69
69
  "base64-js": "^1.5.1",
70
70
  "date-fns": "^2.30.0",
71
71
  "eventemitter3": "^5.0.1",
72
+ "google-protobuf": "^3.21.2",
72
73
  "lzfjs": "^1.0.1",
73
74
  "pako": "^2.1.0",
74
75
  "validator": "^13.11.0"