@phystack/hub-client 4.5.19-dev → 4.5.21-dev
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/dist/index.d.ts +22 -28
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +252 -378
- package/dist/index.js.map +1 -1
- package/dist/peripheral-twin.d.ts +34 -0
- package/dist/peripheral-twin.d.ts.map +1 -0
- package/dist/peripheral-twin.js +234 -0
- package/dist/peripheral-twin.js.map +1 -0
- package/dist/services/phyhub-connection.service.d.ts +1 -0
- package/dist/services/phyhub-connection.service.d.ts.map +1 -1
- package/dist/services/phyhub-connection.service.js +17 -0
- package/dist/services/phyhub-connection.service.js.map +1 -1
- package/dist/services/phyhub-direct-connection.service.d.ts +21 -0
- package/dist/services/phyhub-direct-connection.service.d.ts.map +1 -0
- package/dist/services/phyhub-direct-connection.service.js +101 -0
- package/dist/services/phyhub-direct-connection.service.js.map +1 -0
- package/dist/services/webrtc/data-channel-handler.d.ts +45 -0
- package/dist/services/webrtc/data-channel-handler.d.ts.map +1 -0
- package/dist/services/webrtc/data-channel-handler.js +260 -0
- package/dist/services/webrtc/data-channel-handler.js.map +1 -0
- package/dist/services/webrtc/index.d.ts +8 -0
- package/dist/services/webrtc/index.d.ts.map +1 -0
- package/dist/services/webrtc/index.js +18 -0
- package/dist/services/webrtc/index.js.map +1 -0
- package/dist/services/webrtc/media-stream-handler.d.ts +57 -0
- package/dist/services/webrtc/media-stream-handler.d.ts.map +1 -0
- package/dist/services/webrtc/media-stream-handler.js +383 -0
- package/dist/services/webrtc/media-stream-handler.js.map +1 -0
- package/dist/services/webrtc/peer-connection-manager.d.ts +40 -0
- package/dist/services/webrtc/peer-connection-manager.d.ts.map +1 -0
- package/dist/services/webrtc/peer-connection-manager.js +336 -0
- package/dist/services/webrtc/peer-connection-manager.js.map +1 -0
- package/dist/services/webrtc/types.d.ts +134 -0
- package/dist/services/webrtc/types.d.ts.map +1 -0
- package/dist/services/webrtc/types.js +12 -0
- package/dist/services/webrtc/types.js.map +1 -0
- package/dist/services/webrtc/webrtc-globals.d.ts +4 -0
- package/dist/services/webrtc/webrtc-globals.d.ts.map +1 -0
- package/dist/services/webrtc/webrtc-globals.js +72 -0
- package/dist/services/webrtc/webrtc-globals.js.map +1 -0
- package/dist/services/webrtc/webrtc-manager.d.ts +35 -0
- package/dist/services/webrtc/webrtc-manager.d.ts.map +1 -0
- package/dist/services/webrtc/webrtc-manager.js +274 -0
- package/dist/services/webrtc/webrtc-manager.js.map +1 -0
- package/dist/test/communication-comprehensive-test.d.ts +8 -0
- package/dist/test/communication-comprehensive-test.d.ts.map +1 -0
- package/dist/test/communication-comprehensive-test.js +356 -0
- package/dist/test/communication-comprehensive-test.js.map +1 -0
- package/dist/test/webrtc-channel-names-test.d.ts +2 -0
- package/dist/test/webrtc-channel-names-test.d.ts.map +1 -0
- package/dist/test/webrtc-channel-names-test.js +177 -0
- package/dist/test/webrtc-channel-names-test.js.map +1 -0
- package/dist/test/webrtc-comprehensive-test.d.ts +2 -0
- package/dist/test/webrtc-comprehensive-test.d.ts.map +1 -0
- package/dist/test/webrtc-comprehensive-test.js +328 -0
- package/dist/test/webrtc-comprehensive-test.js.map +1 -0
- package/dist/test/webrtc-reconnect-test.d.ts +4 -0
- package/dist/test/webrtc-reconnect-test.d.ts.map +1 -0
- package/dist/test/webrtc-reconnect-test.js +244 -0
- package/dist/test/webrtc-reconnect-test.js.map +1 -0
- package/dist/test/webrtc-test-harness.d.ts +4 -0
- package/dist/test/webrtc-test-harness.d.ts.map +1 -0
- package/dist/test/webrtc-test-harness.js +169 -0
- package/dist/test/webrtc-test-harness.js.map +1 -0
- package/dist/twin-messaging.d.ts +20 -0
- package/dist/twin-messaging.d.ts.map +1 -0
- package/dist/twin-messaging.js +94 -0
- package/dist/twin-messaging.js.map +1 -0
- package/dist/twin-registry.d.ts +9 -0
- package/dist/twin-registry.d.ts.map +1 -0
- package/dist/twin-registry.js +26 -0
- package/dist/twin-registry.js.map +1 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +20 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/twin.types.d.ts +62 -14
- package/dist/types/twin.types.d.ts.map +1 -1
- package/dist/types/twin.types.js +8 -1
- package/dist/types/twin.types.js.map +1 -1
- package/docs/webrtc-howto.md +398 -0
- package/docs/webrtc-test.md +330 -0
- package/package.json +3 -3
- package/scripts/webrtc-test.sh +401 -0
- package/src/index.ts +378 -568
- package/src/peripheral-twin.ts +337 -0
- package/src/services/phyhub-connection.service.ts +24 -0
- package/src/services/phyhub-direct-connection.service.ts +159 -0
- package/src/services/webrtc/data-channel-handler.ts +362 -0
- package/src/services/webrtc/index.ts +36 -0
- package/src/services/webrtc/media-stream-handler.ts +536 -0
- package/src/services/webrtc/peer-connection-manager.ts +467 -0
- package/src/services/webrtc/types.ts +273 -0
- package/src/services/webrtc/webrtc-globals.ts +108 -0
- package/src/services/webrtc/webrtc-manager.ts +490 -0
- package/src/test/communication-comprehensive-test.ts +533 -0
- package/src/test/webrtc-channel-names-test.ts +266 -0
- package/src/test/webrtc-comprehensive-test.ts +494 -0
- package/src/test/webrtc-reconnect-test.ts +345 -0
- package/src/test/webrtc-test-harness.ts +254 -0
- package/src/twin-messaging.ts +184 -0
- package/src/twin-registry.ts +39 -0
- package/src/types/index.ts +3 -0
- package/src/types/twin.types.ts +80 -14
- package/dist/services/webrtc/datachannel.d.ts +0 -10
- package/dist/services/webrtc/datachannel.d.ts.map +0 -1
- package/dist/services/webrtc/datachannel.js +0 -290
- package/dist/services/webrtc/datachannel.js.map +0 -1
- package/dist/services/webrtc/mediastream.d.ts +0 -10
- package/dist/services/webrtc/mediastream.d.ts.map +0 -1
- package/dist/services/webrtc/mediastream.js +0 -396
- package/dist/services/webrtc/mediastream.js.map +0 -1
- package/dist/services/webrtc/peer-connection-ice.d.ts +0 -32
- package/dist/services/webrtc/peer-connection-ice.d.ts.map +0 -1
- package/dist/services/webrtc/peer-connection-ice.js +0 -483
- package/dist/services/webrtc/peer-connection-ice.js.map +0 -1
- package/src/services/webrtc/datachannel.ts +0 -421
- package/src/services/webrtc/mediastream.ts +0 -602
- package/src/services/webrtc/peer-connection-ice.ts +0 -689
package/dist/index.d.ts
CHANGED
|
@@ -1,24 +1,9 @@
|
|
|
1
1
|
import { Socket, SocketOptions, ManagerOptions } from 'socket.io-client';
|
|
2
|
-
import { TwinStatusEnum, ScreenTwinReportedProperties, TwinResponse, EdgeTwinResponse, EdgeTwinDesiredPropertiesResponse, Instance, PeripheralInstance } from './types/twin.types';
|
|
3
|
-
import { PhygridDataChannel, PhygridMediaStream } from './types/webrtc.types';
|
|
2
|
+
import { TwinStatusEnum, ScreenTwinReportedProperties, TwinResponse, EdgeTwinResponse, EdgeTwinDesiredPropertiesResponse, Instance, PeripheralInstance, IPeripheralTwinInstance, TwinMessageResult, TwinMessageResultStatus } from './types/twin.types';
|
|
4
3
|
import { SignalsService } from './services/signals.service';
|
|
5
4
|
import { DataRequestTypeEnum, InitSignalPayload } from './types/signal.types';
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
RTCVideoSource?: any;
|
|
9
|
-
}
|
|
10
|
-
namespace NodeJS {
|
|
11
|
-
interface Global {
|
|
12
|
-
MediaStream?: any;
|
|
13
|
-
RTCPeerConnection?: any;
|
|
14
|
-
RTCSessionDescription?: any;
|
|
15
|
-
RTCIceCandidate?: any;
|
|
16
|
-
RTCVideoSource?: any;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
var RTCVideoSource: any;
|
|
20
|
-
}
|
|
21
|
-
interface EventPayload<T = any> {
|
|
5
|
+
import { WebRTCManager, PhygridDataChannel, PhygridMediaStream, WebRTCManagerOptions, MediaStreamOptions } from './services/webrtc';
|
|
6
|
+
export interface EventPayload<T = any> {
|
|
22
7
|
twinId?: string;
|
|
23
8
|
sourceTwinId?: string;
|
|
24
9
|
sourceDeviceId?: string;
|
|
@@ -40,8 +25,9 @@ export declare class PhyHubClient {
|
|
|
40
25
|
private subscribedTwins;
|
|
41
26
|
private twinMessageListeners;
|
|
42
27
|
private instances;
|
|
43
|
-
private peripheralInstances;
|
|
44
28
|
private twinUpdateListeners;
|
|
29
|
+
private twinInstancesRegistry;
|
|
30
|
+
private webrtcManager;
|
|
45
31
|
private readonly EVENTS;
|
|
46
32
|
constructor(params?: {
|
|
47
33
|
instanceId?: string;
|
|
@@ -61,17 +47,18 @@ export declare class PhyHubClient {
|
|
|
61
47
|
isConnected(): boolean;
|
|
62
48
|
sendSignal(type: DataRequestTypeEnum, data: Record<string, any>): Promise<void>;
|
|
63
49
|
getDeviceStatus(): Promise<any>;
|
|
64
|
-
getDataChannel: (targetTwinId: string) => Promise<PhygridDataChannel>;
|
|
65
|
-
onDataChannel: (sourceTwinId: string, callback: (dc: PhygridDataChannel) => void) => Promise<void>;
|
|
66
|
-
getMediaStream(targetTwinId: string): Promise<{
|
|
50
|
+
getDataChannel: (targetTwinId: string, channelName?: string) => Promise<PhygridDataChannel>;
|
|
51
|
+
onDataChannel: (sourceTwinId: string, callback: (dc: PhygridDataChannel) => void, channelName?: string) => Promise<void>;
|
|
52
|
+
getMediaStream(targetTwinId: string, options?: MediaStreamOptions): Promise<{
|
|
67
53
|
stream: PhygridMediaStream;
|
|
68
54
|
close: () => void;
|
|
69
55
|
}>;
|
|
70
|
-
onMediaStream: (sourceTwinId: string, callback: (stream: PhygridMediaStream) => void) => Promise<void>;
|
|
56
|
+
onMediaStream: (sourceTwinId: string, callback: (stream: PhygridMediaStream) => void, options?: MediaStreamOptions) => Promise<void>;
|
|
57
|
+
getWebRTCManager(options?: WebRTCManagerOptions): Promise<WebRTCManager>;
|
|
71
58
|
getInstance(): Promise<Instance>;
|
|
72
59
|
getEdgeInstance(): Promise<Instance>;
|
|
73
60
|
getScreenInstance(): Promise<Instance>;
|
|
74
|
-
getPeripheralInstance(peripheralTwinId: string): Promise<
|
|
61
|
+
getPeripheralInstance(peripheralTwinId: string): Promise<IPeripheralTwinInstance | null>;
|
|
75
62
|
private getGridApp;
|
|
76
63
|
getSettings(): Promise<Partial<EdgeTwinDesiredPropertiesResponse>>;
|
|
77
64
|
getEdgeSettings(): Promise<Partial<EdgeTwinDesiredPropertiesResponse>>;
|
|
@@ -83,20 +70,24 @@ export declare class PhyHubClient {
|
|
|
83
70
|
private processEmitQueue;
|
|
84
71
|
onTwinUpdate(targetTwinId: string, callback: (twin: TwinResponse) => void): void;
|
|
85
72
|
offTwinUpdate(targetTwinId: string, callback: (twin: TwinResponse) => void): boolean;
|
|
86
|
-
|
|
73
|
+
sendEvent(targetTwinId: string, data: any): void;
|
|
74
|
+
request(targetTwinId: string, data: any, callback?: (response: TwinMessageResult) => void): Promise<TwinMessageResult | undefined>;
|
|
75
|
+
sendTwinMessage(targetTwinId: string, data: any, callback?: (response: any) => void): Promise<void>;
|
|
87
76
|
onTwinMessage(targetTwinId: string, callback: (message: any) => void): Promise<void>;
|
|
88
77
|
offTwinMessage(targetTwinId: string, callback: (message: any) => void): boolean;
|
|
89
78
|
removeMessageListener(twinId: string, callback: (message: any) => void): void;
|
|
90
79
|
subscribeTwin(targetTwinId: string, callback?: (response: any) => void): Promise<unknown>;
|
|
91
80
|
getTwinById(twinId: string): Promise<TwinResponse>;
|
|
92
|
-
|
|
81
|
+
updateReportedProperties(twinId: string, reportedProperties: Record<string, any>): Promise<TwinResponse>;
|
|
82
|
+
private initializeDirectConnectionTwin;
|
|
93
83
|
}
|
|
94
84
|
export declare const connectPhyClient: (params?: {
|
|
95
85
|
instanceId?: string;
|
|
96
86
|
moduleName?: string;
|
|
97
87
|
dataResidency?: string;
|
|
98
88
|
}) => Promise<PhyHubClient>;
|
|
99
|
-
export type { EdgeTwinResponse, Instance, PeripheralInstance };
|
|
89
|
+
export type { EdgeTwinResponse, Instance, PeripheralInstance, IPeripheralTwinInstance, TwinMessageResult };
|
|
90
|
+
export { TwinMessageResultStatus };
|
|
100
91
|
declare const _default: {
|
|
101
92
|
connectPhyClient: (params?: {
|
|
102
93
|
instanceId?: string;
|
|
@@ -105,5 +96,8 @@ declare const _default: {
|
|
|
105
96
|
}) => Promise<PhyHubClient>;
|
|
106
97
|
};
|
|
107
98
|
export default _default;
|
|
108
|
-
export type { PhygridDataChannel, PhygridMediaStream };
|
|
99
|
+
export type { PhygridDataChannel, PhygridMediaStream, WebRTCManagerOptions, MediaStreamOptions };
|
|
100
|
+
export { WebRTCManager } from './services/webrtc';
|
|
101
|
+
export type { TwinMessagingContext, TwinMessagingMethods } from './twin-messaging';
|
|
102
|
+
export { createTwinMessaging } from './twin-messaging';
|
|
109
103
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,YAAY,EAEZ,gBAAgB,EAChB,iCAAiC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|