@livedigital/client 3.17.0 → 3.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/constants/events.d.ts +3 -0
- package/dist/constants/events.ts +3 -0
- package/dist/engine/Peer.d.ts +14 -3
- package/dist/helpers/peer.d.ts +10 -0
- package/dist/index.es.js +2 -2
- package/dist/index.js +2 -2
- package/dist/types/common.d.ts +12 -0
- package/dist/types/engine.d.ts +4 -0
- package/package.json +1 -1
- package/src/constants/events.ts +3 -0
- package/src/engine/Peer.ts +61 -12
- package/src/engine/handlers/ChannelEventHandler.ts +40 -1
- package/src/helpers/peer.ts +20 -0
- package/src/types/common.ts +16 -0
- package/src/types/engine.ts +5 -0
|
@@ -11,6 +11,8 @@ export declare const CHANNEL_EVENTS: {
|
|
|
11
11
|
readonly getAudioObserverProducer: "channel.getAudioObserverProducer";
|
|
12
12
|
readonly getGeneralDataProducer: "channel.getGeneralDataProducer";
|
|
13
13
|
readonly getChannelStateSyncDataProducer: "channel.getChannelStateSyncDataProducer";
|
|
14
|
+
readonly changeProducePermissions: "channel.changeProducePermissions";
|
|
15
|
+
readonly changePeerProducePermissions: "peer.changeProducePermissions";
|
|
14
16
|
readonly ping: "peer.ping";
|
|
15
17
|
};
|
|
16
18
|
export declare const CLIENT_EVENTS: {
|
|
@@ -31,6 +33,7 @@ export declare const CLIENT_EVENTS: {
|
|
|
31
33
|
readonly connectionRestored: "connection-restored";
|
|
32
34
|
readonly forcedDisconnect: "forced-disconnect";
|
|
33
35
|
readonly rejectUnauthorized: "reject-unauthorized";
|
|
36
|
+
readonly producePermissionsChanged: "produce-permissions-changed";
|
|
34
37
|
};
|
|
35
38
|
export declare const TRACK_EVENTS: {
|
|
36
39
|
readonly volumeChanged: "volume-changed";
|
package/dist/constants/events.ts
CHANGED
|
@@ -11,6 +11,8 @@ export const CHANNEL_EVENTS = {
|
|
|
11
11
|
getAudioObserverProducer: 'channel.getAudioObserverProducer',
|
|
12
12
|
getGeneralDataProducer: 'channel.getGeneralDataProducer',
|
|
13
13
|
getChannelStateSyncDataProducer: 'channel.getChannelStateSyncDataProducer',
|
|
14
|
+
changeProducePermissions: 'channel.changeProducePermissions',
|
|
15
|
+
changePeerProducePermissions: 'peer.changeProducePermissions',
|
|
14
16
|
ping: 'peer.ping',
|
|
15
17
|
} as const;
|
|
16
18
|
|
|
@@ -32,6 +34,7 @@ export const CLIENT_EVENTS = {
|
|
|
32
34
|
connectionRestored: 'connection-restored',
|
|
33
35
|
forcedDisconnect: 'forced-disconnect',
|
|
34
36
|
rejectUnauthorized: 'reject-unauthorized',
|
|
37
|
+
producePermissionsChanged: 'produce-permissions-changed',
|
|
35
38
|
} as const;
|
|
36
39
|
|
|
37
40
|
export const TRACK_EVENTS = {
|
package/dist/engine/Peer.d.ts
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
|
-
import { ConsumerScoreChangedPayload, ProducerData, ProducerScoreChangedPayload, ConnectionQuality, PayloadOfPublishedMedia, PayloadOfUnpublishedMedia, ChangePreferredLayersPayload, Role, ProducerSetMaxSpatialLayer, PeerInfo, SubscribeOptions, PeerShortData } from '../types/common';
|
|
1
|
+
import { ConsumerScoreChangedPayload, ProducerData, ProducerScoreChangedPayload, ConnectionQuality, PayloadOfPublishedMedia, PayloadOfUnpublishedMedia, ChangePreferredLayersPayload, Role, ProducerSetMaxSpatialLayer, PeerInfo, SubscribeOptions, PeerShortData, PeerGroup, TrackLabel, TrackLabelString } from '../types/common';
|
|
2
2
|
import EnhancedEventEmitter from '../EnhancedEventEmitter';
|
|
3
3
|
import Engine from './index';
|
|
4
|
-
import { CHANNEL_EVENTS, MEDIASOUP_EVENTS, PEER_EVENTS } from '../constants/events';
|
|
4
|
+
import { CHANNEL_EVENTS, CLIENT_EVENTS, MEDIASOUP_EVENTS, PEER_EVENTS } from '../constants/events';
|
|
5
5
|
import PeerProducer from './PeerProducer';
|
|
6
6
|
import PeerConsumer from './PeerConsumer';
|
|
7
7
|
import PeerTrack from './media/tracks/PeerTrack';
|
|
8
|
+
import { ProducePermissionsChangedPayload } from '../types/engine';
|
|
8
9
|
interface PeerConstructor {
|
|
9
10
|
id: string;
|
|
10
11
|
channelIds: string[];
|
|
12
|
+
groups: PeerGroup[];
|
|
13
|
+
producePermissions: TrackLabel[];
|
|
11
14
|
appId: string;
|
|
12
15
|
producers: ProducerData[];
|
|
13
16
|
videoConsumer?: PeerConsumer;
|
|
@@ -38,6 +41,7 @@ export declare type PeerObserverEvents = {
|
|
|
38
41
|
[PEER_EVENTS.trackResumed]: [PeerTrack];
|
|
39
42
|
[PEER_EVENTS.trackPaused]: [PeerTrack];
|
|
40
43
|
[PEER_EVENTS.trackFailed]: [PeerTrack];
|
|
44
|
+
[CLIENT_EVENTS.producePermissionsChanged]: [ProducePermissionsChangedPayload];
|
|
41
45
|
[MEDIASOUP_EVENTS.producerClose]: [ProducerData];
|
|
42
46
|
[MEDIASOUP_EVENTS.newProducer]: [ProducerData];
|
|
43
47
|
[MEDIASOUP_EVENTS.closeConsumer]: [consumerId: string];
|
|
@@ -52,6 +56,8 @@ export declare type PeerObserverEvents = {
|
|
|
52
56
|
declare class Peer {
|
|
53
57
|
id: string;
|
|
54
58
|
channelIds: string[];
|
|
59
|
+
groups: PeerGroup[];
|
|
60
|
+
producePermissions: TrackLabel[];
|
|
55
61
|
appId: string;
|
|
56
62
|
loginDate: Date;
|
|
57
63
|
uid?: string;
|
|
@@ -65,14 +71,19 @@ declare class Peer {
|
|
|
65
71
|
private incomingConnectionQuality;
|
|
66
72
|
private outgoingConnectionQuality;
|
|
67
73
|
private overallConnectionQuality;
|
|
68
|
-
constructor({ id, channelIds, appId, loginDate, producers, engine, appData, uid, role, }: PeerConstructor);
|
|
74
|
+
constructor({ id, channelIds, groups, producePermissions, appId, loginDate, producers, engine, appData, uid, role, }: PeerConstructor);
|
|
69
75
|
get appData(): Record<string, unknown>;
|
|
70
76
|
get observer(): EnhancedEventEmitter<PeerObserverEvents>;
|
|
71
77
|
get isMe(): boolean;
|
|
78
|
+
get isModerator(): boolean;
|
|
79
|
+
get isUser(): boolean;
|
|
72
80
|
get publishedMedia(): PayloadOfPublishedMedia[];
|
|
73
81
|
get shortData(): PeerShortData;
|
|
82
|
+
hasPermission(producePermission: TrackLabel): boolean;
|
|
83
|
+
hasGroup(group: PeerGroup): boolean;
|
|
74
84
|
subscribe({ producerId, muted }: SubscribeOptions): Promise<void>;
|
|
75
85
|
unsubscribe(producerId: string): Promise<void>;
|
|
86
|
+
changeProducePermissions(producePermissions: TrackLabelString[]): Promise<void>;
|
|
76
87
|
getInfo(): Promise<PeerInfo>;
|
|
77
88
|
getProducers(): PeerProducer[];
|
|
78
89
|
private handleNewProducer;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import Peer from '../engine/Peer';
|
|
2
|
+
declare type PeerLogResponse = {
|
|
3
|
+
id: Peer['id'];
|
|
4
|
+
appId: Peer['appId'];
|
|
5
|
+
role: Peer['role'];
|
|
6
|
+
groups: Peer['groups'];
|
|
7
|
+
producePermissions: Peer['producePermissions'];
|
|
8
|
+
};
|
|
9
|
+
export declare function logResponse(peer: Peer): PeerLogResponse;
|
|
10
|
+
export {};
|