All notable changes to this project will be documented in this file.
This project adheres to Semantic Versioning.
-
#956
e16ec479
Thanks @iAmmar7! - Introduce Conversation API with Conversation Subscriber -
#1001
968d226b
Thanks @ayeminag! - - API to fetch address by id and tests -
#977
19281d4a
Thanks @jpsantosbh! - NEW - by default the SDK will use the full width for the video call in both orientations. -
#979
8667fdcc
Thanks @jpsantosbh! - Changed API for handling incoming call over WebSocket and PushNotification -
#979
8667fdcc
Thanks @jpsantosbh! - Changed dial() and accept() functions now can receive a rootElement to render the call video -
#995
c370fec8
Thanks @iAmmar7! - CF SDK: Fetch subscriber info function -
#973
c8deacef
Thanks @iAmmar7! - Online/offline registeration for WebRTC endpoint -
#1052
36423414
Thanks @iAmmar7! - Introduce the standalonebuildVideoElement
method to render the video element -
#968
82bdfb9c
Thanks @jpsantosbh! - NEW emitsmember.joined
events for all members in acall.joined
event -
#999
6d71362b
Thanks @ayeminag! - -client.conversations.sendMessage()
conversation.sendMessage()
API for conversation object returned fromgetConversations()
APIconversation.getMessages()
API for conversation object returned fromgetConversations()
- added e2e tests for conversation (room)
-
#1012
45991e4c
Thanks @iAmmar7! - CF SDK: Cleanup unified eventing -
#988
78f46be4
Thanks @iAmmar7! - CF SDK: Allow user pass video audio constraints -
#1054
dd0c693f
Thanks @iAmmar7! - CF SDK: Fix layout and member list actions -
#982
ded3dc7a
Thanks @iAmmar7! - CF SDK: OAuth refresh token -
#996
006a13e3
Thanks @iAmmar7! - CF SDK: Expose conversation event params -
#1047
6135cf54
Thanks @iAmmar7! - CF SDK: Fix dial method return type -
#978
0f4f2b3c
Thanks @iAmmar7! - Introduce pageSize param for Conversation APIs -
#966
45dbb9dd
Thanks @jpsantosbh! - Only emits self member updates with the original self.member_id. That is to prevent the application to be exposed to internal self member versions on each call segment. -
#1058
1ff74249
Thanks @ayeminag! - - Parseto
parameter indial
request to detectchannel=audio|video
and negotiate media accordingly.- Added e2e test
-
#1030
254016f3
Thanks @iAmmar7! - Destroy the workers after a successful verto.bye -
#1002
55b8c51a
Thanks @jpsantosbh! - FIXED connects to before sending the online request -
#1003
3a37e0a9
Thanks @ayeminag! - - fix Conversation.test.ts -
#1046
7a5b9d1d
Thanks @jpsantosbh! - FIX return types of theonline
,offline
, anddial
methods FIX handling of the optionalrootElement
param -
#992
3d20672b
Thanks @iAmmar7! - Fix room session id usage in room worker -
#983
3d6a4fbe
Thanks @iAmmar7! - Introduce CallSegment and CallFabric worker -
#960
184c8777
Thanks @iAmmar7! - Introduce member instance in CF SDK -
#1055
e76c89c7
Thanks @iAmmar7! - Fix the outbound audio/video streams -
#1050
229320b3
Thanks @iAmmar7! - Introducing Call Fabric client -
#1017
d215ef5d
Thanks @iAmmar7! - CF SDK: Improve the action invoke strategy
- Updated dependencies [
45991e4c
,e16ec479
,968d226b
,ded3dc7a
,0f4f2b3c
,254016f3
,c370fec8
,3d20672b
,3d6a4fbe
,184c8777
,c8deacef
,e76c89c7
,229320b3
,d215ef5d
,a08512a3
,6d71362b
]:- @signalwire/core@4.1.0
- @signalwire/webrtc@3.12.1
-
#932
6b0f8227
Thanks @iAmmar7! - Allow users to pass the optionaldisableUdpIceServers
boolean flag with a value oftrue
to remove the URLs of UDP transport ICE servers.Default value for
disableUdpIceServers
isfalse
Call Fabric SDK:
import { SignalWire } from '@signalwire/js' const client = await SignalWire({ host: ..., token: ..., rootElement: ..., disableUdpIceServers: true|false, // default is false })
Video SDK:
import { Video } from '@signalwire/js' const roomSession = new Video.RoomSession({ host: ..., token: ..., rootElement: ..., disableUdpIceServers: true|false, // default is false })
-
#948
6cb639bf
Thanks @iAmmar7! - Allow user to pass filters togetAddress
functionconst addressData = await client.getAddresses({ type: 'room', displayName: 'domain app', })
-
#961
b6e30de2
Thanks @jpsantosbh! - FIXED HTTPClient should use the ch header from the JWT token for the host domain -
Updated dependencies [
03f01c36
,b39b82fe
,6cb639bf
,b39b82fe
,b39b82fe
,d93c3af4
,b39b82fe
,6b0f8227
,b39b82fe
,b39b82fe
]:- @signalwire/core@4.0.0
- @signalwire/webrtc@3.12.0
- #873
6c9d2aa5
Thanks @iAmmar7! - Introduce the hand raise API for the Video SDKs (browser and realtime-api)
- Updated dependencies [
d564c379
,4ee7b6f8
,6c9d2aa5
]:- @signalwire/core@3.21.0
- @signalwire/webrtc@3.11.0
- Updated dependencies [
e5db7cab
,bcced8ae
,2131bb41
]:- @signalwire/core@3.20.0
- @signalwire/webrtc@3.10.4
-
#853
5e1ff117
- Enhance shared function between realtime and browser SDK -
#853
5e1ff117
- Introduce the session emitter and eliminate the global emitter -
#853
5e1ff117
- Attach listeners without the namespace prefix -
#861
4f42179e
- Addobject-fit: cover
to the local video overlay element -
#853
5e1ff117
- Cleanup the SDK by removing applyEmitterTransform -
#853
5e1ff117
- Remove event emitter transform pipeline from browser SDK -
#865
6c435be2
- Exposedestroy
event for inbound calls in Call Fabric to handle cases where the caller cancel the dial before the callee answers.
- Updated dependencies [
5e1ff117
,5e1ff117
,1086a1b0
,be17e614
,5e1ff117
,5e1ff117
,5e1ff117
,5e1ff117
,fb45dce7
,2a9b88d9
,5e1ff117
,5e1ff117
,6c435be2
,e5db0ef9
]:- @signalwire/webrtc@3.10.3
- @signalwire/core@3.19.0
- Updated dependencies [
bb50b2fb
]:- @signalwire/core@3.18.3
- @signalwire/webrtc@3.10.2
- Updated dependencies [
af7072b7
]:- @signalwire/core@3.18.2
- @signalwire/webrtc@3.10.1
- Updated dependencies [
81beb29a
,a7ae5448
,2a2049ba
]:- @signalwire/core@3.18.1
- @signalwire/webrtc@3.10.0
- Updated dependencies [
b44bd6fb
,b9283059
,6a35f0a3
,65b0eea5
,f03e60a3
]:- @signalwire/core@3.18.0
- @signalwire/webrtc@3.9.0
- Updated dependencies [
f814685b
,c72e7ce4
,e8141c0e
,4e1116b6
]:- @signalwire/webrtc@3.8.0
- @signalwire/core@3.17.0
- Updated dependencies [
602921a6
,602921a6
,9fd8f9cb
,aaa07479
,602921a6
,f3711f17
,602921a6
,602921a6
,602921a6
]:- @signalwire/core@3.16.0
- @signalwire/webrtc@3.7.0
- Updated dependencies [
aa31e1a0
,4e8e5b0d
,9fb4e5f4
]:- @signalwire/core@3.15.0
- @signalwire/webrtc@3.6.3
- #767
a1321a63
- Fix missing roomSessionId/memberId on screenShare/additionalDevice objects and expose those variables right after.join()
.
- Updated dependencies [
e299b048
,e299b048
,a491dbff
]:- @signalwire/core@3.14.1
- @signalwire/webrtc@3.6.2
-
#661
ef18e7ef
- Internal changes to keep the member_id stable across promote/demote. -
#738
ba39c819
- Remove executeActionWatcher and related functions -
#664
bc56cc42
- Expose theroom.audience_count
event on the RoomSession
- Updated dependencies [
ef18e7ef
,bc56cc42
,ba39c819
,bc56cc42
,bc56cc42
,ba39c819
,688306f4
,bc56cc42
,ba39c819
,0cf1c920
,bc56cc42
,bc56cc42
,bc56cc42
,bc56cc42
,bb6ecbf4
,ba39c819
]:- @signalwire/webrtc@3.6.1
- @signalwire/core@3.14.0
-
#729
41482813
- Expose new events on the RoomSession to detect the media state:media.connected
,media.disconnected
andmedia.reconnecting
. -
#747
95325ec9
- Changes to support connecting using SAT and join a video room.
-
#569
0bdda948
- Internal changes to persist and useauthorization.state
events. -
#697
9349ba45
- Allow override for connection host from JWT.
- Updated dependencies [
41482813
,a937768a
,90d9776a
,5b002eab
,bbb9544c
,45536d5f
,95325ec9
,bb216980
,9ad158b9
,0bdda948
,e1e1e336
,55a309f8
,4728ee55
,e2c475a7
]:- @signalwire/webrtc@3.6.0
- @signalwire/core@3.13.0
- #686
c82e6576
- Review internals to always reconnect the SDKs expect for when the user disconnects the clients.
- Updated dependencies [
583ef730
,bf68ad40
,3e7ce646
,c82e6576
,e26f84e5
,a32413d8
,aa5a469c
]:- @signalwire/core@3.12.2
- @signalwire/webrtc@3.5.9
- #631
c00b343ed48305c12fcc599e46e76f2116ab2706
- Enhance.join()
signature with an optional argument to control the media to send and receive.
- #631
c00b343ed48305c12fcc599e46e76f2116ab2706
- Fix audio/video constraints override from constructor to keep backward compatibility.
- Updated dependencies [
64e13ec6
,b765449b
,021d9b83
,e3453977
,be8b8dea
]:- @signalwire/webrtc@3.5.8
- @signalwire/core@3.12.1
- #641
569213c8
- Fix video render for RoomSession in certain aspect ratio related to the rootElement.
- Updated dependencies [
1d2fd5f8
,569213c8
,b9fb5deb
,6cf01e1c
,c00b343e
,577e81d3
,0e7bffdd
,f1102bb6
,5c3abab6
,577e81d3
,39ff2060
,c00b343e
,c76d6387
]:- @signalwire/webrtc@3.5.7
- @signalwire/core@3.12.0
- #619
d7ce34d3
- Add methods to manage a RoomSession and Membermeta
:updateMeta
,deleteMeta
,setMemberMeta
,updateMemberMeta
,deleteMemberMeta
.
-
#610
eb1c3fe9
- Updated interfaces to match the spec, updateRoomSession.getRecordings
andRoomSession.getPlaybacks
to return stateful objects, deprecatedRoomSession.members
andRoomSession.recordings
in favour of their corresponding getters. -
#589
fa62d67f
- Internal changes to update media_allowed, video_allowed and audio_allowed values for joinAudience.
- #609
24e956a2
- Change logic for handling the auto managedrootElement
so we don't mutate its styles.
- Updated dependencies [
3d202275
,9a6936e6
,fa62d67f
,819a6772
,d8cf078c
,d7ce34d3
,5402ffcf
,2f909c9e
,eb1c3fe9
,7b196107
,7bdd7ab0
,81503784
,999b2526
,819a6772
,4e2284d6
]:- @signalwire/core@3.11.0
- @signalwire/webrtc@3.5.6
- Updated dependencies [
6b4ad46d
,6bc89d81
,6d1c26ea
]:- @signalwire/webrtc@3.5.5
- @signalwire/core@3.10.1
- Updated dependencies [
8ec914b6
,9e1bf9d8
,4300716e
,9eb9851f
,bbc21e43
,d308daf8
]:- @signalwire/core@3.10.0
- @signalwire/webrtc@3.5.4
- #579
3cd2bab2
- Fix a possible condition where the localVideo overlay shows up after a video mute and video unmute in sequence without any layout changes in between.
- Updated dependencies [
e8a54a63
,4e35e0ac
,43b29191
,f15032f1
,14c08b89
,b168fc4f
,f15032f1
]:- @signalwire/core@3.9.1
- @signalwire/webrtc@3.5.3
- Updated dependencies [
02d97ded
]:- @signalwire/core@3.9.0
- @signalwire/webrtc@3.5.2
-
#547
b0f9aa5f
- Add ability to read a custom host from the JWT. -
#546
fc4689df
- Internal changes to migrate fromsetWorker
/attachWorker
torunWorkers
and frompayload
toinitialState
.
- #541
4ad09354
- Try to force a browser repaint to move the local video overlay in the correct position
- #554
1b95b93b
- Fix issue with local streams for when the user joined with a token withjoin_audio_muted
orjoin_video_muted
. Update typings.
- Updated dependencies [
875b2bb8
,fc4689df
,78d1aea6
,1b95b93b
]:- @signalwire/core@3.8.1
- @signalwire/webrtc@3.5.1
-
#501
5c96bf85
- Expose all the active recordings on theroom.joined
event. -
#509
5cacd751
- Force video elements to play when paused by UA.
- Updated dependencies [
f89b8848
,c6beec6d
,ad62b818
,c6beec6d
,a0b7b4d0
,c6beec6d
,0b98a9e4
,f69ef584
,c02b694e
,c6beec6d
,2c3145b7
,c6beec6d
,5c96bf85
,c6beec6d
,c6beec6d
,05bb3c31
,c6beec6d
,12c64580
,c6beec6d
,24ef812a
,d42824a0
,cf845603
,7e64fb28
,76e92dd9
,c6beec6d
,b36970ac
,c6beec6d
,c6beec6d
,c6beec6d
,c6beec6d
,b6d5bb3b
,61838b07
,6ebf3f64
,c6beec6d
,01c33de9
,c6beec6d
,e09afd5b
,4c0909dd
]:- @signalwire/core@3.8.0
- @signalwire/webrtc@3.5.0
- Updated dependencies [
a9abe1d5
]:- @signalwire/core@3.7.1
- @signalwire/webrtc@3.4.2
- Updated dependencies [
8f203450
,c487d29b
,b1b022a4
,2e4a59cd
,46600032
,4a918d56
,058e9a0c
,da4ef026
,2c8fc597
,563a31e5
,1944348f
,4d7bcc30
,a8036381
]:- @signalwire/core@3.7.0
- @signalwire/webrtc@3.4.1
-
#426
edc573f2
- Expose theremoveAllListeners
method for all the components. -
#447
37567d47
- ExposeRoomSessionOptions
andVideoMemberListUpdatedParams
types.
- #432
3434f3af
- Removed an obsolete console warning which was triggered for the previously experimentalChat
feature.
- Updated dependencies [
dabaafe9
,0edfa63b
,bc0134e9
,46600032
,d168a035
,f1fca94d
,edc573f2
]:- @signalwire/webrtc@3.4.0
- @signalwire/core@3.6.0
-
#398
da526347
- Expose Chat methods:getMembers
,getMessages
,setState
andgetState
-
#400
3f851e2a
- Expose chat member events:member.joined
,member.updated
andmember.left
-
#419
c33a4565
- Expose RoomSessionmemberList.updated
event to keep track of the whole member list. -
#424
743168df
- ExposeupdateToken
to theChat.Client
to allow renew tokens for a chat session.
- Updated dependencies [
da526347
,3f851e2a
,6d234ccc
,bbbff2c6
,1bda6272
,c557e4e5
,f6290de0
,603d4497
,da5ddf5a
,d2ef4270
,7c688bb5
,6d94624b
,743168df
,c33a4565
,d1174ec8
]:- @signalwire/core@3.5.0
- @signalwire/webrtc@3.3.1
- Updated dependencies [
03e5d42
,da52634
,3f851e2
,62c25d8
,ed04e25
,03e5d42
,576b667
]:- @signalwire/core@3.4.1
- @signalwire/webrtc@3.3.0
-
#375
2b1e970
- Hide the local video overlay element when the user's video is not in the layout. -
#379
dd41aba
-RoomSession
: Improve TypeScript signature for member methods with optional properties. -
#370
ba0647b
- Add prefix to the DOM elements created by the SDK to make them unique.
- Updated dependencies [
64997a0
,b7bdfcb
,ff82436
,dd41aba
,f1ae2c9
,d2e51b8
,f436d5f
,104256e
,4606f19
,1fb1440
,ec2ca1d
,499f62a
,f494e05
,94b7363
]:- @signalwire/core@3.4.0
- @signalwire/webrtc@3.2.0
-
#327
fa40510
- AddedsetHideVideoMuted
to RoomSession interface. -
#343
9df995b
- Included a complete method documentation for the SDK
-
#351
0e22ac8
- Always attach the audio track regardless therootElement
option. -
#327
fa40510
- Improved internal typings for the Video namespace.
-
#346
ea0cef3
- Fix possible race condition on RoomSessionjoin()
method. -
#337
ccc0d35
- Fix a possible race condition when applying the localVideo overlay.
- Updated dependencies [
2360ef7
,a1bc095
,bae6985
,fa40510
]:- @signalwire/webrtc@3.1.6
- @signalwire/core@3.3.0
- #297
2675e5e
- Add support for the Playback APIs:roomSession.play()
and theRoomSessionPlayback
object to control it.
- #318
cc5fd62
- DeprecatedRoom
,RoomDevice
,RoomScreenShare
andcreateScreenShareObject()
in favour ofRoomSession
,RoomSessionDevice
,RoomSessionScreenShare
andstartScreenShare()
respectively.
- #313
5c35910
- IntroduceRoomSession
as a new primitive for connecting to a Room. MarkcreateRoomObject()
andjoinRoom()
as deprecated.
- #312
feb23ba
- Removeheight: 100%
on the localVideo overlay to avoid positioning issues if the wrapper has a fixed height.
- #302
2ac7f6d
- AddedsetInputVolume
/setOutputVolume
and markedsetMicrophoneVolume
/setSpeakerVolume
as deprecated.
- #316
ab4ff5a
- UserootElement
in the newRoomSession
constructor to handle the local video overlay.
- Updated dependencies [
3af0ea6
,72eb91b
,2ac7f6d
,cec54bd
,febb842
,b60e9fc
,da9909e
,4d21716
,49b4aa9
,685e0a2
]:- @signalwire/core@3.1.4
- @signalwire/webrtc@3.1.4
-
#290
a780d6d
- Split event handlers for member from member updated events so each type of event gets the proper instance as a handler param.
- Updated dependencies [
f35a8e0
,a780d6d
,f35a8e0
,820c6d1
,968bda7
]:- @signalwire/core@3.1.3
- @signalwire/webrtc@3.1.3
-
#261
9dd7dbb
- ExposestartRecording()
method to recording a RoomSession. It returns a RoomSessionRecording object so it can be paused, resumed and stopped. -
#273
249facf
- Addedmember.talking.started
,member.talking.ended
events and deprecatedmember.talking.start
andmember.talking.stop
for consistency with other event names.
- Updated dependencies [
a0f2ac7
,6f58367
,f37333a
,9dd7dbb
,e6233cc
,9dd7dbb
,249facf
,5b4e57d
,7380582
]:- @signalwire/core@3.1.2
- @signalwire/webrtc@3.1.2
- Updated dependencies [
97dacbb
,d399bb4
,e45c52c
,1daa61f
,b7299f0
,c270247
]:- @signalwire/core@3.1.1
- @signalwire/webrtc@3.1.1
- #236
b967c89
- Applyaudio
andvideo
constraints sent from the backend consuming themediaParams
event.
- #240
b5d2a72
- AllowspeakerId
to be set when creating a room object to set the audio output device before join.
- #237
6d36287
- Set parent memberId for screenShare and additionalDevice sessions. Add defaultaudio
constraints for screenShareObjects.
-
#224
447460c
- ExportcreateCameraDeviceWatcher
,createMicrophoneDeviceWatcher
andcreateSpeakerDeviceWatcher
helper methods -
#160
399d213
- Expose createScreenShareObject() method to share the screen in a room -
#179
acf8082
- Expose createSecondSourceObject() method to stream from additional sources in a room -
#214
ec49478
- Includedcommonjs
versions intojs
andwebrtc
packages
-
#190
8bb4e76
- Split Room objects into Room, RoomDevice and RoomScreenShare with specific methods for each use case -
#212
2c89dfb
- DeprecatedgetLayoutList
andgetMemberList
in favour ofgetLayouts
andgetMembers
respectively. Other methods (audioMute
,audioUnmute
,deaf
,hideVideoMuted
,removeMember
,setInputSensitivity
,setLayout
,setMicrophoneVolume
,setSpeakerVolume
,showVideoMuted
,undeaf
,videoMute
,videoUnmute
) that were previously returning{ code: string, message: string }
also went through a signature change and are now returningPromise<void>
-
#161
22b61d3
- Rename some internal objects and review the public exports -
#144
95df411
- Renamed internal sessions classes, Bundled core dependencies -
#156
703ee44
- Update RoomLayout interfaces and events payloads
-
#226
2bdd043
- FixsetMicrophoneVolume()
behavior on Room, RoomDevice and RoomScreenShare objects. FixsetSpeakerVolume()
behavior on Room object. -
#138
9e3a65a
- Always check stopMicrophoneWhileMuted and stopCameraWhileMuted in createRoomObject -
#177
f4372cd
- Fix bug with the localVideo overlay rendering
- Updated dependencies [
6995825
,efe9bd8
,ef1964c
,8e08e73
,4524780
,fe0fe0a
,399d213
,8bb4e76
,2c89dfb
,a15b69a
,acf8082
,f6b8b10
,d84f142
,a5ef49a
,12178ce
,9ee753d
,22b61d3
,5820540
,d017a99
,b1f3d45
,5b5c454
,ec49478
,0eeca38
,efe9bd8
,9ebadd6
,45e6159
,95df411
,2aa7ff0
,703ee44
]:- @signalwire/core@3.0.0
- @signalwire/webrtc@3.0.0
- ec49478: Included
commonjs
versions intojs
andwebrtc
packages - eaad2d8: Try to use aspectRatio 16:9 as a default value for video constraints
- Updated dependencies [ec49478]
- @signalwire/core@3.0.0-beta.4
- @signalwire/webrtc@3.0.0-beta.4
- ef1964c: Export types/interfaces for Room events
- 2c89dfb: Deprecated
getLayoutList
andgetMemberList
in favour ofgetLayouts
andgetMembers
respectively. Other methods (audioMute
,audioUnmute
,deaf
,hideVideoMuted
,removeMember
,setInputSensitivity
,setLayout
,setMicrophoneVolume
,setSpeakerVolume
,showVideoMuted
,undeaf
,videoMute
,videoUnmute
) that were previously returning{ code: string, message: string }
also went through a signature change and are now returningPromise<void>
- Updated dependencies [2c89dfb]
- @signalwire/core@3.0.0-beta.3
- @signalwire/webrtc@3.0.0-beta.3
- Fix esm bundle output for
js
package
- efe9bd8: Move Room to
js
package - 8bb4e76: Split Room objects into Room, RoomDevice and RoomScreenShare with specific methods for each use case
- acf8082: Expose
addMicrophone
,addCamera
andaddDevice
methods to stream from additional devices in a room. - 9ee753d: Expose
updateCamera
andupdateMicrophone
methods to switch devices while connected to a Room. - efe9bd8: Add updateSpeaker method
- f4372cd: Fix bug with the localVideo overlay rendering
- a15b69a: Add
getMemberList
method to retrieve the member list for the current room - Updated dependencies [efe9bd8]
- @signalwire/core@3.0.0-beta.2
- @signalwire/webrtc@3.0.0-beta.2
- 5820540: Remove regenerator-runtime from dependencies
- 399d213: Expose createScreenShareObject() method to share the screen in a room
- 7ba9d45: Add types to createRoomObject method
- 22b61d3: Rename some internal objects and review the public exports
- 95df411: Renamed internal sessions classes, Bundled core dependencies
- 703ee44: Update RoomLayout interfaces and events payloads
- Updated dependencies [703ee44]
- @signalwire/core@3.0.0-beta.1
- @signalwire/webrtc@3.0.0-beta.1
- 9e3a65a: Always check stopMicrophoneWhileMuted and stopCameraWhileMuted in createRoomObject
- Updated dependencies [fe0fe0a]
- @signalwire/core@3.0.0-beta.0
- @signalwire/webrtc@3.0.0-beta.0
- fb2fa66: Initial beta release of SignalWire JS SDK