Javascript SDK release notes

34.1.1 (2023-04-05)

Bug Fixes

  • use the right payload to send DTMF codes

34.1.0 (2023-03-29)

Bug Fixes

  • chat: filter malformed individual chats

Features

  • support also the new avatarUrl property in presences

  • conference: improve feedback and features relating to muting audio

  • add a flag in local storage to allow disabling socket multiplexing

34.0.3 (2023-03-01)

Bug Fixes

  • inform app when wapi socket connection is trying to reconnect

34.0.2 (2023-02-02)

Bug Fixes

  • users: keep a cache of requested address resolutions

34.0.1 (2023-01-27)

Bug Fixes

  • conferences: fix problem creating invitation when using inviteMany method

34.0.0 (2023-01-18)

Bug Fixes

  • restore socket multiplexing for QSS

  • users: improve UserRepository

Code Refactoring

  • remove deprecated Conference event “localStreamAdded”

  • remove deprecated Conference event “localStreamRemoved”

  • remove deprecated Conference events “expelled” and “destroyed”

  • conferences: remove deprecated method ConferenceManager.getRoomByUri

  • users: obtain users only from Presence API

BREAKING CHANGES

  • deprecated Conference events “expelled” and “destroyed were removed

  • deprecated Conference event “localStreamRemoved” was removed

  • deprecated Conference event “localStreamAdded” was removed

  • users: alias, emails and phone were removed from User objects

  • conferences: ConferenceManager.getRoomByUri method was removed. The same functionality can be achieved using getMeetingConference and getQuickConference methods

33.1.1 (2022-11-24)

Bug Fixes

  • conference-log: send the right id when marking missed calls as read

33.1.0 (2022-10-11)

Features

  • add access to server side missed calls count

33.0.4 (2022-09-20)

Bug Fixes

  • remove outdated calls to groupmanager un/init

33.0.3 (2022-08-19)

Bug Fixes

  • increase timeout before returning an empty user

33.0.2 (2022-07-29)

Bug Fixes

  • throw error informing wrong password/time when trying to access meeting

33.0.1 (2022-07-06)

Bug Fixes

  • fix problem obtaining a user from address

33.0.0 (2022-05-23)

Bug Fixes

  • fallback active audio input device when active one disappears

BREAKING CHANGES

  • LocalMediaHandler API has changed. Check API documentation for further details

32.0.0 (2022-05-19)

Code Refactoring

  • remove calls support

  • remove PresenceManager, ContactManager and UserManager

  • remove resolver dependency from ConferenceManager

  • groups: replace GroupManager with a brand new GroupRepository

BREAKING CHANGES

  • PresenceManager, ContactManager and UserManager not longer exist. New Contacts and Presence API must be used instead.

  • calls support has been removed. Only Conference API using Janus is available now

  • ConferenceManager and Conference API has changed.

  • groups: API for accessing groups has changed. Old GroupManager was removed and replaced with the new GroupRepository. Check API documentation for more details.

31.1.5 (2022-05-19)

Reverts

  • Revert “refactor(groups): replace GroupManager with a brand new GroupRepository”

  • Revert “refactor: remove resolver dependency from ConferenceManager”

  • Revert “refactor: remove calls support”

  • Revert “refactor: remove PresenceManager, ContactManager and UserManager”

  • Revert “chore: add missing size-limit dependencies”

  • Revert “refactor: move users-new to users and contacts-new to contacts”

31.1.4 (2022-05-19)

Invalid release

31.1.3 (2022-04-05)

Bug Fixes

  • users: avoid race conditions when updating two presence properties in different calls

31.1.2 (2022-04-01)

Bug Fixes

  • improve interoperability with electron apps for screen sharing

31.1.1 (2022-03-10)

Code Refactoring

  • remove outdated methods in ConferenceLog object

  • update to rxjs@7.5.4

BREAKING CHANGES

  • rxjs version used was update to version 7

  • ConferenceLog deprecated methods have been removed

31.1.0 (2022-02-28)

Bug Fixes

  • update to reconnecting-websocket@4.4.0

  • users: add missing “/” in path for obtaining presences

  • users: catch errors in requests to user endpoint

Code Refactoring

  • remove support for Ericsson, OpenTok and Oracle stacks

Features

  • add a new scaleImage utility function to generate avatars from an image

BREAKING CHANGES

  • support for Ericsson, OpenTok and Oracle stacks was removed

31.0.0 (2022-02-11)

Bug Fixes

  • refactor: stop using resolver from UserRepository

BREAKING CHANGES

  • refactor: User model has changed: * “mobilePhones” was renamed to “phone” and is just a string * gatewayUsername was removed

30.2.8 (2022-01-21)

Bug Fixes

  • add missing field to MeetingParticipant interface

30.2.7 (2022-01-14)

30.2.6 (2021-12-15)

Bug Fixes

30.2.5 (2021-12-13)

Bug Fixes

  • screen-sharing: remove screen sharing activation timeout

30.2.4 (2021-11-24)

Bug Fixes

  • conference: notify speaker change events from the own participant

30.2.3 (2021-11-23)

Bug Fixes

  • chat: add missing types in Chat class

30.2.2 (2021-11-17)

Bug Fixes

  • contacts: check also for type when deleting or updating contacts

30.2.1 (2021-11-12)

Bug Fixes

  • users: resolve first requested user

30.2.0 (2021-10-15)

Features

  • login: allow to get session to anonymous users without token

30.1.1 (2021-10-06)

Bug Fixes

  • contacts: set timeout to user contact resolution

  • groups: fix race condition resolving user groups participants

  • users: throw error when cannot resolver user address

30.1.0 (2021-09-01)

Features

  • conference: add fromDetails in invite

  • user: allow to get user by address

30.0.0 (2021-08-13)

Bug Fixes

  • conferences: add type definitions for ConferenceLog

  • whiteboard: init whiteboard out session

BREAKING CHANGES

  • whiteboard: When you receive incomingWhiteboard of session object. In whiteboard object that you receive now you need call init() method  to initialize it

29.2.1 (2021-08-05)

Bug Fixes

  • ws: do not add QS operator if the query string object is empty

29.2.0 (2021-07-19)

Features

  • contacts: add a new contact API

  • localmediahandler: add activeMediaDevices and forceUpdate

29.1.3 (2021-06-23)

Bug Fixes

  • chat: relocate resetUnreadMessageCount

  • revert to using official webrtc-adapter

Features

  • contacts: add a new contact API

29.1.2 (2021-06-07)

Bug Fixes

  • allow using custom “goog” parameters in media constraints

29.1.1 (2021-05-13)

Bug Fixes

  • chat: use a custom stanza version based on the last working commit

29.1.0 (2021-05-10)

Features

  • webrtc: add webrtc-adapter dependency

29.0.3 (2021-05-05)

Bug Fixes

  • chat: do not show nonexistent chat notification

  • chat: set displayed status to sent messages

29.0.2 (2021-04-23)

Bug Fixes

  • conference: add speakerChanged event documentation

29.0.1 (2021-04-09)

Bug Fixes

  • conference: do not add on hold music as participant

29.0.0 (2021-03-26)

Bug Fixes

  • conferences: fix error log

  • conferences: use mediatypes object instead of a plain string to advertise media

  • transfer: do not leave of uninitialized conference

  • fix a problem detecting the end of screen tracks

Features

  • conference: expose conference speaker changed events

  • conferences: allow to call voice mail

  • permissions: implement permissions service api

  • voicemail: create voicemail service

  • add support for identifying streams containing a screen sharing stream

BREAKING CHANGES

  • transfer: deleted canManage and getOwner methods of the public Conference class because the Conferences not have owner now

28.5.0 (2021-02-26)

Bug Fixes

  • typings: add some typings for supporting typescript strict mode

  • typings: change some variables from symbol to DataPipeStatus and DataPipeType

  • xmpp: chat’s RSM query has changed

  • restore export for SessionConfig

Features

  • conferences: add support for feed description

28.4.3 (2021-02-01)

Bug Fixes

  • typings: add some typings for supporting typescript strict mode

28.4.2 (2021-01-15)

Bug Fixes

  • contacts: use addressBook favorite field for the contacts

28.4.1 (2021-01-15)

Bug Fixes

  • contacts: add missing property in type definition

28.4.0 (2020-12-18)

Bug Fixes

  • conference: fix wrong method name

  • contacts: use addressBook favorite field for the contacts

Features

  • conference: adapt inviteMany to QSS changes

28.3.0 (2020-12-04)

Bug Fixes

  • media: fix problems when setting the active audio/video input devices

Features

  • conference: add method to get if the conference is being recorded

  • media: set ideal screen sharing video framerate to 5 fps

28.2.2 (2020-12-04)

Bug Fixes

  • contacts: fix contact manager contact creation

  • webpack: change extension of entry file in webpack conf

28.2.1 (2020-11-23)

Bug Fixes

  • chat: check register/unregister response status

28.2.0 (2020-11-06)

Bug Fixes

  • chat: omit message sent events with chat state

  • conferences: disable screen sharing before put on hold

  • meetings: allow to get a password protected meeting

  • types: fix types exports

Features

  • conference: add method to get if the conference is being recorded

  • conference: allow to make a multiple invitation

28.1.2 (2020-11-04)

Bug Fixes

  • contacts: fix new contact user resolution

  • conferences: disable screen sharing before put on hold

  • meetings: allow to get a password protected meeting

  • types: fix types exports

Features

  • fileupload: add file upload status in the return of sendFile method

28.1.0 (2020-10-05)

Bug Fixes

  • adapt sippojs to new fileUpload errors

  • contacts: adapt addressbook contact to contact data

  • push: change activation & deactivation push notification endpoints

Code Refactoring

  • conferences: remove support for invitation requests

Features

  • fileupload: add file upload status in the return of sendFile method

  • generate tags with refactor commits and README updates

  • meetings: enable meetings creation with password protection

  • meetings: enable qss join room with password

BREAKING CHANGES

  • conferences: Invitation requests are now not available

28.1.1 (2020-10-23)

Bug Fixes

  • conferences: disable screen sharing before put on hold

28.0.0 (2020-09-25)

Bug Fixes

  • conferences: add the capacity of getting the conference object before agent answers

  • disconnect from room after leaving it

  • get first email on contact

Features

  • conferences: make an HTTP request when a conference is put on hold

BREAKING CHANGES

  • conferences: SupportService and its methods are now integrated in the Conference class

27.0.1 (2020-09-14)

Bug Fixes

  • media: keep audio muted when audio is muted and video disabled before joining conf

27.0.0 (2020-08-05)

Bug Fixes

  • chat: avoid trying to create xmpp sockets twice

  • session: fix problems in User type definitions and with missing exports

  • remove leaked event handler in XmppClient

Features

  • meetings: add a new meetings implementation

  • meetings: enable meetings join

  • meetings: enable single meeting retrieval

  • quickconference: enable sippojs to join quick conferences

BREAKING CHANGES

  • meetings: Meetings implementation was completely rewritten. Main changes are: * A meeting is now completely readonly id and phone properties can not be changed. * Meeting.destroy() was removed. You must use MeetingManager.remove(meeting: Meeting) instead. * Meeting.reinvite() was removed. Method didn’t work and now has been completely removed. * Meeting.toJSON() was removed. * Meeting is not an EventEmitter and the “delete” event was removed. When a meeting is deleted it will just be removed from the list. See MeetingManager.getMeetings$() * MeetingManager.message was not being used and was completely removed * “meeting-recovered” event was removed. Use the MeetingManager.getMeetings$() observable to know how to obtain changes in meetings list.

26.2.1 (2020-08-03)

Bug Fixes

  • session: allow to close session without xmpp connection

  • keep start/stop of xmpp connection as ChatManager responsibility’s

26.2.0 (2020-07-06)

Features

  • enable multiplexing wrapper connections

26.1.0 (2020-07-03)

Features

  • multiplexws: add support for multiplexed websockets

  • supportservice: allow to send a token when calling an agent

  • pass multiplexed websocket to wrapper stack

26.0.0 (2020-06-25)

Bug Fixes

  • chat: add missing exports

  • chats: return empty array if can’t get support chats

  • conference: add method to return conference join timestamp

  • conference: assign default value to attribute

  • contacts: allow to create new contacts without backend for device

  • contacts: remove sync of contacts from device

  • meeting: add interface for meeting manager and meeting

  • fix problems in ContactManager.getContactByAddress type definitions

  • support: fix problems in types when bundling in a distributable package

  • supportchat: pass parameters into body

  • supportchat: support chat transfers

  • restore ContextInfo type

Features

  • chat: add support chat leave

  • chat: enable support chat recovery

  • contacts: add a new method to obtain a contact without searching in contact list

  • context: make invite context accessible in conferences

  • meeting-manger: add valid until to create and update meetings

  • supportservice: api for calling an skilled agent

BREAKING CHANGES

  • contacts: removed the device contacts sync with the wac functionality and his caching in local storage

25.2.0 (2020-06-25)

Bug Fixes

  • chats: return empty array if can’t get support chats

  • conference: add method to return conference join timestamp

  • conference: assign default value to attribute

  • contacts: allow to create new contacts without backend for device

  • meeting: add interface for meeting manager and meeting

  • support: fix problems in types when bundling in a distributable package

  • supportchat: pass parameters into body

  • supportchat: support chat transfers

  • fix problems in ContactManager.getContactByAddress type definitions

  • restore ContextInfo type

Features

  • chat: add support chat leave

  • chat: enable support chat recovery

  • contacts: add a new method to obtain a contact without searching in contact list

  • meeting-manger: add valid until to create and update meetings

25.1.0 (2020-05-18)

Bug Fixes

  • chat: add await to start xmpp client and return promise

  • chat: listen xmpp events just before client connection

  • chatservice: change room and join room config

  • localstorage: allow to remove user information from local storage

  • media: increase timer to request user media

  • supportservice: use random agent URI and e2e tests

  • typings: added missing typings

  • xmpp: send sessionToken instead of deviceId in chat pushes

Features

  • chat: add 3 new methods in Chat returning observables

25.0.0 (2020-04-27)

Bug Fixes

  • chat: add await to start xmpp client and return promise

  • chat: add missing pendingMessages events

  • chat: avoid processing mam messages containing not implemented xeps

  • chat: check if object is defined before trying to access properties

  • chat: differentiate conference chats from normal group chats

  • chat: don’t modify firstUnreadMessage when sending messages in a group

  • chat: don’t send a disconnect message to xmpp server when suspending the session

  • chat: listen xmpp events just before client connection

  • chat: normalize participant name in getIndividualChat method

  • chat: normalize user address to lower case before using it as a jid

  • chat: only set a firstUnreadMessage when all is read after appending a new message

  • chat: postpone removing bookmark on muc end after deleting chat from list

  • chat: remove chats from list when a problem joining them occurs

  • chat: remove new chat notification for own messages in chat groups

  • chat: remove stanza client after session is suspended

  • chat: request no history when joining MUCs

  • chat: send displayed mark after sending a message

  • chat: stop duplicating group chats in ChatManager.sync() calls

  • chat: stop including local user as remote participant in groups when using two devices

  • chat: sync group chat messages after receiving an invite

  • chat: take into account latest invitation received when sorting groups without messages

  • chat: try to actively recover muc invitations received while offline

  • chat: use lowercase identifiers for group chats

  • conference: add class to export incoming conference invites

  • conference: do not allow to leave room without signaling session

  • conferences: complete types and add missing exports

  • conferences: fix problem in unattendedCallTransfer method argument

  • contactmanager: chat participants are lowercase

  • contacts: add missing default value for emails in Contact

  • contacts: fix problem preventing OwnPresence to work

  • contacts: remove spaces when importing phone contacts

  • e2e: fix some e2e test

  • file-sharing: don’t resolve until ended when aborting a fileupload

  • janus: update with pr comments

  • media: increase timer to request user media

  • presence: remove unnecessary workaround in own presence

  • semver: bring release numbering back to order

  • session: added deviceId from sessionEstablisher response when it is not sent

  • session: close other connections when one of them is unexpectedly closed

  • session: fix interval time

  • session: move status change after user init

  • session: return an empty Set from getCapabilities if session has not been initialized

  • sipows: iphone support. fix deprecated methods

  • sipows: remove duplicate local stream after resume call

  • sipows: remove duplicate remote stream after resume call

  • sipows: use addStream if exists. if it doesn’t exist, fallback to getTrack

  • avoid leaking information from package.json in builds

  • types: add missing types for Contact

  • typings: add missing types

  • avoid error disconnecting when a problem occurs during login after wapi is connected

  • only .json() login responses if 20X OK/Created, throw otherwise

  • prevent wacProxy.stop to be called twice

  • remove misleading error message when a problem occurred during first login step

  • supress “possible EventEmitter memory leak detected” warning

  • types: improve types for Presence interface

  • typings: add type definition for recover session

  • users: consider user address as case insensitive when resolving users

  • wacrequest: check if body is an array of an object

  • wacstack: maintain restbase wapi error format

Code Refactoring

  • stacks: simplify code wrapping requests to getUserMedia and getDisplayMedia

Features

  • chat: add context in create supportChat petition

  • conference: add missing conference type

  • conferences: add a new ConferenceStatus: DESTROYED

  • conferences: add an observable to keep track of conference status

  • conferences: allow optional agent info in an invite

  • contact: get the first contact address for a contact as phone

  • contacts: add a new field in a contact to set and retrieve a default email

  • contacts: add a new field in a contact to set and retrieve a default phone

  • contacts: add a new method to create fake contacts

  • contacts: add new method to wait until a presence is initialized

  • contacts: export PresenceMood and PresenceActivity from package root

  • groups: keep phonebooks of a group in its group model

  • janus: set a heartbeat to detect if the socket breaks with QSS

  • media: add event indicating any LocalMediaHandler property changed

  • stacks: add support for screensharing using electron

  • wapi: use wapi@3

  • xmpp: add support chat

  • add support for using websockets against wrapper

  • support wapi’s suspend/resume

Performance Improvements

  • chat: load group chats in parallel

  • remove unnecessary dependency

  • replace shortid and uuid with nanoid

BREAKING CHANGES

  • semver: bump version back to 25.x

  • wapi: from this release on, we no longer support connecting to wapi@2 servers.

  • stacks: Screen sharing is only supported on Chrome >= 72, Firefox >= 66 and Edge >= 17. Oldest versions of Chrome and Firefox previously supported using a plugin now are not supported

Bug Fixes

  • chat: add await to start xmpp client and return promise

  • chat: add missing pendingMessages events

  • chat: avoid processing mam messages containing not implemented xeps

  • chat: check if object is defined before trying to access properties

  • chat: differentiate conference chats from normal group chats

  • chat: don’t modify firstUnreadMessage when sending messages in a group

  • chat: don’t send a disconnect message to xmpp server when suspending the session

  • chat: listen xmpp events just before client connection

  • chat: normalize participant name in getIndividualChat method

  • chat: normalize user address to lower case before using it as a jid

  • chat: only set a firstUnreadMessage when all is read after appending a new message

  • chat: postpone removing bookmark on muc end after deleting chat from list

  • chat: remove chats from list when a problem joining them occurs

  • chat: remove new chat notification for own messages in chat groups

  • chat: remove stanza client after session is suspended

  • chat: request no history when joining mucs

  • chat: send displayed mark after sending a message

  • chat: stop duplicating group chats in ChatManager.sync() calls

  • chat: stop including local user as remote participant in groups when using two devices

  • chat: sync group chat messages after receiving an invite

  • chat: take into account latest invitation received when sorting groups without messages

  • chat: try to actively recover muc invitations received while offline

  • chat: use lowercase identifiers for group chats

  • conference: add class to export incoming conference invites

  • conference: do not allow to leave room without signaling session

  • conferences: complete types and add missing exports

  • conferences: fix problem in unattendedCallTransfer method argument

  • contactmanager: chat participants are lowercase

  • contacts: add missing default value for emails in Contact

  • contacts: fix problem preventing OwnPresence to work

  • contacts: remove spaces when importing phone contacts

  • e2e: fix some e2e test

  • file-sharing: don’t resolve until ended when aborting a fileupload

  • janus: update with pr comments

  • media: increase timer to request user media

  • presence: remove unnecessary workaround in own presence

  • semver: bring release numbering back to order

  • session: added deviceId from sessionEstablisher response when it is not sent

  • session: close other connections when one of them is unexpectedly closed

  • session: fix interval time

  • session: move status change after user init

  • session: return an empty Set from getCapabilities if session has not been initialized

  • sipows: iphone support. fix deprecated methods

  • sipows: remove duplicate local stream after resume call

  • sipows: remove duplicate remote stream after resume call

  • sipows: use addStream if exists. if it doesn’t exist, fallbak to getTrack

  • avoid leaking information from package.json in builds

  • types: add missing types for Contact

  • typings: add missing types

  • avoid error disconnecting when a problem occurs during login after wapi is connected

  • only .json() login responses if 20X OK/Created, throw otherwise

  • prevent wacProxy.stop to be called twice

  • remove misleading error message when a problem occured during first login step

  • supress “possible EventEmitter memory leak detected” warning

  • types: improve types for Presence interface

  • typings: add type definition for recover session

  • users: consider user address as case insensitive when resolving users

  • wacrequest: check if body is an array of an object

  • wacstack: maintain restbase wapi error format

Code Refactoring

  • stacks: simplify code wrapping requests to getUserMedia and getDisplayMedia (837b8e3)

Features

  • chat: add context in create supportChat petition

  • conference: add missing conference type

  • conferences: add a new ConferenceStatus: DESTROYED

  • conferences: add an observable to keep track of conference status

  • conferences: allow optional agent info in an invite

  • contact: get the first contact address for a contact as phone

  • contacts: add a new field in a contact to set and retrieve a default email

  • contacts: add a new field in a contact to set and retrieve a default phone

  • contacts: add a new method to create fake contacts

  • contacts: add new method to wait until a presence is initialized

  • contacts: export PresenceMood and PresenceActivity from package root

  • groups: keep phonebooks of a group in its group model

  • janus: set a heartbeat to detect if the socket breaks with QSS

  • media: add event indicating any LocalMediaHandler property changed

  • stacks: add support for screen sharing using electron

  • wapi: use wapi@3

  • xmpp: add support chat

  • add support for using websockets against wrapper

  • support wapi’s suspend/resume

Performance Improvements

  • chat: load group chats in parallel

  • remove unnecessary dependency

  • replace shortid and uuid with nanoid

BREAKING CHANGES

  • semver: bump version back to 25.x

  • wapi: from this release on, we no longer support connecting to wapi@2 servers.

  • stacks: Screen sharing is only supported on Chrome >= 72, Firefox >= 66 and Edge >= 17. Oldest versions of Chrome and Firefox previously supported using a plugin now are not supported

24.2.0 (2019-07-30)

Bug Fixes

  • chat: delete chats removed from another session while in background in sync method

  • chat: emit messageDisplayed event when an own message is marked as displayed in a group

  • chat: move the fetching of individual and group chats to sync method

  • groups: do not try to initialize group manager if unavailable

  • media: fix problem muting video and audio

Features

  • conference: update remote participants with hold and unhold events

24.1.0 (2019-07-22)

Bug Fixes

  • chat: fix problems chat order and unread message count

  • chat: fix problems in chat.sync method

  • chat: fix problems ordering list after creating or resuming the session

  • chat: set message status of a just sent file message to the right value

  • chat: synchronize own messages in groups between different devices

  • chat: update type definitions for ChatManager.setPushConfig

  • conference: avoid returning an undefined conference

  • change logging using console to use logger

  • conferences: fix problems in API doc and typings in Conference

  • contact: return an Error requesting the address of contact without internal user

  • index: add deviceId to sessionConfig

  • media: export LocalMediaHandler class

  • whiteboard: extend from EventEmitter in typings

  • improve type definitions

  • provide custom implementation for Array.prototype.flatMap

Features

  • conferences: add new getRoomByUri method to the ConferenceManager

  • session: add new method getMeetingManager

Performance Improvements

  • chat: fetch individual chats and group chats in parallel

  • chat: request more messages in fetch to avoid having to send more than one request

24.0.0 (2019-06-20)

Bug Fixes

  • chat: add missing parameter in chatManager.getIndividualChat method in typescript types

  • conference: use ref comparison instead of id-based for streams

  • janus: adapt constants to the ones in wrapper-stack

  • janus: use method isOnHold instead of onHold property

  • janusconference: destroy room once it’s uninited and don’t allow simultaneous uninits

  • media: improve screen track detection

  • session: interface Session extends EventEmitter in typings

  • typings: change INCOMMING by INCOMING

Code Refactoring

  • calls: extract logic related to managing local streams and media to another file

  • remove setCustomEmit

Features

  • chat: add sync() method for catching up with new messages

  • chat: keep chat list sorted by most recent message received/sent

  • conference: add event info in the remoteStreams event

  • conferences: add support for toggle camera in conferences

  • hold: add participant hold, unhold, added and removed events

  • janus: add new hold/unhold methods to the conference

  • janus: split stream change events into more detailed events

BREAKING CHANGES

  • setCustomEmit is now not available

  • conferences: Conferences API has been changed. Check API documentation to see how to use new API

  • calls: Calls API has been changed. Check API documentation to see how to use new API

  • janus: ‘remoteParticipants` event is emitted containing two InmutableMap (currentValue and oldValue) instead of an InmutableSet type. The InmutableMap will be formed as InmutableMap<{@link gatewayUsername}, {@link state}>}

23.0.0 (2019-05-22)

Bug Fixes

  • allow to create a contact with multiples emails and phones

  • domain contacts are not displayed when denying device contacts permission

  • set conference mediaTypes

  • use chrome getDisplayMedia for screen sharing

  • use wrapper-stack 1.1.1 to fix calls in iOS cordova

  • use wrapper-stack 1.1.2 to fix conferences in disconnecting state

  • capabilities: add default wqcapabilites

  • chat: all the chats were incorrectly copied to the list of conference chats

  • chat: close xmpp socket when session is suspended

  • chat: fix problem fetching messages when only marks are received

  • chat: getLastAckedBy stops working after receiving all the acks

  • chat: improve error management

  • chat: reconnect the xmpp socket

  • chat: send keepalive packets

  • chat: stop including conference chats in list of chats when a message is received

  • conference: do not cancel the previous invitation if the user is already joined

  • conference: don’t throw ‘already disconnected’ error when leaving the conference

  • conference: emit an error when it occurs in a transfer

  • conference: ignore errors when leaving a conference

  • conference: invitation requests not returned by getConferenceInvitations

  • conference: the conference’s state doesn’t change when an error leaving a room appears

  • conference: the incoming invitation request was being ignored after suspend

  • conference: try so solve the three-stream problem

  • contact: name returns always the base contact name

  • contacts: always prefer displayName over other fields

  • contacts: search by user and domain fails if we have contacts without wac user

  • contacts: the add contact event was being listened only the first time

  • exsip: initialize ExSIP variable with window.ExSIP

  • groups: return the just created group in the createGroup method

  • instant-message: export InstantMessageType

  • invitation: save the newInvitation created when setting the streams

  • janus: pass the window object to the wrapper-stack as dependency

  • janus: stop including an id in answers

  • logger: remove unnecessary console.log message

  • meetings: create a new meeting object with the updated data

  • remove double event emit

  • meetings: include sendInvites: true parameter in querystring when updating a meeting

  • meetings: update destroyMeeting method to delete

  • oracle: fix error loading vendor code that prevents bundling for Oracle stack

  • resolver: amend a typo in path

  • restbase: remove first argument as it’s not a field anymore

  • selfie: adapt selfie to latest changes in datapipe

  • don’t call setMediaTypes, emit INCOMING_CONFERENCE_EVENT

  • sipows: fix problems introduced in a4a7187

  • typings: add new methods to Call

  • typings: add parameters to EventEmitter

  • typings: add typings for chat

  • typings: change enum to content string with Symbol inside

  • typings: fix linting problem in typings

  • typings: remove Error from Promises

  • typings: set share parameter in shareScreen to optional

  • typings: update callManager definitions and its dependencies

  • typings: update Presence

  • typings: update session definitions and its dependencies

  • wac-proxy: fix problem checking supported capabilities

  • wac-proxy: fix wrong import

  • await for Promise

  • wacproxy: improve promise detection

  • call Conference.setMediaTypes after creating the conference

  • emit conferenceInvitation for each invited conference

  • final touches to make it work

  • fix problem checking capabilities broken since WacProxy changes

  • fix problem when setting the stack

  • getCurrentInvitations() support for inviteRequests

  • remove wrong warning that was logged when disconnecting the session

  • room is not in the context anymore

  • set mediatypes into JT/Confernce invite

  • stop requiring the deviceId when adding or removing a push token

  • wac-stack: fix problem processing wac events

  • wacstack: throw errors when received error messages is not recognized during login

  • unit test

  • update stanza version and apply patch also to exported module

  • wacid is no longer a valid field for WAC Sessions

  • wrong getCurrentInvitations() behavior

Build System

  • change minimum browser version supported by transpiled code

  • stop transpiling modules to CommonJS

Code Refactoring

  • change name of stacks

  • convert WacProxy to JS

  • datapipes: export Status and Type from package module

  • user: simplify user object

  • do not export bowser from Sippo.js

  • remove QoffeeNull stack because it is not needed anymore

  • remove session.getSessionId

  • remove stacks not being used

  • remove webrtc adapter

Features

  • chat: add support for conference chats

  • chat: use xmpp for chat

  • conference: add sendDTMF to the conference

  • conference: listen to room’s participants changes

  • groups: add support for creating and deleting groups

  • groups: restore method for obtaining phonebooks of groups

  • gruops: phonebooks support

  • invite-request: accept ir prior to create room

  • allow creating sessions to users without ims credentials

  • janus: add dependency wrapper-stack in the conference.js

  • janus: add dependency wrapper-stack in the conference.js

  • janus: pass getDisplayMedia dependency to the wrapper-stack to share the screen

  • janus: wait invitation request accept confirmation

  • jt: join paralellSip extension when specified in invite

  • login: recover session method

  • users-group: enable groups to fetch contacts

  • wac-stack: make use of well-known hosts URL to discover Sippo AS sockets

  • allow to update a meeting

  • implement requests for getCurrentInvitations new endpoint

  • release npm packages for dev branch

Reverts

  • remove file accidentally committed

BREAKING CHANGES

  • bowser is not longer exported from the package. i.e. import {bowser} from “@quobis/sippojs” will no longer work

  • The next stacks are now not available: ALU, QoffeeDialogic, QoffeeGenband, QoffeeKandy and QoffeeOracle

  • Minimum required versions are now: Chrome 62, Firefox 57, Safari 11, Edge 42, ios 10

  • datapipes: DataPipe.STATUS and DataPipe.TYPE have been removed. Now they must be directly imported from the package. e.g.: import {DataPipeStatus} from @quobis/sippojs

  • chat: Chat API has been changed. See API documentation for more information.

  • session.getCapabilities() now returns an Inmmutable Set<string>

  • Using this library now requires using a module bundler with support for standard modules like Webpack or Rollup. Bundling using browserify will not work.

  • QoffeeExSip is now SIPoWS, QoffeeEricsson is now Ericsson and JT is now Janus

  • session.getSessionId method have been removed

  • Before this change, there were two ways to avoid establishing a connection with the gateway: A falsy value in window.nosippojsstack or a credential without an authserver. Now the same behaviour is achieved when no credential is included for a user so keeping old behaviour is not needed.

  • user: session.getUsername has been removed. You must use session.getUser().getUsername()

  • webrtc adapter was removed. Applications must start including it if their supported browser versions need it

  • groups: Group API has been changed. See current API documentation for more information about changes

22.5.9 (2018-10-17)

Bug Fixes

  • chat: fix problem canceling a file message

22.5.8 (2018-10-10)

Bug Fixes

  • call: set the mediaConstraint to the first camera after setAvailableVideoInputDevices

22.5.7 (2018-10-09)

Bug Fixes

  • not necessary plugin for Firefox

22.5.6 (2018-10-03)

Bug Fixes

  • refactor conference _alreadyJoined

22.5.5 (2018-10-02)

Bug Fixes

  • conference: allow to access the invitation in the conference

22.5.4 (2018-10-01)

Bug Fixes

  • call: dtmf not working

22.5.3 (2018-09-19)

Bug Fixes

  • emit login error in JT

22.5.2 (2018-08-30)

Bug Fixes

  • wacproxy: pass the deviceId inside an object when registering

  • catch some thrown errors

22.5.1 (2018-08-29)

Bug Fixes

  • stream-recorder: fix typo in name of StreamRecorderStatus class

22.5.0 (2018-08-20)

Bug Fixes

  • new group contacts does not have phones

  • jt: send deviceId on register

  • session: pass deviceId when resuming JT session

  • session: throw UNAUTHORIZED when LoginError

  • wac-stack: rename wapiUrl by wacUri

Features

  • jt: notify deviceId when registering

  • push-notification: implement destroyToken

  • push-notification: notify deviceId on login request

  • push-notification: notify deviceId with pushToken

  • push-notifications: notifyPushToken implementation

  • session: send deviceId on session creation

  • session: send deviceId on session creation

22.4.0 (2018-08-14)

Features

  • export StreamRecorder in Sippo to allow it to be directly used from applications

22.3.0 (2018-08-13)

Features

  • contacts: match contacts by their address

22.2.2 (2018-08-09)

Bug Fixes

  • contacts: search by email was failing with GroupContacts

22.2.1 (2018-08-09)

Bug Fixes

  • contact: device contact with null name in iOS was corrupting the DB

22.2.0 (2018-07-24)

Features

  • contacts: allow to create/update/delete a group contact in the WAC

22.1.2 (2018-07-23)

Bug Fixes

  • typings: change connect() result to object and add emitter to Chat

22.1.1 (2018-07-23)

Bug Fixes

  • typings: change _connect() response and add EventEmitter to Chat

  • typings: chatManager and fix createSession

  • typings: FileManager typings

22.1.0 (2018-07-18)

Features

  • user-groups: enables resolve the name of a group using the groupId

22.0.0 (2018-07-05)

Features

  • session: add new API for creating a Sippo session

BREAKING CHANGES

  • session: Sippo.createSession now allows creating the session only with a token with a simpler API. See Sippo.createSession API doc for more information

21.1.0 (2018-07-04)

Bug Fixes

  • usersgroup: use update-participant event when a group inserts a user as participant

Features

  • groups: create a group manager to be able to get the groups from WAC

21.0.4 (2018-07-03)

Bug Fixes

  • send of the meeting sms is managed by the webphone

21.0.3 (2018-07-03)

Bug Fixes

  • conference: cancel invitation was not working with invitations with response code

21.0.2 (2018-07-03)

Bug Fixes

  • add toggle video function to Conference

21.0.1 (2018-07-02)

Bug Fixes

  • export ConferenceStatus

21.0.0 (2018-07-02)

Bug Fixes

  • conference: the invitation can’t be canceled if it already has a response

Features

  • conferencelog: use wac-uri of each participant in each conference entry

BREAKING CHANGES

  • conferencelog: The conference entry uses address instead of userId. The address is a wac-uri, his values can be: ‘wac-user:’, ‘wac-group’ or ‘tel:’.

20.0.1 (2018-06-26)

Performance Improvements

  • e2e-test: reduce mocha test timeout

20.0.0 (2018-06-21)

Bug Fixes

  • remove sessionConfig.wacURI option in Sippo.createSession

  • session: remove Session.Error and Session.Status

  • remove Sippo.attachMediaStream helper method

  • remove support for specifying default media constraints when creating the session

  • calls: remove deprecated functionalities from ManagedStream

  • calls: remove deprecated methods from CallManager

  • calls: remove deprecated methods from Conference

  • calls: remove old call API

  • calls: remove old call log API

  • chat: remove old chat and filetransfer API

  • session: remove session.capabilities property

  • session: remove session.getURI()

BREAKING CHANGES

  • Specifying the media constrains on session creation is now not supported. Please refer to CallManager and ConferenceManager documentation for information about how default media constraints are specified now

  • Sippo.attachMediaStream method has been removed. You must directly attach the streams to elements e.g.: element.srcObject = stream

  • calls: The methods for using conferences from CallManager have been removed. They are now available at ConferenceManager

  • chat: The old chat and filetransfer API has been removed. See session.getChatManager() and session.getFileManager() to get more information about how to use the new API

  • calls: Old call log API has been removed. See CallManager documentation to learn how to use new call log API

  • session: session.getURI() has been removed. Use Session.getGatewayUsername()

  • calls: The methods and events marked as deprecated in Conference have been removed. See Conference API documentation to see the new API

  • session: session.capabilities has been removed. Use session.getCapabilities() instead

  • calls: The old call API was removed. See CallManager documentation for information about how new API is used

  • calls: The next elements have been removed from ManagedStream class * “unmute” and “mute” events have been removed. muteAudio, muteVideo and muteScreen are synchronous method so events make no sense. * managedStream.mute() and managedStream.unmute() have been removed. Use muteAudio, muteVideo or muteScreen instead. * managedStream.stream() has been removed. Use managedStream.mediaStream instead. * managedStream.type() has been removed. Use hasAudioTracks, hasVideoTracks and hasScreenTracks methods instead. * ManagedStream.State() and managedStream.state have been removed. Now ManagedStream object don’t keep the state of the MediaStream.

  • In Sippo.createSession, sessionConfig.wacURI option is not supported anymore. Use sessionConfig.wacUri instead

  • session: Session.Status and Session.Error have been removed. Use Sippo.SessionStatus and Sippo.SessionError instead

19.3.8 (2018-06-20)

Bug Fixes

  • contact: isEditable is not a function, it is a getter

19.3.7 (2018-06-20)

Bug Fixes

  • contact: fix the Contact’s isEditable and do not freeze non editable contacts

19.3.6 (2018-06-20)

Bug Fixes

  • calls: show a stream audio, video or screen as muted when every track is muted

19.3.5 (2018-06-20)

Bug Fixes

  • use suitable link to builders in contacts e2e tests

19.3.4 (2018-06-18)

Bug Fixes

  • conferencelog: insert the new conference log entry to the beginning of the list

19.3.3 (2018-06-18)

Bug Fixes

  • calls: mark methods related with ManagedStreamState as deprecated

  • add deprecation warnings in some deprecated methods in Session

  • add Sippo.StreamRecorderStatus and add a deprecation message

  • remove deprecation warning from conference.addVideo method

19.3.2 (2018-06-15)

Bug Fixes

  • change ManagedStream.id to ManagedStream.getId()

19.3.1 (2018-06-15)

Bug Fixes

  • generate an unique id to identify the stream

19.3.0 (2018-06-13)

Features

  • conference: new Invitation object

19.2.1 (2018-06-11)

Bug Fixes

  • contacts: proper disconnect session in e2e tests

  • contacts: replace e2e test contact injection

  • e2e-test: update database-manager dependency

  • user-groups: update test to groupId

19.2.0 (2018-06-11)

Bug Fixes

  • conferencelog: add new method to each invite in conference log object

  • conferencelog: add users in transfer as participants of a conference

  • conferencelog: added decorateConferenceLog to the list

  • conferencelog: added getParticipants method to the conference log

  • conferencelog: allow to order and limit the conference log result

  • conferencelog: fix pr comments

  • conferencelog: fix Pr comments

  • conferencelog: get invites and transfers using methods

  • conferencelog: insert mediatypes in decorate conference

  • conferencelog: remove unnecessary params on fetch function

  • conferencelog: rename getParticipants to getCandidates in each invite

  • conferencelog: rename two properties in conference log object

  • conferencelog: save conference logs retrieved

  • conferencelog: use the createdAt value of the last conference to get more objects

Features

  • conferencelog: added new conferenceLog to manage the conference history

19.1.0 (2018-06-06)

Bug Fixes

  • contacts: fix eslint problems

Features

  • contacts: sync all contacts if there’re lots of contacts to update

19.0.1 (2018-06-04)

Bug Fixes

  • conference: invitation request cancel was being ignored

19.0.0 (2018-06-01)

Bug Fixes

  • remove support for IE

  • update webrtc-adapter to version 6.2.1

Features

  • oracle: apply oracle stack changes to new stack

  • oracle: update oracle stack to 2018-04-10 version

BREAKING CHANGES

  • IE is not supported anymore

18.9.2 (2018-05-31)

Bug Fixes

  • conference: change error message when an invite is canceled

18.9.1 (2018-05-30)

Bug Fixes

  • wacstack: add a new log message when an error occurs updating the session

18.9.0 (2018-05-22)

Features

  • conference: add new helper methods in conference class

18.8.1 (2018-04-30)

Bug Fixes

  • resolve requestInvitation with the proper format

18.8.0 (2018-04-17)

Features

  • add new file sharing API

18.7.9 (2018-04-11)

Reverts

  • Revert “Allow to create a ContactManager with the Sippo Session disconnected”

18.7.8 (2018-04-03)

Features

  • export ChatMessageType in the Sippo object

18.7.7 (2018-04-03)

Features

  • make the changes introduced by QSSQUOB-55 backward compatible with old QSS versions

18.7.6 (2018-04-02)

Bug Fixes

  • add missing getRemoteGatewayUser method in the call object passed with the invitation request

18.7.5 (2018-03-28)

Features

  • now Conference.inviteParticipant receives the mediaTypes of the invitation and it does a Conference MediaTypes upgrade if needed

18.7.4 (2018-03-27)

Bug Fixes

  • set isLocal to true on Conference’s local ManagedStreams

18.7.3 (2018-03-27)

Features

  • allow to create a ContactManager with the Sippo Session disconnected

18.7.2 (2018-03-22)

Features

  • add mediaTypes and response code to the invitation. The remove of canceled invitations are managed from client

18.7.1 (2018-03-12)

Features

  • export SessionError and SessionStatus from the Sippo object

18.7.0 (2018-03-08)

Features

  • add new API for making a unattended call transfer

  • add new e2e tests for ringing group

  • add new e2e tests for group chat

18.6.0 (2018-03-06)

Features

  • add new API for calls

18.5.1 (2018-03-02)

Bug Fixes

  • contacts: fix situation when calling the Contact.presence getter before the userResolver had returned the associated users

18.5.0 (2018-02-27)

Features

  • whiteboard: migration to D3 v4. Now objects are selected and deleted on pointer down events

18.4.5 (2018-02-05)

Bug Fixes

  • oracle: fix problem holding calls in Oracle. Local media was not being released during call on hold

18.4.4 (2018-02-02)

Bug Fixes

  • media: fix camera change was not working in Safari. It needs deviceId: {exact: “XXXX”} in the mediaConstraints

18.4.3 (2018-02-02)

Bug Fixes

  • oracle: fix problem holding calls in Oracle

18.4.2 (2018-01-31)

Bug Fixes

  • fix wrongly mixing @activeInputDevice and @activeVideoInputDevice

18.4.1 (2018-01-23)

Bug Fixes

  • calls: answering an audio call with call.connect({audio: true, video:true}) was activating the camera and showing the local video stream

18.4.0 (2018-01-22)

Features

  • janus: add Safari IE support on JT stack

18.3.20 (2018-01-22)

Bug Fixes

  • calls: unable to replace callee video with custom stream

18.3.19 (2018-01-22)

Bug Fixes

  • janus: remove uncaught rejection message when a Janus conference ends

18.3.18 (2018-01-22)

Features

  • conference: use empty owner to identify public room

18.3.17 (2018-01-22)

Bug Fixes

  • calls: show the callee name even if the user not exist and triggers an error message

18.3.16 (2018-01-17)

Features

  • media: allow to change cameras after selecting the default camera with media constraints

18.3.15 (2018-01-12)

Bug Fixes

  • wacstack: fix issue where uglify was changing the event name when resending it to the wac contact service

18.3.14 (2017-12-22)

Bug Fixes

  • contacts: delete contacts and hide them when user removes contact permission in the app

18.3.13 (2017-12-21)

Bug Fixes

  • contacts: don’t send the presence property to update a contact

18.3.12 (2017-12-14)

Bug Fixes

  • ios: use long polling instead websocket only if using iOS < 10.3.3, as the bug originating QA-87 was fixed in this version

18.3.11 (2017-12-12)

Bug Fixes

  • screensharing: application not ask to install screen sharing plugin if it is not installed

18.3.10 (2017-12-12)

Features

  • session: allow the transition from “suspended” to “connecting” state in Sippo Session

18.3.9 (2017-12-12)

Bug Fixes

  • contacts: fill device cache only when the sync process was OK

18.3.8 (2017-12-12)

Features

  • contacts: limit to 10 the number of the phones in each contact

18.3.3 (2017-11-22)

Bug Fixes

  • janus: subscription not removed when user leaves the JT room

Features

  • oracle: update Oracle stack to SDK 7.2.0.1.2

18.3.2 (2017-11-23)

Features

  • whiteboard: add a new default value to the whiteboard to change line width

18.3.1 (2017-11-23)

Features

  • conference: add new e2e test for conferences

18.3.0 (2017-11-20)

Features

  • chat: add new chat API

18.2.3 (2017-11-17)

Features

  • add new test end2end for presences

18.2.2 (2017-11-17)

Features

  • add new test end2end for contacts

18.2.1 (2017-11-13)

Features

  • add new test end2end for calls

18.2.0 (2017-11-09)

Features

  • oracle: add Oracle call rehydration

18.1.3 (2017-11-09)

Features

  • improve Safari and Edge support

18.1.2 (2017-11-09)

Bug Fixes

  • calllog: call log does not provide difference between missed and rejected calls

18.1.1 (2017-11-02)

Code Refactoring

  • remove .default export in setStack script

18.1.0 (2017-11-02)

Features

  • add session end to end tests

  • add PromiseQueue class to handle suspend and resume calls

18.0.2 (2017-10-31)

Bug Fixes

  • fix bug introduced in session management

18.0.1 (2017-10-30)

Bug Fixes

  • auth: modify login workflow in ksgw token based authentication

18.0.0 (2017-10-27)

Features

  • major API updates and improvements

BREAKING CHANGES

  • API changes may require updates to existing applications

17.3.0 (2017-10-27)

Features

  • conference: add conference hold and resume

17.2.5 (2017-10-27)

Bug Fixes

  • conference: unable to request a conference invitation to a non user

17.2.4 (2017-10-24)

Bug Fixes

  • tests: in test e2e, it’s not necessary a fake smtp server

17.2.3 (2017-10-19)

Bug Fixes

  • dtmf: update RTCDTMFSender access

17.2.2 (2017-10-17)

Bug Fixes

  • session: fix bug when ‘geturi’ capability doesn’t exist in session.connect

17.2.1 (2017-10-17)

Features

  • testing: add environment for e2e test

17.2.0 (2017-10-17)

Features

  • alu: update ALU SDK

  • alu: add ALU call push & pull

17.1.1 (2017-10-16)

Bug Fixes

  • whiteboard: whiteboard fails to start on remote user

17.1.0 (2017-10-04)

Features

  • whiteboard: add undo/redo whiteboard methods

17.0.5 (2017-10-04)

Bug Fixes

  • calls: caller keep ringing when the callee has denied the media

17.0.4 (2017-09-28)

Features

  • session: add new error to Sippo Session (AlreadyLogged)

17.0.3 (2017-09-27)

Bug Fixes

  • calls: fix incoming call notifications. Bug introduced in 17.0.1

17.0.2 (2017-09-27)

Bug Fixes

  • calls: use gatewayUsername field to route outgoing calls

17.0.1 (2017-09-27)

Bug Fixes

  • contacts: include “name” field on fake resolved contacts

17.0.0 (2017-09-26)

BREAKING CHANGES

  • conference: Conference streams are indexed by gateway username instead User instances

16.1.0 (2017-09-26)

Features

  • calllog: rewrite of call log functionality

16.0.12 (2017-09-21)

Features

  • contacts: add new method to retrieve a contact given an email

16.0.11 (2017-09-19)

Bug Fixes

  • calls: resolve to GW username before executing call transfer

16.0.10 (2017-09-19)

Bug Fixes

  • janus: enhance user disconnected detection

16.0.9 (2017-09-19)

Bug Fixes

  • exsip: abort ExSip transference when an error accessing media happens

16.0.7 (2017-09-19)

Bug Fixes

  • catch incoming call error when no media permissions are given