[iOS] Custom CallKit display name
Add ability to provide a display name in the configOverwrite object that when available it will be used to customize the name of the meeting in callkit screen and recent call list. Co-authored-by: Daniel Ornelas <daniel.ob64@gmail.com> Co-authored-by: Lyubo Marinov <lmarinov@atlassian.com>
This commit is contained in:
parent
380909371f
commit
72487fa7c7
|
@ -28,7 +28,37 @@ const WHITELISTED_KEYS = [
|
||||||
'callStatsConfIDNamespace',
|
'callStatsConfIDNamespace',
|
||||||
'callStatsID',
|
'callStatsID',
|
||||||
'callStatsSecret',
|
'callStatsSecret',
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The display name of the CallKit call representing the conference/meeting
|
||||||
|
* associated with this config.js including while the call is ongoing in the
|
||||||
|
* UI presented by CallKit and in the system-wide call history. The property
|
||||||
|
* is meant for use cases in which the room name is not desirable as a
|
||||||
|
* display name for CallKit purposes and the desired display name is not
|
||||||
|
* provided in the form of a JWT callee. As the value is associated with a
|
||||||
|
* conference/meeting, the value makes sense not as a deployment-wide
|
||||||
|
* configuration, only as a runtime configuration override/overwrite
|
||||||
|
* provided by, for example, Jitsi Meet SDK for iOS.
|
||||||
|
*
|
||||||
|
* @type string
|
||||||
|
*/
|
||||||
|
'callDisplayName',
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The UUID of the CallKit call representing the conference/meeting
|
||||||
|
* associated with this config.js. The property is meant for use cases in
|
||||||
|
* which Jitsi Meet is to work with a CallKit call created outside of Jitsi
|
||||||
|
* Meet and to be adopted by Jitsi Meet such as, for example, an incoming
|
||||||
|
* and/or outgoing CallKit call created by Jitsi Meet SDK for iOS
|
||||||
|
* clients/consumers prior to giving control to Jitsi Meet. As the value is
|
||||||
|
* associated with a conference/meeting, the value makes sense not as a
|
||||||
|
* deployment-wide configuration, only as a runtime configuration
|
||||||
|
* override/overwrite provided by, for example, Jitsi Meet SDK for iOS.
|
||||||
|
*
|
||||||
|
* @type string
|
||||||
|
*/
|
||||||
'callUUID',
|
'callUUID',
|
||||||
|
|
||||||
'channelLastN',
|
'channelLastN',
|
||||||
'constraints',
|
'constraints',
|
||||||
'debug',
|
'debug',
|
||||||
|
|
|
@ -237,15 +237,18 @@ function _conferenceWillJoin({ getState }, next, action) {
|
||||||
|
|
||||||
CallKit.startCall(conference.callUUID, url.toString(), hasVideo)
|
CallKit.startCall(conference.callUUID, url.toString(), hasVideo)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
const { room } = state['features/base/conference'];
|
|
||||||
const { callee } = state['features/base/jwt'];
|
const { callee } = state['features/base/jwt'];
|
||||||
const tracks = state['features/base/tracks'];
|
const displayName
|
||||||
const muted = isLocalTrackMuted(tracks, MEDIA_TYPE.AUDIO);
|
= state['features/base/config'].callDisplayName
|
||||||
|
|| (callee && callee.name)
|
||||||
|
|| state['features/base/conference'].room;
|
||||||
|
|
||||||
CallKit.updateCall(
|
const muted
|
||||||
conference.callUUID,
|
= isLocalTrackMuted(
|
||||||
{ displayName: (callee && callee.name) || room });
|
state['features/base/tracks'],
|
||||||
|
MEDIA_TYPE.AUDIO);
|
||||||
|
|
||||||
|
CallKit.updateCall(conference.callUUID, { displayName });
|
||||||
CallKit.setMuted(conference.callUUID, muted);
|
CallKit.setMuted(conference.callUUID, muted);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue