@signalwire/js 3.25.0 → 3.26.0-dev.202401232045.8ee0040.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 (95) hide show
  1. package/dist/core/src/BaseComponent.d.ts +2 -2
  2. package/dist/core/src/BaseComponent.d.ts.map +1 -1
  3. package/dist/core/src/BaseJWTSession.d.ts.map +1 -1
  4. package/dist/core/src/BaseSession.d.ts +4 -0
  5. package/dist/core/src/BaseSession.d.ts.map +1 -1
  6. package/dist/core/src/RPCMessages/RPCConnect.d.ts +15 -0
  7. package/dist/core/src/RPCMessages/RPCConnect.d.ts.map +1 -1
  8. package/dist/core/src/RPCMessages/RPCEventAck.d.ts +8 -0
  9. package/dist/core/src/RPCMessages/RPCEventAck.d.ts.map +1 -0
  10. package/dist/core/src/RPCMessages/index.d.ts +1 -0
  11. package/dist/core/src/RPCMessages/index.d.ts.map +1 -1
  12. package/dist/core/src/chat/applyCommonMethods.d.ts +19 -0
  13. package/dist/core/src/chat/applyCommonMethods.d.ts.map +1 -0
  14. package/dist/core/src/chat/index.d.ts +1 -0
  15. package/dist/core/src/chat/index.d.ts.map +1 -1
  16. package/dist/core/src/index.d.ts +1 -0
  17. package/dist/core/src/index.d.ts.map +1 -1
  18. package/dist/core/src/types/callfabric.d.ts +26 -0
  19. package/dist/core/src/types/callfabric.d.ts.map +1 -0
  20. package/dist/core/src/types/chat.d.ts +1 -0
  21. package/dist/core/src/types/chat.d.ts.map +1 -1
  22. package/dist/core/src/types/index.d.ts +1 -0
  23. package/dist/core/src/types/index.d.ts.map +1 -1
  24. package/dist/core/src/types/messaging.d.ts +1 -1
  25. package/dist/core/src/types/messaging.d.ts.map +1 -1
  26. package/dist/core/src/types/unified.d.ts +36 -0
  27. package/dist/core/src/types/unified.d.ts.map +1 -0
  28. package/dist/core/src/types/utils.d.ts +9 -0
  29. package/dist/core/src/types/utils.d.ts.map +1 -1
  30. package/dist/core/src/types/videoLayout.d.ts +5 -0
  31. package/dist/core/src/types/videoLayout.d.ts.map +1 -1
  32. package/dist/core/src/types/videoMember.d.ts +21 -0
  33. package/dist/core/src/types/videoMember.d.ts.map +1 -1
  34. package/dist/core/src/types/videoPlayback.d.ts +13 -1
  35. package/dist/core/src/types/videoPlayback.d.ts.map +1 -1
  36. package/dist/core/src/types/videoRecording.d.ts +12 -0
  37. package/dist/core/src/types/videoRecording.d.ts.map +1 -1
  38. package/dist/core/src/types/videoRoomSession.d.ts +19 -0
  39. package/dist/core/src/types/videoRoomSession.d.ts.map +1 -1
  40. package/dist/core/src/types/videoStream.d.ts +11 -0
  41. package/dist/core/src/types/videoStream.d.ts.map +1 -1
  42. package/dist/core/src/types/voiceCall.d.ts +13 -3
  43. package/dist/core/src/types/voiceCall.d.ts.map +1 -1
  44. package/dist/core/src/utils/interfaces.d.ts +3 -1
  45. package/dist/core/src/utils/interfaces.d.ts.map +1 -1
  46. package/dist/core/src/utils/mapObject.d.ts +7 -0
  47. package/dist/core/src/utils/mapObject.d.ts.map +1 -0
  48. package/dist/core/src/utils/mapObject.test.d.ts +2 -0
  49. package/dist/core/src/utils/mapObject.test.d.ts.map +1 -0
  50. package/dist/index.esm.js +198 -29
  51. package/dist/index.esm.js.map +3 -3
  52. package/dist/index.js +199 -33
  53. package/dist/index.js.map +3 -3
  54. package/dist/index.umd.js +4 -4
  55. package/dist/index.umd.js.map +1 -1
  56. package/dist/js/src/BaseRoomSession.d.ts +9 -9
  57. package/dist/js/src/BaseRoomSession.d.ts.map +1 -1
  58. package/dist/js/src/Client.d.ts +3 -0
  59. package/dist/js/src/Client.d.ts.map +1 -1
  60. package/dist/js/src/JWTSession.d.ts.map +1 -1
  61. package/dist/js/src/RoomSession.d.ts.map +1 -1
  62. package/dist/js/src/chat/index.d.ts +4 -6
  63. package/dist/js/src/chat/index.d.ts.map +1 -1
  64. package/dist/js/src/fabric/HTTPClient.d.ts +18 -3
  65. package/dist/js/src/fabric/HTTPClient.d.ts.map +1 -1
  66. package/dist/js/src/fabric/SignalWire.d.ts +3 -5
  67. package/dist/js/src/fabric/SignalWire.d.ts.map +1 -1
  68. package/dist/js/src/fabric/WSClient.d.ts +7 -2
  69. package/dist/js/src/fabric/WSClient.d.ts.map +1 -1
  70. package/dist/js/src/fabric/unified/workers/mappers/UnifiedEventsMapper.d.ts +4 -0
  71. package/dist/js/src/fabric/unified/workers/mappers/UnifiedEventsMapper.d.ts.map +1 -0
  72. package/dist/js/src/fabric/unified/workers/unifiedEventsWatcher.d.ts +7 -0
  73. package/dist/js/src/fabric/unified/workers/unifiedEventsWatcher.d.ts.map +1 -0
  74. package/dist/js/src/utils/interfaces.d.ts +4 -0
  75. package/dist/js/src/utils/interfaces.d.ts.map +1 -1
  76. package/dist/js/src/video/videoWorker.d.ts.map +1 -1
  77. package/dist/js/tsconfig.build.tsbuildinfo +1 -1
  78. package/dist/webrtc/src/BaseConnection.d.ts.map +1 -1
  79. package/dist/webrtc/src/RTCPeer.d.ts.map +1 -1
  80. package/dist/webrtc/src/utils/helpers.d.ts +10 -0
  81. package/dist/webrtc/src/utils/helpers.d.ts.map +1 -1
  82. package/dist/webrtc/src/utils/interfaces.d.ts +2 -0
  83. package/dist/webrtc/src/utils/interfaces.d.ts.map +1 -1
  84. package/package.json +8 -4
  85. package/src/BaseRoomSession.ts +14 -10
  86. package/src/Client.ts +2 -1
  87. package/src/RoomSession.ts +2 -0
  88. package/src/chat/index.ts +29 -10
  89. package/src/fabric/HTTPClient.ts +34 -7
  90. package/src/fabric/SignalWire.ts +3 -5
  91. package/src/fabric/WSClient.ts +12 -3
  92. package/src/fabric/unified/workers/mappers/UnifiedEventsMapper.ts +61 -0
  93. package/src/fabric/unified/workers/unifiedEventsWatcher.ts +84 -0
  94. package/src/utils/interfaces.ts +5 -0
  95. package/src/video/videoWorker.ts +6 -3
@@ -1 +1 @@
1
- {"version":3,"file":"BaseConnection.d.ts","sourceRoot":"","sources":["../../../../webrtc/src/BaseConnection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseConnection.d.ts","sourceRoot":"","sources":["../../../../webrtc/src/BaseConnection.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RTCPeer.d.ts","sourceRoot":"","sources":["../../../../webrtc/src/RTCPeer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RTCPeer.d.ts","sourceRoot":"","sources":["../../../../webrtc/src/RTCPeer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,14 @@
1
1
  import { ConnectionOptions } from './interfaces';
2
2
  export declare const getUserMedia: (constraints: MediaStreamConstraints) => Promise<MediaStream> | undefined;
3
3
  export declare const getMediaConstraints: (options: ConnectionOptions) => Promise<MediaStreamConstraints>;
4
+ interface FilterIceServersOptions {
5
+ disableUdpIceServers?: boolean;
6
+ }
7
+ export declare const filterIceServers: (servers: RTCIceServer[], options: FilterIceServersOptions) => {
8
+ urls: string | string[];
9
+ credential?: string | undefined;
10
+ credentialType?: "password" | undefined;
11
+ username?: string | undefined;
12
+ }[];
13
+ export {};
4
14
  //# sourceMappingURL=helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../webrtc/src/utils/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAGhD,eAAO,MAAM,YAAY,gBAAiB,sBAAsB,qCAQ/D,CAAA;AAED,eAAO,MAAM,mBAAmB,YACrB,iBAAiB,KACzB,QAAQ,sBAAsB,CA8BhC,CAAA"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../../../webrtc/src/utils/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAGhD,eAAO,MAAM,YAAY,gBAAiB,sBAAsB,qCAQ/D,CAAA;AAED,eAAO,MAAM,mBAAmB,YACrB,iBAAiB,KACzB,QAAQ,sBAAsB,CA8BhC,CAAA;AAED,UAAU,uBAAuB;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAA;CAC/B;AAED,eAAO,MAAM,gBAAgB,YAClB,YAAY,EAAE,WACd,uBAAuB;;;;;GAkBjC,CAAA"}
@@ -18,6 +18,8 @@ export interface ConnectionOptions {
18
18
  remoteStream?: MediaStream;
19
19
  /** List of ICE servers. */
20
20
  iceServers?: RTCIceServer[];
21
+ /** Disable ICE UDP transport policy */
22
+ disableUdpIceServers?: boolean;
21
23
  /** Audio constraints to use when joining the room. Default: `true`. */
22
24
  audio?: MediaStreamConstraints['audio'];
23
25
  /** Video constraints to use when joining the room. Default: `true`. */
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../../webrtc/src/utils/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../../webrtc/src/utils/interfaces.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "SignalWire JS SDK",
4
4
  "author": "SignalWire Team <open.source@signalwire.com>",
5
5
  "license": "MIT",
6
- "version": "3.25.0",
6
+ "version": "3.26.0-dev.202401232045.8ee0040.0",
7
7
  "main": "dist/index.js",
8
8
  "module": "dist/index.esm.js",
9
9
  "unpkg": "dist/index.umd.js",
@@ -39,9 +39,13 @@
39
39
  "prepublishOnly": "npm run build"
40
40
  },
41
41
  "dependencies": {
42
- "@signalwire/core": "3.21.0",
43
- "@signalwire/webrtc": "3.11.0",
44
- "jwt-decode": "^3.1.2"
42
+ "@signalwire/core": "4.0.0-dev.202401232045.8ee0040.1",
43
+ "@signalwire/webrtc": "3.12.0-dev.202401232045.8ee0040.0",
44
+ "jwt-decode": "^3.1.2",
45
+ "object-path": "^0.11.8"
46
+ },
47
+ "devDependencies": {
48
+ "@types/object-path": "^0.11.4"
45
49
  },
46
50
  "types": "dist/js/src/index.d.ts"
47
51
  }
@@ -9,6 +9,7 @@ import {
9
9
  LOCAL_EVENT_PREFIX,
10
10
  validateEventsToSubscribe,
11
11
  EventEmitter,
12
+ SDKWorker,
12
13
  } from '@signalwire/core'
13
14
  import {
14
15
  getDisplayMedia,
@@ -31,6 +32,7 @@ import type {
31
32
  RoomSessionConnectionContract,
32
33
  BaseRoomSessionJoinParams,
33
34
  LocalOverlay,
35
+ AudioElement,
34
36
  } from './utils/interfaces'
35
37
  import { SCREENSHARE_AUDIO_CONSTRAINTS } from './utils/constants'
36
38
  import { audioSetSpeakerAction } from './features/actions'
@@ -65,6 +67,12 @@ export interface BaseRoomSession<T>
65
67
  leave(): Promise<void>
66
68
  }
67
69
 
70
+ interface BaseRoomSessionOptions
71
+ extends BaseConnection<RoomSessionObjectEvents> {
72
+ mirrorLocalVideoOverlay: boolean
73
+ eventsWatcher?: SDKWorker<RoomSessionConnection>
74
+ }
75
+
68
76
  export class RoomSessionConnection
69
77
  extends BaseConnection<RoomSessionObjectEvents>
70
78
  implements BaseRoomInterface, RoomSessionConnectionContract
@@ -72,23 +80,19 @@ export class RoomSessionConnection
72
80
  private _screenShareList = new Set<RoomSessionScreenShare>()
73
81
  private _deviceList = new Set<RoomSessionDevice>()
74
82
  private _mirrored: LocalOverlay['mirrored']
75
- private _audioEl:
76
- | HTMLAudioElement & {
77
- sinkId?: string
78
- setSinkId?: (id: string) => Promise<void>
79
- }
83
+ private _audioEl: AudioElement
80
84
 
81
- constructor(
82
- options: BaseConnection<RoomSessionObjectEvents> & {
83
- mirrorLocalVideoOverlay: boolean
84
- }
85
- ) {
85
+ constructor(options: BaseRoomSessionOptions) {
86
86
  super(options)
87
87
  this._mirrored = options.mirrorLocalVideoOverlay
88
88
 
89
89
  this.runWorker('videoWorker', {
90
90
  worker: workers.videoWorker,
91
91
  })
92
+
93
+ if (options.eventsWatcher) {
94
+ this.runWorker('eventsWatcher', { worker: options.eventsWatcher })
95
+ }
92
96
  }
93
97
 
94
98
  get screenShareList() {
package/src/Client.ts CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  Chat as ChatNamespace,
7
7
  PubSub as PubSubNamespace,
8
8
  } from '@signalwire/core'
9
- import type { CustomSaga } from '@signalwire/core'
9
+ import type { CustomSaga, SDKWorker } from '@signalwire/core'
10
10
  import { ConnectionOptions } from '@signalwire/webrtc'
11
11
  import {
12
12
  makeVideoElementSaga,
@@ -41,6 +41,7 @@ export interface MakeRoomOptions extends ConnectionOptions {
41
41
  stopMicrophoneWhileMuted?: boolean
42
42
  /** Local media stream to override the local video and audio stream tracks */
43
43
  localStream?: MediaStream
44
+ eventsWatcher?: SDKWorker<RoomSessionConnection>
44
45
  }
45
46
 
46
47
  export class ClientAPI<
@@ -111,6 +111,7 @@ export const RoomSession = function (roomOptions: RoomSessionOptions) {
111
111
  localStream,
112
112
  watchMediaPackets,
113
113
  watchMediaPacketsTimeout,
114
+ disableUdpIceServers = false,
114
115
  ...userOptions
115
116
  } = roomOptions
116
117
 
@@ -176,6 +177,7 @@ export const RoomSession = function (roomOptions: RoomSessionOptions) {
176
177
  watchMediaPackets,
177
178
  watchMediaPacketsTimeout,
178
179
  prevCallId: reattachManager.getPrevCallId(),
180
+ disableUdpIceServers,
179
181
  })
180
182
 
181
183
  // WebRTC connection left the room.
package/src/chat/index.ts CHANGED
@@ -1,12 +1,31 @@
1
- import { Chat } from '@signalwire/core'
2
- import { PagingCursor } from '../utils/interfaces'
3
- import ChatMember = Chat.ChatMember
4
- import ChatMessage = Chat.ChatMessage
1
+ export { Client, ClientOptions, ClientApiEvents } from './Client'
5
2
 
6
- export * from './Client'
3
+ export { ChatMember, ChatMessage } from '@signalwire/core'
7
4
 
8
- export {
9
- ChatMember,
10
- ChatMessage,
11
- PagingCursor
12
- }
5
+ export type { PagingCursor } from '../utils/interfaces'
6
+
7
+ export type {
8
+ ChatAction,
9
+ ChatChannel,
10
+ ChatChannelMessageEvent,
11
+ ChatChannelMessageEventParams,
12
+ ChatChannelState,
13
+ ChatEvent,
14
+ ChatGetMembersParams,
15
+ ChatGetMemberStateParams,
16
+ ChatGetMessagesParams,
17
+ ChatMemberContract,
18
+ ChatMemberEntity,
19
+ ChatMemberJoinedEvent,
20
+ ChatMemberJoinedEventParams,
21
+ ChatMemberLeftEvent,
22
+ ChatMemberLeftEventParams,
23
+ ChatMemberUpdatedEvent,
24
+ ChatMemberUpdatedEventParams,
25
+ ChatMessageContract,
26
+ ChatMessageEntity,
27
+ ChatSetMemberStateParams,
28
+ InternalChatMemberEntity,
29
+ InternalChatMessageEntity,
30
+ PaginationCursor,
31
+ } from '@signalwire/core'
@@ -1,4 +1,8 @@
1
- import { type UserOptions } from '@signalwire/core'
1
+ import {
2
+ FetchAddressResponse,
3
+ GetAddressesOptions,
4
+ type UserOptions,
5
+ } from '@signalwire/core'
2
6
  import { createHttpClient } from './createHttpClient'
3
7
 
4
8
  interface RegisterDeviceParams {
@@ -27,16 +31,33 @@ export class HTTPClient {
27
31
  return `fabric.${host.split('.').splice(1).join('.')}`
28
32
  }
29
33
 
30
- public async getAddresses() {
31
- const path = '/addresses' as const
32
- const { body } = await this.httpClient<any>(path)
34
+ public async getAddresses(options?: GetAddressesOptions) {
35
+ const { type, displayName } = options || {}
36
+
37
+ let path = '/addresses' as const
38
+
39
+ if (type || displayName) {
40
+ const queryParams = new URLSearchParams()
41
+
42
+ if (type) {
43
+ queryParams.append('type', type)
44
+ }
45
+
46
+ if (displayName) {
47
+ queryParams.append('display_name', displayName)
48
+ }
49
+
50
+ path += `?${queryParams.toString()}`
51
+ }
52
+
53
+ const { body } = await this.httpClient<FetchAddressResponse>(path)
54
+
33
55
  const anotherPage = async (url: string) => {
34
- const { search } = new URL(url)
35
- const { body } = await this.httpClient<any>(`${path}${search}`)
56
+ const { body } = await this.httpClient<FetchAddressResponse>(url)
36
57
  return buildResult(body)
37
58
  }
38
59
 
39
- const buildResult = (body: any) => {
60
+ const buildResult = (body: FetchAddressResponse) => {
40
61
  return {
41
62
  addresses: body.data,
42
63
  nextPage: async () => {
@@ -47,6 +68,12 @@ export class HTTPClient {
47
68
  const { prev } = body.links
48
69
  return prev ? anotherPage(prev) : undefined
49
70
  },
71
+ firstPage: async () => {
72
+ const { first } = body.links
73
+ return first ? anotherPage(first) : undefined
74
+ },
75
+ hasNext: Boolean(body.links.next),
76
+ hasPrev: Boolean(body.links.prev),
50
77
  }
51
78
  }
52
79
 
@@ -1,12 +1,10 @@
1
1
  import { type UserOptions } from '@signalwire/core'
2
2
  import { HTTPClient } from './HTTPClient'
3
- import { WSClient } from './WSClient'
3
+ import { WSClient, WSClientOptions } from './WSClient'
4
4
 
5
- interface SignalWireOptions extends UserOptions {
6
- rootElement?: HTMLElement
7
- }
5
+ export interface SignalWireOptions extends UserOptions, WSClientOptions {}
8
6
 
9
- interface SignalWireContract {
7
+ export interface SignalWireContract {
10
8
  httpHost: HTTPClient['httpHost']
11
9
  getAddresses: HTTPClient['getAddresses']
12
10
  registerDevice: HTTPClient['registerDevice']
@@ -1,6 +1,9 @@
1
1
  import { type UserOptions, getLogger, VertoSubscribe } from '@signalwire/core'
2
2
  import { createClient } from '../createClient'
3
+ import { Client } from '../Client'
4
+ import { RoomSession } from '../RoomSession'
3
5
  import { WSClientWorker } from './WSClientWorker'
6
+ import { unifiedEventsWatcher } from './unified/workers/unifiedEventsWatcher'
4
7
 
5
8
  interface PushNotification {
6
9
  encryption_type: 'aes_256_gcm'
@@ -17,22 +20,26 @@ interface PushNotification {
17
20
  decrypted: Record<string, any>
18
21
  }
19
22
 
20
- interface WSClientOptions extends UserOptions {
23
+ export interface WSClientOptions extends UserOptions {
24
+ /** HTML element in which to display the video stream */
21
25
  rootElement?: HTMLElement
26
+ /** Disable ICE UDP transport policy */
27
+ disableUdpIceServers?: boolean
22
28
  }
23
29
 
24
30
  export class WSClient {
25
- private wsClient: ReturnType<typeof createClient>
31
+ private wsClient: Client<RoomSession>
26
32
  private logger = getLogger()
27
33
 
28
34
  constructor(public options: WSClientOptions) {
29
- this.wsClient = createClient({
35
+ this.wsClient = createClient<RoomSession>({
30
36
  host: this.options.host,
31
37
  token: this.options.token,
32
38
  debug: {
33
39
  logWsTraffic: true,
34
40
  },
35
41
  logLevel: 'debug',
42
+ unifiedEventing: true,
36
43
  })
37
44
  }
38
45
 
@@ -85,6 +92,8 @@ export class WSClient {
85
92
  watchMediaPackets: false,
86
93
  // watchMediaPacketsTimeout:,
87
94
  nodeId: params.nodeId,
95
+ eventsWatcher: unifiedEventsWatcher,
96
+ disableUdpIceServers: this.options.disableUdpIceServers || false,
88
97
  })
89
98
 
90
99
  // WebRTC connection left the room.
@@ -0,0 +1,61 @@
1
+ import { PubSubAction } from '@signalwire/core'
2
+ import {
3
+ MappableObject,
4
+ mapObject,
5
+ } from 'packages/core/src/utils/mapObject'
6
+
7
+ const EVENT_MAPPINGS: Record<string, string[]> = {
8
+ 'call.state': [
9
+ 'call.state.[call_state]',
10
+ 'video.room.[call_state]',
11
+ 'video.room.[call_state(created:started)]',
12
+ ],
13
+ 'call.play': ['call.play.[state]'],
14
+ 'call.collect': ['call.collect.[collect_state]'],
15
+ 'call.connect': [
16
+ 'call.connect.[connect_state]',
17
+ 'video.room.[connect_state(connected:subscribed)]',
18
+ ],
19
+ 'call.join': ['video.room.subscribed{"callID":"room_id"}'],
20
+ 'call.audience_count': ['video.room.audience_count'],
21
+ 'call.denoise': ['call.denoise'],
22
+ 'call.detect': ['call.detect.[detect_state]'],
23
+ 'call.dial': ['call.dial.[dial_state]'],
24
+ 'call.send_digits': ['call.send_digits', 'video.room.send_digits'], //TODO double check
25
+ 'call.refer': ['calling.call.refer'],
26
+ 'call.received': ['call.received'],
27
+ 'call.fax': ['call.fax.[fax_state]'],
28
+ 'call.hold': ['call.hold.[fax_state]'],
29
+ 'call.prompt': ['call.prompt.[prompt_state]'],
30
+ 'call.started': ['video.room.started'],
31
+ 'call.subscribed': ['video.room.subscribed'],
32
+ 'call.updated': ['video.room.updated'],
33
+ 'call.ended': ['video.room.ended'],
34
+ 'member.joined': ['video.member.joined'],
35
+ 'member.left': ['video.member.left'],
36
+ 'member.updated': ['video.member.updated'],
37
+ 'member.talking': ['video.member.talking'],
38
+ 'member.promoted': ['video.member.promoted'],
39
+ 'member.demoted': ['video.member.demoted'],
40
+ 'layout.changed': ['video.layout.changed'],
41
+ 'call.recording': ['video.room.recording.[recording_state]'],
42
+ 'call.playback': ['video.room.playback.[playback_state]'],
43
+ 'call.outbound_stream.started': ['video.stream.started'],
44
+ 'call.outbound_stream.ended': ['video.stream.ended'],
45
+ }
46
+
47
+ export function fromUnifiedEvent(action: MappableObject): PubSubAction[] {
48
+ const { type } = action
49
+
50
+ if (!Object.keys(EVENT_MAPPINGS).includes(type)) {
51
+ return []
52
+ }
53
+
54
+ const mapDefinitions = EVENT_MAPPINGS[type]
55
+ const allNewActions = mapDefinitions.map((eventTemplate) =>
56
+ mapObject(eventTemplate, action)
57
+ )
58
+
59
+ //@ts-expect-error
60
+ return allNewActions.filter((obj?) => !!obj)
61
+ }
@@ -0,0 +1,84 @@
1
+ import {
2
+ MapToPubSubShape,
3
+ SDKActions,
4
+ SDKWorker,
5
+ SagaIterator,
6
+ VideoAPIEventParams,
7
+ getLogger,
8
+ sagaEffects,
9
+ SDKWorkerParams,
10
+ SwEventChannel,
11
+ PubSubAction,
12
+ } from '@signalwire/core'
13
+ import { RoomSessionConnection } from '../../../BaseRoomSession'
14
+ import { fromUnifiedEvent } from './mappers/UnifiedEventsMapper'
15
+ import { isMappableObject } from 'packages/core/src/utils/mapObject'
16
+
17
+ export type VideoWorkerParams<T> = SDKWorkerParams<RoomSessionConnection> & {
18
+ action: T
19
+ }
20
+
21
+ function* eventMapperWorker({
22
+ action,
23
+ swEventChannel,
24
+ }: {
25
+ action: PubSubAction
26
+ swEventChannel: SwEventChannel
27
+ }) {
28
+ if (isMappableObject(action)) {
29
+ const mappedActions = fromUnifiedEvent(action)
30
+ for (const mappedAction of mappedActions) {
31
+ // @ts-expect-error
32
+ yield sagaEffects.put(swEventChannel, mappedAction)
33
+ }
34
+ }
35
+ }
36
+
37
+ function* debugEmitter({
38
+ action,
39
+ instance,
40
+ }: {
41
+ action: PubSubAction
42
+ instance: RoomSessionConnection
43
+ }) {
44
+ const { type, payload } = action
45
+ // @ts-expect-error
46
+ yield instance.emit(type, payload)
47
+ }
48
+
49
+ export const unifiedEventsWatcher: SDKWorker<RoomSessionConnection> =
50
+ function* (options): SagaIterator {
51
+ const {
52
+ channels: { swEventChannel },
53
+ instance,
54
+ } = options
55
+
56
+ getLogger().debug('unifiedEventsWatcher started')
57
+
58
+ function* worker(action: any) {
59
+ yield sagaEffects.fork(eventMapperWorker, {
60
+ ...options,
61
+ action,
62
+ swEventChannel,
63
+ })
64
+
65
+ // TBD: Do we even need it?
66
+ yield sagaEffects.fork(debugEmitter, {
67
+ ...options,
68
+ action,
69
+ instance,
70
+ })
71
+ }
72
+
73
+ const isUnifiedEvent = (action: SDKActions) =>
74
+ action.type.startsWith('member') || action.type.startsWith('layout')
75
+
76
+ while (true) {
77
+ const action: MapToPubSubShape<VideoAPIEventParams> =
78
+ yield sagaEffects.take(swEventChannel, isUnifiedEvent)
79
+ getLogger().debug('UnifiedEventsWatcher action:', action)
80
+ yield sagaEffects.fork(worker, action)
81
+ }
82
+
83
+ getLogger().trace('unifiedEventsWatcher ended')
84
+ }
@@ -461,3 +461,8 @@ export type PagingCursor =
461
461
  before?: never
462
462
  after: string
463
463
  }
464
+
465
+ export interface AudioElement extends HTMLAudioElement {
466
+ sinkId?: string
467
+ setSinkId?: (id: string) => Promise<void>
468
+ }
@@ -80,14 +80,17 @@ export const videoWorker: SDKWorker<RoomSessionConnection> = function* (
80
80
  break
81
81
  }
82
82
 
83
- roomSession.emit(stripNamespacePrefix(type) as VideoAPIEventNames, payload)
83
+ const event = stripNamespacePrefix(type, 'video') as VideoAPIEventNames
84
+ roomSession.emit(event, payload)
84
85
  }
85
86
 
86
- const isVideoEvent = (action: SDKActions) => action.type.startsWith('video.')
87
+ const isVideoOrCallEvent = (action: SDKActions) => {
88
+ return action.type.startsWith('video.') || action.type.startsWith('call.')
89
+ }
87
90
 
88
91
  while (true) {
89
92
  const action: MapToPubSubShape<VideoAPIEventParams> =
90
- yield sagaEffects.take(swEventChannel, isVideoEvent)
93
+ yield sagaEffects.take(swEventChannel, isVideoOrCallEvent)
91
94
 
92
95
  yield sagaEffects.fork(worker, action)
93
96
  }