Releases: RibbonCommunications/webrtc-js-sdk
Releases · RibbonCommunications/webrtc-js-sdk
webrtc-js-sdk v6.13.0
webrtc-js-sdk v6.12.0
6.12.0 - 2024-06-28
Added
- New media APIs for managing local detached media.
createLocalMedia
,getLocalMedia
anddisposeLocalMedia
are used to create
audio, video and screen media tracks locally outside of a call.KJS-2105
- New call configuration parameter for faster call setup:
skipIceCollection
.KJS-2205
- Setting to `true`` will skip waiting for ICE collection and proceed with negotiation.
- New media option for passing local detached media to the following call apis: make, answer, addMedia and replaceTrack.
KJS-2106
Fixed
- Fixed a Call issue where
call:operation
events indicating a negotiation has finished had the incorrectprevious.status
parameter. - Fixed a Call issue where a new operation being started while the call is being ended could lead to vague errors.
KJS-2161
webrtc-js-sdk v6.11.0
6.11.0 - 2024-05-30
Fixed
- Fixed a Subscription issue where the
config.subscription.expires
value could be set too short, causing the user to be unsubscribed after some time.KJS-1996
- The minimum value for
config.subscription.expires
is60
seconds.
- The minimum value for
- Fixed issue where an exception is thrown if the remote proxy channel is broken during a call and an operation is attempted.
KJS-2167
webrtc-js-sdk v6.10.0
6.10.0 - 2024-04-26
Added
- Added more specific error messages in response to various error codes that SDK can receive from backend, as part of a Call Control Response.
KJS-2056
Fixed
- Fixed a Call issue where two conflicting operations could be performed on a call simultaneously in some scenarios.
KJS-1799
,KJS-2002
- The second operation will now fail with error code
call:12
rather than being attempted.
- The second operation will now fail with error code
- Fixed an issue where restarting media on a call was failing.
KJS-2096
- Fixed an issue where the SDK would incorrectly store duplicate track ids when a call is taken off hold.
KJS-2019
- Fixed a Call issue where the error for performing an operation on a non-existent call was unclear.
KJS-2097
- Fixed
setCredentials
API validation for handling empty access tokens.KJS-2130
- Fixed a Call issue where
call:stateChange
events were not being emitted when Consultative Transfer & Join operations failed. - Fixed a Call issue where a local call operation can fail to complete in scenarios when network delays cause replies to be received out of order.
KJS-2150
- Fixed a Proxy issue where the local SDK would incorrectly report a remote version mismatch as an unknown error.
KJS-2126
Changed
- Optimized the Call "time to answer" metric when in Proxy-mode by reducing a message crossing the proxy channel.
KJS-2149
webrtc-js-sdk v6.9.0
6.9.0 - 2024-03-28
Added
- Added extra validation on
sendCustomParameters
API to ensure parameters are set on the Call, before calling this API.KJS-2047
- Added extra validation to
setCredentials
API to ensure user does not attempt to change credentials while being subscribed to services under different credentials.KJS-2088
Fixed
- Fixed a Proxy issue where setting proxy mode with the existing value would trigger a
devices:change
event even though devices did not change.KJS-1883
- Fixed a Call issue where updating ICE server configuration would not take affect after the user subscribed.
KJS-2095
- Fixed an issue where the SDK was incorrectly reporting previous call state
Ended
when a call is ended locally. It now correctly reports previous call state asConnected
.KJS-2099
Changed
- Changed call metrics logic so that call metrics are only added into the report as part of a successful call event. This way, the metric value will only measure the duration of a successful operation.
KJS-1972
webrtc-js-sdk v6.8.0
6.8.0 - 2024-02-23
Added
- Added a new property to the CallObject:
call.currentOperations
.KJS-1853
- This property lists all of the on-going operations, initiated either locally and remotely, for the call.
- The
call:operation
event indicates when an operation on this property has been updated.
- Added a new parameter to the
call:operation
event:operationId
. KJS-1853- This parameter is a unique ID for the operation triggering the event. It matches the ID of the operation object stored in the
call.currentOperations
property.
- This parameter is a unique ID for the operation triggering the event. It matches the ID of the operation object stored in the
- Added further info to
services.getSubscriptions
API documentation to make it more clear.KJS-1414
- Added a missing
PROCESS_MEDIA_REMOTE
sub-event in the call report, in the case of a Slow Start call operation.KJS-1973
- Fixed the Call documentation for the
call:statsReceived
event not indicating that theresult
parameter is present only on success.KJS-1999
- Added further clarifications on what are the expectations when getting the
reason
parameter, as part ofSUB_CHANGE
event's payload.KJS-2004
Fixed
- Fixed a Call issue where multiple, unrelated call operations occurring at the same time would conflict with each other in some scenarios.
KJS-1682
,KJS-1975
- Fixed a Call issue where the
call.getStats
API was not providing a clear error object on failure.KJS-1977
- Fixed a Subscription issue where user subscriptions would not be automatically extended when nearing expiration.
KJS-1983
- Fixed the API documentation for
call.getAvailableCodecs
to contain up-to-date information, as this API is currently supported in the latest Firefox browser.KJS-1984
- Fixed an issue during the ending of a call (at transferor side) for both direct & consultative transfers.
KJS-1991
- Fixed a Subscription issue where attempts to extend the subscription would continue even after it was knowingly lost.
KJS-1997
Deprecated
- The previous CallObject properties for operation tracking,
call.localOp
andcall.remoteOp
, are being deprecated and will be removed in a future major release.KJS-1853
- If you were using either of these call properties, please use the new
call.currentOperations
property instead.
- If you were using either of these call properties, please use the new
webrtc-js-sdk v6.7.0
6.7.0 - 2024-01-26
Fixed
- Fixed an issue where the SDK wasn't adding local media tracks to a joined call.
KJS-1864
- Fixed a Proxy issue where error information was missing from the
proxy:error
event in several scenarios.KJS-1792
- All
proxy:error
events will now have a clearer human-readable message and error code. - The
proxy:error
events triggered from theproxy.initializeRemote
API will more clearly describe the cause of the error. - Documentation for the Proxy APIs have been updated to be clearer about expected error scenarios.
- All
- Fixed a Proxy issue where setting proxy mode with the existing value would trigger a
devices:change
event even though devices did not change.KJS-1883
- Fixed a Call issue where
devices:change
events were emitted when a call ended even though no device changed.KJS-1953
- Fixed a Call issue where two
devices:change
events were emitted when a media device was disconnected instead of only one.KJS-1953
- Fixed the configuration sample used in video calling for the
Voice and Video Calls
tutorial trail, since video call was failing.KJS-1957
- Fixed a Call issue where the
sendRingingFeedback
API would always encounter an error when calling it manually.KJS-1970
webrtc-js-sdk v6.6.0
6.6.0 - 2023-12-29
Added
- Added
REST_REQUEST
sub-event to the main operation event in the generated call report, for all the complex operations (join, direct/consultative transfer) as well as for any other miscelaneous requests that did not record such sub-event. Also added this sub-event to theupdate session
main event, triggered when a Peer performs a local operation (e.g. hold, unholds, restart ice collection).KJS-1514
- Added extra validation during the answering of a regular call: answering a call will fail if attempting to offer one (or more) media(s) that have not been offered by the caller.
KJS-1765
Fixed
- Fixed a Call issue where the
call.mediaBrokerOnly
configuration was ignored when being taken off remote hold after receiving music-on-hold.KJS-1742
- Fixed an issue where if the ignore or reject call api's are called against a call in
Connected
state, it will change the state of the call toEnded
even though the operation failed and the call is still actuallyConnected
.KJS-1888
- Fixed an issue where the we weren't ending remote events in the call report that were using regular signalling flow (not slow-start), as well as checking for remote unhold operations when checking for ice collection.
KJS-1880
- Fixed issue where if a user is logged into more than one client and an incoming call is answered by one, the other clients will resync call state to
Cancelled
rather than leaving it inRinging
state.KJS-1857
- Fixed an issue during call hang up in Proxy mode, where its Channel would timeout and thus affecting the normal sequence of ending the call on both sides.
KJS-1884
- Fixed an issue where the SDK was trying to process a midcall operation notification on a call in the incorrect state.
KJS-1857
- Fixed an issue where call audit was still kept alive even after call has been cancelled by backend.
KJS-1892
Changed
- Renamed call report event names to be more consistent and clear.
KJS-1647
SET_LOCAL_DESCRIPTION
renamed toPROCESS_MEDIA_LOCAL
SET_REMOTE_DESCRIPTION
renamed toPROCESS_MEDIA_REMOTE
PROCESS_RESPONSE
replaced byPROCESS_MEDIA_REMOTE
webrtc-js-sdk v6.5.1
6.5.1 - 2023-12-07
This is a hotfix release.
Changed
- Changed the way SDK searches backwards through an array of content by replacing the use of
Array.findLast
API with the more supported alternative: usingArray.reverse
&Array.find
APIs.
This is becauseArray.findLast
API is only supported in Chrome browsers starting with version 97 (released on 2022-01-04) and so previous browser versions (on which current SDK may run) do not have a polyfill implementation for this API.KJS-1898
Fixed
- Fixed an issue where we weren't including an object in the
auth:change
event. In certain cases this object contains properties relevent to the event that could if missing could break a client.KJS-1897
webrtc-js-sdk v6.5.0
6.5.0 - 2023-11-24
Fixed
- Fixed the issue of a missing channel value by providing a default one, when calling
notifications.process
API.KJS-1858
- Fixed two issues with
call:stateChange
event:- during local hold, when the event payload contained wrong 'previous' call state parameters.
- during call hang up, when the event did not contain a reason text & status code. This applies to the peer that got notified for the call that ended.
KJS-1844
- Fixed an issue relating to how Directory/Address Book users are stored and retrieved.
KJS-466
Other Changes
This release also includes changes to a few other parts of the SDK. These changes should not be noticeable to an application, but are worth mentioning for awareness. A number of features of the SDK have had their codebase renewed to better support the direction of the SDK going forward. This will translate to a better developer experience in the future.
The following features have been updated internally: Authentication. They do not require any application changes as part of the release, as the changes are backwards-compatible. As always, if you encounter an issue with a release change, please report the issue to us.