@webex/plugin-meetings 1.149.0 → 1.150.1

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.
@@ -20,8 +20,15 @@ var MediaSharesUtils = {};
20
20
  MediaSharesUtils.parse = function (mediaShares) {
21
21
  if (mediaShares) {
22
22
  return {
23
- contentId: MediaSharesUtils.getContentId(mediaShares),
24
- disposition: MediaSharesUtils.getDisposition(mediaShares)
23
+ content: {
24
+ beneficiaryId: MediaSharesUtils.getContentBeneficiaryId(mediaShares),
25
+ disposition: MediaSharesUtils.getContentDisposition(mediaShares)
26
+ },
27
+ whiteboard: {
28
+ beneficiaryId: MediaSharesUtils.getWhiteboardBeneficiaryId(mediaShares),
29
+ disposition: MediaSharesUtils.getWhiteboardDisposition(mediaShares),
30
+ resourceUrl: MediaSharesUtils.getWhiteboardResourceUrl(mediaShares)
31
+ }
25
32
  };
26
33
  }
27
34
 
@@ -45,16 +52,27 @@ MediaSharesUtils.getMediaShares = function (oldShare, newShare) {
45
52
  };
46
53
  };
47
54
  /**
48
- * get the floor disposition (released, granted)
55
+ * get the content floor disposition (released, granted)
49
56
  * @param {Object} mediaShares
50
57
  * @returns {Boolean} disposition
51
58
  */
52
59
 
53
60
 
54
- MediaSharesUtils.getDisposition = function (mediaShares) {
61
+ MediaSharesUtils.getContentDisposition = function (mediaShares) {
55
62
  var contentFloor = MediaSharesUtils.extractContentFloor(mediaShares);
56
63
  return contentFloor ? contentFloor.disposition : null;
57
64
  };
65
+ /**
66
+ * get the whiteboard floor disposition (released, granted)
67
+ * @param {Object} mediaShares
68
+ * @returns {Boolean} disposition
69
+ */
70
+
71
+
72
+ MediaSharesUtils.getWhiteboardDisposition = function (mediaShares) {
73
+ var whiteboardFloor = MediaSharesUtils.extractWhiteboardFloor(mediaShares);
74
+ return whiteboardFloor ? whiteboardFloor.disposition : null;
75
+ };
58
76
  /**
59
77
  * extract the content property from media shares
60
78
  * @param {Object} mediaShares
@@ -72,18 +90,34 @@ MediaSharesUtils.extractContent = function (mediaShares) {
72
90
  }) || null;
73
91
  };
74
92
  /**
75
- * extract the floor property from content object
76
- * @param {Object} content
93
+ * extract the whiteboard property from media shares
94
+ * @param {Object} mediaShares
77
95
  * @returns {Object}
78
96
  */
79
97
 
80
98
 
81
- MediaSharesUtils.extractFloor = function (content) {
82
- if (!content) {
99
+ MediaSharesUtils.extractWhiteboard = function (mediaShares) {
100
+ if (!mediaShares || !mediaShares.length) {
83
101
  return null;
84
102
  }
85
103
 
86
- return content.floor;
104
+ return mediaShares.find(function (share) {
105
+ return share.name === _constants.WHITEBOARD;
106
+ }) || null;
107
+ };
108
+ /**
109
+ * extract the media stream floor property from content object
110
+ * @param {Object} mediaStream
111
+ * @returns {Object}
112
+ */
113
+
114
+
115
+ MediaSharesUtils.extractFloor = function (mediaStream) {
116
+ if (!mediaStream) {
117
+ return null;
118
+ }
119
+
120
+ return mediaStream.floor;
87
121
  };
88
122
  /**
89
123
  * extract the content's floor from media shares
@@ -97,13 +131,24 @@ MediaSharesUtils.extractContentFloor = function (mediaShares) {
97
131
  return MediaSharesUtils.extractFloor(content);
98
132
  };
99
133
  /**
100
- * get who is sharing from media shares
134
+ * extract the whiteboard's floor from media shares
101
135
  * @param {Object} mediaShares
102
136
  * @returns {Object}
103
137
  */
104
138
 
105
139
 
106
- MediaSharesUtils.getContentId = function (mediaShares) {
140
+ MediaSharesUtils.extractWhiteboardFloor = function (mediaShares) {
141
+ var whiteboard = MediaSharesUtils.extractWhiteboard(mediaShares);
142
+ return MediaSharesUtils.extractFloor(whiteboard);
143
+ };
144
+ /**
145
+ * get who is sharing from media shares (content)
146
+ * @param {Object} mediaShares
147
+ * @returns {Object}
148
+ */
149
+
150
+
151
+ MediaSharesUtils.getContentBeneficiaryId = function (mediaShares) {
107
152
  var contentFloor = MediaSharesUtils.extractContentFloor(mediaShares);
108
153
 
109
154
  if (!contentFloor || !contentFloor.beneficiary) {
@@ -112,6 +157,38 @@ MediaSharesUtils.getContentId = function (mediaShares) {
112
157
 
113
158
  return contentFloor.beneficiary.id;
114
159
  };
160
+ /**
161
+ * get who is sharing from media shares (whiteboard)
162
+ * @param {Object} mediaShares
163
+ * @returns {Object}
164
+ */
165
+
166
+
167
+ MediaSharesUtils.getWhiteboardBeneficiaryId = function (mediaShares) {
168
+ var whiteboardFloor = MediaSharesUtils.extractWhiteboardFloor(mediaShares);
169
+
170
+ if (!whiteboardFloor || !whiteboardFloor.beneficiary) {
171
+ return null;
172
+ }
173
+
174
+ return whiteboardFloor.beneficiary.id;
175
+ };
176
+ /**
177
+ * get the which whiteboard is being shared via resource url
178
+ * @param {Object} mediaShares
179
+ * @returns {Object}
180
+ */
181
+
182
+
183
+ MediaSharesUtils.getWhiteboardResourceUrl = function (mediaShares) {
184
+ var whiteboard = MediaSharesUtils.extractWhiteboard(mediaShares);
185
+
186
+ if (!whiteboard || !whiteboard.resourceUrl) {
187
+ return null;
188
+ }
189
+
190
+ return whiteboard.resourceUrl;
191
+ };
115
192
 
116
193
  var _default = MediaSharesUtils;
117
194
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"sources":["mediaSharesUtils.js"],"names":["MediaSharesUtils","parse","mediaShares","contentId","getContentId","disposition","getDisposition","getMediaShares","oldShare","newShare","previous","current","contentFloor","extractContentFloor","extractContent","length","find","share","name","CONTENT","extractFloor","content","floor","beneficiary","id"],"mappings":";;;;;;;;;;AAAA;;AAEA,IAAMA,gBAAgB,GAAG,EAAzB;AAEA;AACA;AACA;AACA;AACA;;AACAA,gBAAgB,CAACC,KAAjB,GAAyB,UAACC,WAAD,EAAiB;AACxC,MAAIA,WAAJ,EAAiB;AACf,WAAO;AACLC,MAAAA,SAAS,EAAEH,gBAAgB,CAACI,YAAjB,CAA8BF,WAA9B,CADN;AAELG,MAAAA,WAAW,EAAEL,gBAAgB,CAACM,cAAjB,CAAgCJ,WAAhC;AAFR,KAAP;AAID;;AAED,SAAO,IAAP;AACD,CATD;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;;;AACAF,gBAAgB,CAACO,cAAjB,GAAkC,UAACC,QAAD,EAAWC,QAAX,EAAwB;AACxD,MAAMC,QAAQ,GAAGF,QAAQ,IAAIR,gBAAgB,CAACC,KAAjB,CAAuBO,QAAvB,CAA7B;AACA,MAAMG,OAAO,GAAGF,QAAQ,IAAIT,gBAAgB,CAACC,KAAjB,CAAuBQ,QAAvB,CAA5B;AAEA,SAAO;AACLC,IAAAA,QAAQ,EAARA,QADK;AAELC,IAAAA,OAAO,EAAPA;AAFK,GAAP;AAID,CARD;AAUA;AACA;AACA;AACA;AACA;;;AACAX,gBAAgB,CAACM,cAAjB,GAAkC,UAACJ,WAAD,EAAiB;AACjD,MAAMU,YAAY,GAAGZ,gBAAgB,CAACa,mBAAjB,CAAqCX,WAArC,CAArB;AAEA,SAAOU,YAAY,GAAGA,YAAY,CAACP,WAAhB,GAA8B,IAAjD;AACD,CAJD;AAMA;AACA;AACA;AACA;AACA;;;AACAL,gBAAgB,CAACc,cAAjB,GAAkC,UAACZ,WAAD,EAAiB;AACjD,MAAI,CAACA,WAAD,IAAgB,CAACA,WAAW,CAACa,MAAjC,EAAyC;AACvC,WAAO,IAAP;AACD;;AAED,SAAOb,WAAW,CAACc,IAAZ,CAAiB,UAACC,KAAD;AAAA,WAAWA,KAAK,CAACC,IAAN,KAAeC,kBAA1B;AAAA,GAAjB,KAAuD,IAA9D;AACD,CAND;AAQA;AACA;AACA;AACA;AACA;;;AACAnB,gBAAgB,CAACoB,YAAjB,GAAgC,UAACC,OAAD,EAAa;AAC3C,MAAI,CAACA,OAAL,EAAc;AACZ,WAAO,IAAP;AACD;;AAED,SAAOA,OAAO,CAACC,KAAf;AACD,CAND;AAQA;AACA;AACA;AACA;AACA;;;AACAtB,gBAAgB,CAACa,mBAAjB,GAAuC,UAACX,WAAD,EAAiB;AACtD,MAAMmB,OAAO,GAAGrB,gBAAgB,CAACc,cAAjB,CAAgCZ,WAAhC,CAAhB;AAEA,SAAOF,gBAAgB,CAACoB,YAAjB,CAA8BC,OAA9B,CAAP;AACD,CAJD;AAMA;AACA;AACA;AACA;AACA;;;AACArB,gBAAgB,CAACI,YAAjB,GAAgC,UAACF,WAAD,EAAiB;AAC/C,MAAMU,YAAY,GAAGZ,gBAAgB,CAACa,mBAAjB,CAAqCX,WAArC,CAArB;;AAEA,MAAI,CAACU,YAAD,IAAiB,CAACA,YAAY,CAACW,WAAnC,EAAgD;AAC9C,WAAO,IAAP;AACD;;AAED,SAAOX,YAAY,CAACW,WAAb,CAAyBC,EAAhC;AACD,CARD;;eAUexB,gB","sourcesContent":["import {CONTENT} from '../constants';\n\nconst MediaSharesUtils = {};\n\n/**\n * parses the relevant values for mediaShares: contentId, disposition\n * @param {Object} mediaShares\n * @returns {undefined}\n */\nMediaSharesUtils.parse = (mediaShares) => {\n if (mediaShares) {\n return {\n contentId: MediaSharesUtils.getContentId(mediaShares),\n disposition: MediaSharesUtils.getDisposition(mediaShares)\n };\n }\n\n return null;\n};\n\n/**\n * get the previous and current mediaShares values parsed, as well as the boolean updates\n * @param {Object} oldShare\n * @param {Object} newShare\n * @returns {Object}\n * previous: {Object} old share, current: {Object} new share,\n */\nMediaSharesUtils.getMediaShares = (oldShare, newShare) => {\n const previous = oldShare && MediaSharesUtils.parse(oldShare);\n const current = newShare && MediaSharesUtils.parse(newShare);\n\n return {\n previous,\n current\n };\n};\n\n/**\n * get the floor disposition (released, granted)\n * @param {Object} mediaShares\n * @returns {Boolean} disposition\n */\nMediaSharesUtils.getDisposition = (mediaShares) => {\n const contentFloor = MediaSharesUtils.extractContentFloor(mediaShares);\n\n return contentFloor ? contentFloor.disposition : null;\n};\n\n/**\n * extract the content property from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.extractContent = (mediaShares) => {\n if (!mediaShares || !mediaShares.length) {\n return null;\n }\n\n return mediaShares.find((share) => share.name === CONTENT) || null;\n};\n\n/**\n * extract the floor property from content object\n * @param {Object} content\n * @returns {Object}\n */\nMediaSharesUtils.extractFloor = (content) => {\n if (!content) {\n return null;\n }\n\n return content.floor;\n};\n\n/**\n * extract the content's floor from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.extractContentFloor = (mediaShares) => {\n const content = MediaSharesUtils.extractContent(mediaShares);\n\n return MediaSharesUtils.extractFloor(content);\n};\n\n/**\n * get who is sharing from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.getContentId = (mediaShares) => {\n const contentFloor = MediaSharesUtils.extractContentFloor(mediaShares);\n\n if (!contentFloor || !contentFloor.beneficiary) {\n return null;\n }\n\n return contentFloor.beneficiary.id;\n};\n\nexport default MediaSharesUtils;\n"]}
1
+ {"version":3,"sources":["mediaSharesUtils.js"],"names":["MediaSharesUtils","parse","mediaShares","content","beneficiaryId","getContentBeneficiaryId","disposition","getContentDisposition","whiteboard","getWhiteboardBeneficiaryId","getWhiteboardDisposition","resourceUrl","getWhiteboardResourceUrl","getMediaShares","oldShare","newShare","previous","current","contentFloor","extractContentFloor","whiteboardFloor","extractWhiteboardFloor","extractContent","length","find","share","name","CONTENT","extractWhiteboard","WHITEBOARD","extractFloor","mediaStream","floor","beneficiary","id"],"mappings":"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","sourcesContent":["import {CONTENT, WHITEBOARD} from '../constants';\n\nconst MediaSharesUtils = {};\n\n/**\n * parses the relevant values for mediaShares: contentId, disposition\n * @param {Object} mediaShares\n * @returns {undefined}\n */\nMediaSharesUtils.parse = (mediaShares) => {\n if (mediaShares) {\n return {\n content: {\n beneficiaryId: MediaSharesUtils.getContentBeneficiaryId(mediaShares),\n disposition: MediaSharesUtils.getContentDisposition(mediaShares)\n },\n whiteboard: {\n beneficiaryId: MediaSharesUtils.getWhiteboardBeneficiaryId(mediaShares),\n disposition: MediaSharesUtils.getWhiteboardDisposition(mediaShares),\n resourceUrl: MediaSharesUtils.getWhiteboardResourceUrl(mediaShares)\n }\n };\n }\n\n return null;\n};\n\n/**\n * get the previous and current mediaShares values parsed, as well as the boolean updates\n * @param {Object} oldShare\n * @param {Object} newShare\n * @returns {Object}\n * previous: {Object} old share, current: {Object} new share,\n */\nMediaSharesUtils.getMediaShares = (oldShare, newShare) => {\n const previous = oldShare && MediaSharesUtils.parse(oldShare);\n const current = newShare && MediaSharesUtils.parse(newShare);\n\n return {\n previous,\n current\n };\n};\n\n/**\n * get the content floor disposition (released, granted)\n * @param {Object} mediaShares\n * @returns {Boolean} disposition\n */\nMediaSharesUtils.getContentDisposition = (mediaShares) => {\n const contentFloor = MediaSharesUtils.extractContentFloor(mediaShares);\n\n return contentFloor ? contentFloor.disposition : null;\n};\n\n/**\n * get the whiteboard floor disposition (released, granted)\n * @param {Object} mediaShares\n * @returns {Boolean} disposition\n */\nMediaSharesUtils.getWhiteboardDisposition = (mediaShares) => {\n const whiteboardFloor = MediaSharesUtils.extractWhiteboardFloor(mediaShares);\n\n return whiteboardFloor ? whiteboardFloor.disposition : null;\n};\n\n/**\n * extract the content property from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.extractContent = (mediaShares) => {\n if (!mediaShares || !mediaShares.length) {\n return null;\n }\n\n return mediaShares.find((share) => share.name === CONTENT) || null;\n};\n\n/**\n * extract the whiteboard property from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.extractWhiteboard = (mediaShares) => {\n if (!mediaShares || !mediaShares.length) {\n return null;\n }\n\n return mediaShares.find((share) => share.name === WHITEBOARD) || null;\n};\n\n/**\n * extract the media stream floor property from content object\n * @param {Object} mediaStream\n * @returns {Object}\n */\nMediaSharesUtils.extractFloor = (mediaStream) => {\n if (!mediaStream) {\n return null;\n }\n\n return mediaStream.floor;\n};\n\n/**\n * extract the content's floor from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.extractContentFloor = (mediaShares) => {\n const content = MediaSharesUtils.extractContent(mediaShares);\n\n return MediaSharesUtils.extractFloor(content);\n};\n\n/**\n * extract the whiteboard's floor from media shares\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.extractWhiteboardFloor = (mediaShares) => {\n const whiteboard = MediaSharesUtils.extractWhiteboard(mediaShares);\n\n return MediaSharesUtils.extractFloor(whiteboard);\n};\n\n/**\n * get who is sharing from media shares (content)\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.getContentBeneficiaryId = (mediaShares) => {\n const contentFloor = MediaSharesUtils.extractContentFloor(mediaShares);\n\n if (!contentFloor || !contentFloor.beneficiary) {\n return null;\n }\n\n return contentFloor.beneficiary.id;\n};\n\n/**\n * get who is sharing from media shares (whiteboard)\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.getWhiteboardBeneficiaryId = (mediaShares) => {\n const whiteboardFloor = MediaSharesUtils.extractWhiteboardFloor(mediaShares);\n\n if (!whiteboardFloor || !whiteboardFloor.beneficiary) {\n return null;\n }\n\n return whiteboardFloor.beneficiary.id;\n};\n\n/**\n * get the which whiteboard is being shared via resource url\n * @param {Object} mediaShares\n * @returns {Object}\n */\nMediaSharesUtils.getWhiteboardResourceUrl = (mediaShares) => {\n const whiteboard = MediaSharesUtils.extractWhiteboard(mediaShares);\n\n if (!whiteboard || !whiteboard.resourceUrl) {\n return null;\n }\n\n return whiteboard.resourceUrl;\n};\n\nexport default MediaSharesUtils;\n"]}
@@ -1580,7 +1580,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1580
1580
  }
1581
1581
  /**
1582
1582
  * Set up the locus info media shares listener
1583
- * update content sharing id value for members, and updates the member
1583
+ * update content and whiteboard sharing id value for members, and updates the member
1584
1584
  * notifies consumer with members:content:update {activeContentSharingId, endedContentSharingId}
1585
1585
  * @returns {undefined}
1586
1586
  * @private
@@ -1597,10 +1597,12 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1597
1597
  var _payload$previous, _payload$previous2;
1598
1598
 
1599
1599
  var _payload$current = payload.current,
1600
- contentId = _payload$current.contentId,
1601
- disposition = _payload$current.disposition;
1600
+ contentShare = _payload$current.content,
1601
+ whiteboardShare = _payload$current.whiteboard;
1602
+ var previousContentShare = (_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.content;
1603
+ var previousWhiteboardShare = (_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.whiteboard;
1602
1604
 
1603
- if (contentId === ((_payload$previous = payload.previous) === null || _payload$previous === void 0 ? void 0 : _payload$previous.contentId) && disposition === ((_payload$previous2 = payload.previous) === null || _payload$previous2 === void 0 ? void 0 : _payload$previous2.disposition)) {
1605
+ if (contentShare.beneficiaryId === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.beneficiaryId) && contentShare.disposition === (previousContentShare === null || previousContentShare === void 0 ? void 0 : previousContentShare.disposition) && whiteboardShare.beneficiaryId === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.beneficiaryId) && whiteboardShare.disposition === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.disposition) && whiteboardShare.resourceUrl === (previousWhiteboardShare === null || previousWhiteboardShare === void 0 ? void 0 : previousWhiteboardShare.resourceUrl)) {
1604
1606
  // nothing changed, so ignore
1605
1607
  // (this happens when we steal presentation from remote)
1606
1608
  return;
@@ -1608,10 +1610,11 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1608
1610
 
1609
1611
  var newShareStatus = _this10.shareStatus; // REMOTE - check if remote started sharing
1610
1612
 
1611
- if (_this10.selfId !== contentId && disposition === _constants.FLOOR_ACTION.GRANTED) {
1613
+ if (_this10.selfId !== contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
1614
+ // CONTENT - sharing content remote
1612
1615
  newShareStatus = _constants.SHARE_STATUS.REMOTE_SHARE_ACTIVE;
1613
- } // LOCAL - check if we started sharing
1614
- else if (_this10.selfId === contentId && disposition === _constants.FLOOR_ACTION.GRANTED) {
1616
+ } // LOCAL - check if we started sharing content
1617
+ else if (_this10.selfId === contentShare.beneficiaryId && contentShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
1615
1618
  var _this10$mediaProperti;
1616
1619
 
1617
1620
  if (((_this10$mediaProperti = _this10.mediaProperties.shareTrack) === null || _this10$mediaProperti === void 0 ? void 0 : _this10$mediaProperti.readyState) === 'ended') {
@@ -1621,10 +1624,17 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1621
1624
  _loggerProxy.default.logger.log('Meeting:index#setUpLocusMediaSharesListener --> Error stopping share: ', error);
1622
1625
  });
1623
1626
  } else {
1627
+ // CONTENT - sharing content local
1624
1628
  newShareStatus = _constants.SHARE_STATUS.LOCAL_SHARE_ACTIVE;
1625
1629
  }
1626
- } // or if sharing has been stopped
1627
- else if (payload.previous && disposition === _constants.FLOOR_ACTION.RELEASED) {
1630
+ } // If we did not hit the cases above, no one is sharng content, so we check if we are sharing whiteboard
1631
+ // There is no concept of local/remote share for whiteboard
1632
+ // It does not matter who requested to share the whiteboard, everyone gets the same view
1633
+ else if (whiteboardShare.disposition === _constants.FLOOR_ACTION.GRANTED) {
1634
+ // WHITEBOARD - sharing whiteboard
1635
+ newShareStatus = _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE;
1636
+ } // or if content share is either released or null and whiteboard share is either released or null, no one is sharing
1637
+ else if ((previousContentShare && contentShare.disposition === _constants.FLOOR_ACTION.RELEASED || contentShare.disposition === null) && (previousWhiteboardShare && whiteboardShare.disposition === _constants.FLOOR_ACTION.RELEASED || whiteboardShare.disposition === null)) {
1628
1638
  newShareStatus = _constants.SHARE_STATUS.NO_SHARE;
1629
1639
  }
1630
1640
 
@@ -1652,6 +1662,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1652
1662
 
1653
1663
  break;
1654
1664
 
1665
+ case _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE:
1666
+ _triggerProxy.default.trigger(_this10, {
1667
+ file: 'meeting/index',
1668
+ function: 'stopWhiteboardShare'
1669
+ }, _constants.EVENT_TRIGGERS.MEETING_STOPPED_SHARING_WHITEBOARD);
1670
+
1671
+ break;
1672
+
1655
1673
  case _constants.SHARE_STATUS.NO_SHARE:
1656
1674
  // nothing to do
1657
1675
  break;
@@ -1671,20 +1689,20 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1671
1689
  file: 'meetings/index',
1672
1690
  function: 'remoteShare'
1673
1691
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_REMOTE, {
1674
- memberId: contentId
1692
+ memberId: contentShare.beneficiaryId
1675
1693
  });
1676
1694
  }; // if a remote participant is stealing the presentation from us
1677
1695
 
1678
1696
 
1679
- if ((_this10$mediaProperti2 = _this10.mediaProperties.mediaDirection) !== null && _this10$mediaProperti2 !== void 0 && _this10$mediaProperti2.sendShare) {
1697
+ if (!((_this10$mediaProperti2 = _this10.mediaProperties.mediaDirection) !== null && _this10$mediaProperti2 !== void 0 && _this10$mediaProperti2.sendShare) || oldShareStatus === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE) {
1698
+ sendStartedSharingRemote();
1699
+ } else {
1680
1700
  _this10.updateShare({
1681
1701
  sendShare: false,
1682
1702
  receiveShare: _this10.mediaProperties.mediaDirection.receiveShare
1683
1703
  }).finally(function () {
1684
1704
  sendStartedSharingRemote();
1685
1705
  });
1686
- } else {
1687
- sendStartedSharingRemote();
1688
1706
  }
1689
1707
 
1690
1708
  break;
@@ -1703,6 +1721,22 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1703
1721
 
1704
1722
  break;
1705
1723
 
1724
+ case _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE:
1725
+ _triggerProxy.default.trigger(_this10, {
1726
+ file: 'meeting/index',
1727
+ function: 'startWhiteboardShare'
1728
+ }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_WHITEBOARD, {
1729
+ resourceUrl: whiteboardShare.resourceUrl,
1730
+ memberId: whiteboardShare.beneficiaryId
1731
+ });
1732
+
1733
+ _metrics.default.postEvent({
1734
+ event: _config.eventType.WHITEBOARD_SHARE_FLOOR_GRANTED,
1735
+ meeting: _this10
1736
+ });
1737
+
1738
+ break;
1739
+
1706
1740
  case _constants.SHARE_STATUS.NO_SHARE:
1707
1741
  // nothing to do
1708
1742
  break;
@@ -1719,7 +1753,24 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
1719
1753
  file: 'meetings/index',
1720
1754
  function: 'remoteShare'
1721
1755
  }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_REMOTE, {
1722
- memberId: contentId
1756
+ memberId: contentShare.beneficiaryId
1757
+ });
1758
+
1759
+ _this10.members.locusMediaSharesUpdate(payload);
1760
+ } else if (newShareStatus === _constants.SHARE_STATUS.WHITEBOARD_SHARE_ACTIVE) {
1761
+ // if we got here, then some remote participant has stolen
1762
+ // the presentation from another remote participant
1763
+ _triggerProxy.default.trigger(_this10, {
1764
+ file: 'meeting/index',
1765
+ function: 'startWhiteboardShare'
1766
+ }, _constants.EVENT_TRIGGERS.MEETING_STARTED_SHARING_WHITEBOARD, {
1767
+ resourceUrl: whiteboardShare.resourceUrl,
1768
+ memberId: whiteboardShare.beneficiaryId
1769
+ });
1770
+
1771
+ _metrics.default.postEvent({
1772
+ event: _config.eventType.WHITEBOARD_SHARE_FLOOR_GRANTED,
1773
+ meeting: _this10
1723
1774
  });
1724
1775
 
1725
1776
  _this10.members.locusMediaSharesUpdate(payload);
@@ -4795,6 +4846,115 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4795
4846
  return _promise.default.reject(error);
4796
4847
  });
4797
4848
  }
4849
+ /**
4850
+ * Start sharing whiteboard given channelUrl
4851
+ * @param {string} channelUrl whiteboard url
4852
+ * @param {String} resourceToken token created by authorize media injector
4853
+ * @returns {Promise}
4854
+ * @public
4855
+ * @memberof Meeting
4856
+ */
4857
+
4858
+ }, {
4859
+ key: "startWhiteboardShare",
4860
+ value: function startWhiteboardShare(channelUrl, resourceToken) {
4861
+ var _this46 = this;
4862
+
4863
+ var whiteboard = this.locusInfo.mediaShares.find(function (element) {
4864
+ return element.name === 'whiteboard';
4865
+ });
4866
+
4867
+ if (!channelUrl) {
4868
+ return _promise.default.reject(new _parameter.default('Cannot share without channelUrl.'));
4869
+ }
4870
+
4871
+ if (whiteboard) {
4872
+ _metrics.default.postEvent({
4873
+ event: _config.eventType.WHITEBOARD_SHARE_INITIATED,
4874
+ meeting: this
4875
+ });
4876
+
4877
+ var body = {
4878
+ disposition: _constants.FLOOR_ACTION.GRANTED,
4879
+ personUrl: this.locusInfo.self.url,
4880
+ deviceUrl: this.deviceUrl,
4881
+ uri: whiteboard.url,
4882
+ resourceUrl: channelUrl
4883
+ };
4884
+
4885
+ if (resourceToken) {
4886
+ body.resourceToken = resourceToken;
4887
+ }
4888
+
4889
+ return this.meetingRequest.changeMeetingFloor(body).then(function () {
4890
+ _this46.isSharing = false;
4891
+ return _promise.default.resolve();
4892
+ }).catch(function (error) {
4893
+ _loggerProxy.default.logger.error('Meeting:index#startWhiteboardShare --> Error ', error);
4894
+
4895
+ _metrics.default.sendOperationalMetric(_constants.METRICS_OPERATIONAL_MEASURES.MEETING_START_WHITEBOARD_SHARE_FAILURE, {
4896
+ correlation_id: _this46.correlationId,
4897
+ locus_id: _this46.locusUrl.split('/').pop(),
4898
+ reason: error.message,
4899
+ stack: error.stack,
4900
+ board: {
4901
+ channelUrl: channelUrl
4902
+ }
4903
+ });
4904
+
4905
+ return _promise.default.reject(error);
4906
+ });
4907
+ }
4908
+
4909
+ return _promise.default.reject(new _parameter.default('Cannot share without whiteboard.'));
4910
+ }
4911
+ /**
4912
+ * Stop sharing whiteboard given channelUrl
4913
+ * @param {string} channelUrl whiteboard url
4914
+ * @returns {Promise}
4915
+ * @public
4916
+ * @memberof Meeting
4917
+ */
4918
+
4919
+ }, {
4920
+ key: "stopWhiteboardShare",
4921
+ value: function stopWhiteboardShare(channelUrl) {
4922
+ var _this47 = this;
4923
+
4924
+ var whiteboard = this.locusInfo.mediaShares.find(function (element) {
4925
+ return element.name === 'whiteboard';
4926
+ });
4927
+
4928
+ if (whiteboard) {
4929
+ _metrics.default.postEvent({
4930
+ event: _config.eventType.WHITEBOARD_SHARE_STOPPED,
4931
+ meeting: this
4932
+ });
4933
+
4934
+ return this.meetingRequest.changeMeetingFloor({
4935
+ disposition: _constants.FLOOR_ACTION.RELEASED,
4936
+ personUrl: this.locusInfo.self.url,
4937
+ deviceUrl: this.deviceUrl,
4938
+ uri: whiteboard.url
4939
+ }).catch(function (error) {
4940
+ _loggerProxy.default.logger.error('Meeting:index#stopWhiteboardShare --> Error ', error);
4941
+
4942
+ _metrics.default.sendOperationalMetric(_constants.METRICS_OPERATIONAL_MEASURES.STOP_WHITEBOARD_SHARE_FAILURE, {
4943
+ correlation_id: _this47.correlationId,
4944
+ locus_id: _this47.locusUrl.split('/').pop(),
4945
+ reason: error.message,
4946
+ stack: error.stack,
4947
+ board: {
4948
+ channelUrl: channelUrl
4949
+ }
4950
+ });
4951
+
4952
+ return _promise.default.reject(error);
4953
+ }).finally(function () {});
4954
+ }
4955
+
4956
+ return _promise.default.reject(new _parameter.default('Cannot stop share without whiteboard.'));
4957
+ }
4798
4958
  /**
4799
4959
  * Start sharing content with server
4800
4960
  * @returns {Promise} see #meetingRequest.changeMeetingFloor
@@ -4805,7 +4965,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4805
4965
  }, {
4806
4966
  key: "share",
4807
4967
  value: function share() {
4808
- var _this46 = this;
4968
+ var _this48 = this;
4809
4969
 
4810
4970
  var content = this.locusInfo.mediaShares.find(function (element) {
4811
4971
  return element.name === _constants.CONTENT;
@@ -4824,14 +4984,14 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4824
4984
  uri: content.url,
4825
4985
  resourceUrl: this.resourceUrl
4826
4986
  }).then(function () {
4827
- _this46.isSharing = true;
4987
+ _this48.isSharing = true;
4828
4988
  return _promise.default.resolve();
4829
4989
  }).catch(function (error) {
4830
4990
  _loggerProxy.default.logger.error('Meeting:index#share --> Error ', error);
4831
4991
 
4832
4992
  _metrics.default.sendOperationalMetric(_constants.METRICS_OPERATIONAL_MEASURES.MEETING_SHARE_FAILURE, {
4833
- correlation_id: _this46.correlationId,
4834
- locus_id: _this46.locusUrl.split('/').pop(),
4993
+ correlation_id: _this48.correlationId,
4994
+ locus_id: _this48.locusUrl.split('/').pop(),
4835
4995
  reason: error.message,
4836
4996
  stack: error.stack
4837
4997
  });
@@ -4870,7 +5030,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4870
5030
  }, {
4871
5031
  key: "stopFloorRequest",
4872
5032
  value: function stopFloorRequest() {
4873
- var _this47 = this;
5033
+ var _this49 = this;
4874
5034
 
4875
5035
  var content = this.locusInfo.mediaShares.find(function (element) {
4876
5036
  return element.name === _constants.CONTENT;
@@ -4884,7 +5044,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4884
5044
 
4885
5045
  _media.default.stopTracks(this.mediaProperties.shareTrack);
4886
5046
 
4887
- if (this.contentId !== this.selfId) {
5047
+ if (content.floor.beneficiary.id !== this.selfId) {
4888
5048
  // remote participant started sharing and caused our sharing to stop, we don't want to send any floor action request in that case
4889
5049
  this.isSharing = false;
4890
5050
  return _promise.default.resolve();
@@ -4900,15 +5060,15 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
4900
5060
  _loggerProxy.default.logger.error('Meeting:index#stopFloorRequest --> Error ', error);
4901
5061
 
4902
5062
  _metrics.default.sendOperationalMetric(_constants.METRICS_OPERATIONAL_MEASURES.STOP_FLOOR_REQUEST_FAILURE, {
4903
- correlation_id: _this47.correlationId,
4904
- locus_id: _this47.locusUrl.split('/').pop(),
5063
+ correlation_id: _this49.correlationId,
5064
+ locus_id: _this49.locusUrl.split('/').pop(),
4905
5065
  reason: error.message,
4906
5066
  stack: error.stack
4907
5067
  });
4908
5068
 
4909
5069
  return _promise.default.reject(error);
4910
5070
  }).finally(function () {
4911
- _this47.isSharing = false;
5071
+ _this49.isSharing = false;
4912
5072
  });
4913
5073
  }
4914
5074
 
@@ -5044,7 +5204,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5044
5204
  }, {
5045
5205
  key: "changeVideoLayout",
5046
5206
  value: function changeVideoLayout(layoutType) {
5047
- var _this48 = this;
5207
+ var _this50 = this;
5048
5208
 
5049
5209
  var renderInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
5050
5210
  var main = renderInfo.main,
@@ -5107,7 +5267,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5107
5267
  content: layoutInfo.content
5108
5268
  }).then(function (response) {
5109
5269
  if (response && response.body && response.body.locus) {
5110
- _this48.locusInfo.onFullLocus(response.body.locus);
5270
+ _this50.locusInfo.onFullLocus(response.body.locus);
5111
5271
  }
5112
5272
  }).catch(function (error) {
5113
5273
  _loggerProxy.default.logger.error('Meeting:index#changeVideoLayout --> Error ', error);
@@ -5124,7 +5284,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5124
5284
  }, {
5125
5285
  key: "setLocalVideoQuality",
5126
5286
  value: function setLocalVideoQuality(level) {
5127
- var _this49 = this;
5287
+ var _this51 = this;
5128
5288
 
5129
5289
  _loggerProxy.default.logger.log("Meeting:index#setLocalVideoQuality --> Setting quality to ".concat(level));
5130
5290
 
@@ -5154,7 +5314,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5154
5314
  var _ref11 = (0, _slicedToArray2.default)(_ref10, 1),
5155
5315
  localStream = _ref11[0];
5156
5316
 
5157
- return _this49.updateVideo({
5317
+ return _this51.updateVideo({
5158
5318
  sendVideo: true,
5159
5319
  receiveVideo: true,
5160
5320
  stream: localStream
@@ -5202,7 +5362,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5202
5362
  }, {
5203
5363
  key: "setMeetingQuality",
5204
5364
  value: function setMeetingQuality(level) {
5205
- var _this50 = this;
5365
+ var _this52 = this;
5206
5366
 
5207
5367
  _loggerProxy.default.logger.log("Meeting:index#setMeetingQuality --> Setting quality to ".concat(level));
5208
5368
 
@@ -5227,18 +5387,18 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5227
5387
  receiveVideo = _this$mediaProperties4.receiveVideo,
5228
5388
  sendVideo = _this$mediaProperties4.sendVideo;
5229
5389
  return (sendVideo ? this.setLocalVideoQuality(level) : _promise.default.resolve()).then(function () {
5230
- return receiveAudio || receiveVideo ? _this50.setRemoteQualityLevel(level) : _promise.default.resolve();
5390
+ return receiveAudio || receiveVideo ? _this52.setRemoteQualityLevel(level) : _promise.default.resolve();
5231
5391
  }).catch(function (error) {
5232
5392
  // From troubleshooting it seems that the stream itself doesn't change the max-fs if the peer connection isn't stable
5233
- _this50.mediaProperties.setLocalQualityLevel(previousLevel.local);
5393
+ _this52.mediaProperties.setLocalQualityLevel(previousLevel.local);
5234
5394
 
5235
- _this50.mediaProperties.setRemoteQualityLevel(previousLevel.remote);
5395
+ _this52.mediaProperties.setRemoteQualityLevel(previousLevel.remote);
5236
5396
 
5237
5397
  _loggerProxy.default.logger.error("Meeting:index#setMeetingQuality --> ".concat(error.message));
5238
5398
 
5239
5399
  _metrics.default.sendOperationalMetric(_constants.METRICS_OPERATIONAL_MEASURES.SET_MEETING_QUALITY_FAILURE, {
5240
- correlation_id: _this50.correlationId,
5241
- locus_id: _this50.locusUrl.split('/').pop(),
5400
+ correlation_id: _this52.correlationId,
5401
+ locus_id: _this52.locusUrl.split('/').pop(),
5242
5402
  reason: error.message,
5243
5403
  stack: error.stack
5244
5404
  }, {
@@ -5262,7 +5422,7 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5262
5422
  }, {
5263
5423
  key: "shareScreen",
5264
5424
  value: function shareScreen() {
5265
- var _this51 = this;
5425
+ var _this53 = this;
5266
5426
 
5267
5427
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
5268
5428
 
@@ -5274,9 +5434,9 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5274
5434
  }, options);
5275
5435
 
5276
5436
  return _media.default.getDisplayMedia(shareConstraints, this.config).then(function (shareStream) {
5277
- return _this51.updateShare({
5437
+ return _this53.updateShare({
5278
5438
  sendShare: true,
5279
- receiveShare: _this51.mediaProperties.mediaDirection.receiveShare,
5439
+ receiveShare: _this53.mediaProperties.mediaDirection.receiveShare,
5280
5440
  stream: shareStream
5281
5441
  });
5282
5442
  }).catch(function (error) {
@@ -5288,8 +5448,8 @@ var Meeting = /*#__PURE__*/function (_StatelessWebexPlugin) {
5288
5448
  // TODO: The getDisplayMedia errors need to be moved inside `media.getDisplayMedia`
5289
5449
  var metricName = _constants.METRICS_OPERATIONAL_MEASURES.GET_DISPLAY_MEDIA_FAILURE;
5290
5450
  var data = {
5291
- correlation_id: _this51.correlationId,
5292
- locus_id: _this51.locusUrl.split('/').pop(),
5451
+ correlation_id: _this53.correlationId,
5452
+ locus_id: _this53.locusUrl.split('/').pop(),
5293
5453
  reason: error.message,
5294
5454
  stack: error.stack
5295
5455
  };