@tencentcloud/trtc-component-wx 1.0.6-beta.5 → 1.0.6-beta.7
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.
- package/miniprogram_dist/trtc-player.js +28 -4
- package/miniprogram_dist/trtc-player.js.map +1 -1
- package/miniprogram_dist/trtc-player.wxml +7 -1
- package/miniprogram_dist/trtc-pusher.js +18 -2
- package/miniprogram_dist/trtc-pusher.js.map +1 -1
- package/miniprogram_dist/trtc-pusher.wxml +3 -1
- package/package.json +4 -4
- package/src/trtc-player.js +29 -5
- package/src/trtc-player.wxml +7 -1
- package/src/trtc-pusher.js +20 -4
- package/src/trtc-pusher.wxml +3 -1
|
@@ -113,15 +113,16 @@ Component({
|
|
|
113
113
|
properties: {
|
|
114
114
|
streamId: String,
|
|
115
115
|
pictureInPictureMode: {
|
|
116
|
-
type: null
|
|
117
|
-
optionalTypes: [String, Array]
|
|
116
|
+
type: null
|
|
118
117
|
},
|
|
119
118
|
pictureInPictureInitPosition: {
|
|
120
119
|
type: String
|
|
121
120
|
},
|
|
122
121
|
enableSystemPip: {
|
|
123
|
-
type:
|
|
124
|
-
|
|
122
|
+
type: Boolean
|
|
123
|
+
},
|
|
124
|
+
enableCasting: {
|
|
125
|
+
type: Boolean
|
|
125
126
|
}
|
|
126
127
|
},
|
|
127
128
|
data: {
|
|
@@ -197,16 +198,22 @@ Component({
|
|
|
197
198
|
InterfaceEventEmitter.off('playerAttributesChange', this.playerAttributesChange);
|
|
198
199
|
InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange);
|
|
199
200
|
},
|
|
201
|
+
emitDocEvent: function emitDocEvent(name, event) {
|
|
202
|
+
this.triggerEvent(name, event && event.detail || {});
|
|
203
|
+
},
|
|
200
204
|
|
|
201
205
|
// 请保持跟 wxml 中绑定的事件名称一致
|
|
202
206
|
_playerStateChange: function _playerStateChange(event) {
|
|
203
207
|
trtc.playerEventHandler(event);
|
|
208
|
+
this.emitDocEvent('statechange', event);
|
|
204
209
|
},
|
|
205
210
|
_playerFullscreenChange: function _playerFullscreenChange(event) {
|
|
206
211
|
trtc.playerFullscreenChange(event);
|
|
212
|
+
this.emitDocEvent('fullscreenchange', event);
|
|
207
213
|
},
|
|
208
214
|
_playerNetStatus: function _playerNetStatus(event) {
|
|
209
215
|
trtc.playerNetStatus(event);
|
|
216
|
+
this.emitDocEvent('netstatus', event);
|
|
210
217
|
},
|
|
211
218
|
_playerAudioVolumeNotify: function _playerAudioVolumeNotify(event) {
|
|
212
219
|
try {
|
|
@@ -214,7 +221,24 @@ Component({
|
|
|
214
221
|
trtc.playerAudioVolumeNotify(event);
|
|
215
222
|
} catch (err) {
|
|
216
223
|
trtcCloud.logger.warn(err);
|
|
224
|
+
} finally {
|
|
225
|
+
this.emitDocEvent('audiovolumenotify', event);
|
|
217
226
|
}
|
|
227
|
+
},
|
|
228
|
+
_playerEnterPictureInPicture: function _playerEnterPictureInPicture(event) {
|
|
229
|
+
this.emitDocEvent('enterpictureinpicture', event);
|
|
230
|
+
},
|
|
231
|
+
_playerLeavePictureInPicture: function _playerLeavePictureInPicture(event) {
|
|
232
|
+
this.emitDocEvent('leavepictureinpicture', event);
|
|
233
|
+
},
|
|
234
|
+
_playerCastingUserSelect: function _playerCastingUserSelect(event) {
|
|
235
|
+
this.emitDocEvent('castinguserselect', event);
|
|
236
|
+
},
|
|
237
|
+
_playerCastingStateChange: function _playerCastingStateChange(event) {
|
|
238
|
+
this.emitDocEvent('castingstatechange', event);
|
|
239
|
+
},
|
|
240
|
+
_playerCastingInterrupt: function _playerCastingInterrupt(event) {
|
|
241
|
+
this.emitDocEvent('castinginterrupt', event);
|
|
218
242
|
}
|
|
219
243
|
}
|
|
220
244
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@tencentcloud/trtc-cloud-wx\"","webpack:///./src/trtc-player.js"],"names":["trtcCloud","TRTCCloud","getTRTCShareInstance","trtc","InterfaceEventEmitter","Component","properties","streamId","String","pictureInPictureMode","type","optionalTypes","Array","pictureInPictureInitPosition","enableSystemPip","Boolean","data","player","TRTCStreamId","soundMode","lifetimes","attached","logger","info","emit","isReady","view","getTRTCStreamId","bindTRTCCloudEvent","detached","unbindTRTCCloudEvent","methods","setTRTCStreamId","id","Promise","resolve","reject","setData","err","playerAttributesChange","event","playerAttributes","callback","JSON","stringify","playerAudioRouteChange","tempArray","split","userId","slice","join","streamType","Number","length","on","off","_playerStateChange","playerEventHandler","_playerFullscreenChange","playerFullscreenChange","_playerNetStatus","playerNetStatus","_playerAudioVolumeNotify","currentTarget","dataset","streamid","streamID","playerAudioVolumeNotify","warn"],"mappings":"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","file":"trtc-player.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 2);\n","module.exports = require(\"@tencentcloud/trtc-cloud-wx\");","import TRTCCloud, {translateTRTCStreamId} from '@tencentcloud/trtc-cloud-wx'\n\nconst trtcCloud = TRTCCloud.getTRTCShareInstance()\nconst trtc = trtcCloud.trtc\nconst InterfaceEventEmitter = trtcCloud.InterfaceEventEmitter\n\nComponent({\n properties: {\n streamId: String,\n pictureInPictureMode: {\n type: null,\n optionalTypes: [String, Array],\n },\n pictureInPictureInitPosition: {\n type: String,\n },\n enableSystemPip: {\n type: null,\n optionalTypes: [Boolean],\n },\n },\n data: {\n player: {},\n TRTCStreamId: '',\n soundMode: ''\n },\n lifetimes: {\n attached() {\n trtcCloud.logger.info('trtc-player attached', this.data.streamId)\n if (this.data.streamId) {\n InterfaceEventEmitter.emit('playerDomReady', {isReady: true, view: this.data.streamId})\n }\n this.data.TRTCStreamId = this.getTRTCStreamId(this.data.streamId)\n this.bindTRTCCloudEvent()\n },\n detached() {\n trtcCloud.logger.info('trtc-player detached', this.data.streamId)\n InterfaceEventEmitter.emit('playerDomReady', {isReady: false, streamId: this.data.streamId})\n this.unbindTRTCCloudEvent()\n }\n },\n\n methods: {\n // todo room uniapp 特供,因为 uniapp 打包导致组件传惨变量名更替 trtc-player 组建内部无法识别\n setTRTCStreamId(id) {\n trtcCloud.logger.info('trtc-player setTRTCStreamId', id)\n return new Promise((resolve, reject) => {\n try {\n this.data.streamId = id\n this.data.TRTCStreamId = this.getTRTCStreamId(id)\n this.setData({streamId: this.data.streamId}, () => {\n trtcCloud.logger.info('trtc-player setTRTCStreamId success', id)\n resolve()\n InterfaceEventEmitter.emit('playerDomReady', {isReady: true, view: id})\n })\n } catch (err) {\n trtcCloud.logger.info('trtc-player setTRTCStreamId fail', id, err)\n reject(err)\n }\n })\n },\n playerAttributesChange(event) {\n const {view, playerAttributes, callback} = event\n trtcCloud.logger.info('trtc-player playerAttributesChange', view, JSON.stringify(playerAttributes), this.data.streamId)\n if (view === this.data.streamId) {\n this.setData({player: playerAttributes}, callback)\n }\n },\n playerAudioRouteChange(event) {\n const { soundMode, callback } = event\n trtcCloud.logger.info('trtc-player playerAudioRouteChange', soundMode)\n this.setData({ soundMode }, callback)\n },\n getTRTCStreamId(streamId) {\n const tempArray = streamId.split('_')\n const userId = tempArray.slice(0, -1).join('_')\n const streamType = Number(tempArray[tempArray.length - 1])\n return translateTRTCStreamId(userId, streamType)\n },\n bindTRTCCloudEvent() {\n InterfaceEventEmitter.on('playerAttributesChange', this.playerAttributesChange, this)\n InterfaceEventEmitter.on('playerAudioRouteChange', this.playerAudioRouteChange, this)\n },\n unbindTRTCCloudEvent() {\n InterfaceEventEmitter.off('playerAttributesChange', this.playerAttributesChange)\n InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange)\n },\n // 请保持跟 wxml 中绑定的事件名称一致\n _playerStateChange(event) {\n trtc.playerEventHandler(event)\n },\n _playerFullscreenChange(event) {\n trtc.playerFullscreenChange(event)\n },\n _playerNetStatus(event) {\n trtc.playerNetStatus(event)\n },\n _playerAudioVolumeNotify(event) {\n try {\n event.currentTarget.dataset.streamid = this.data.player.streamID\n trtc.playerAudioVolumeNotify(event)\n } catch (err) {\n trtcCloud.logger.warn(err)\n }\n },\n }\n})\n"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@tencentcloud/trtc-cloud-wx\"","webpack:///./src/trtc-player.js"],"names":["trtcCloud","TRTCCloud","getTRTCShareInstance","trtc","InterfaceEventEmitter","Component","properties","streamId","String","pictureInPictureMode","type","pictureInPictureInitPosition","enableSystemPip","Boolean","enableCasting","data","player","TRTCStreamId","soundMode","lifetimes","attached","logger","info","emit","isReady","view","getTRTCStreamId","bindTRTCCloudEvent","detached","unbindTRTCCloudEvent","methods","setTRTCStreamId","id","Promise","resolve","reject","setData","err","playerAttributesChange","event","playerAttributes","callback","JSON","stringify","playerAudioRouteChange","tempArray","split","userId","slice","join","streamType","Number","length","on","off","emitDocEvent","name","triggerEvent","detail","_playerStateChange","playerEventHandler","_playerFullscreenChange","playerFullscreenChange","_playerNetStatus","playerNetStatus","_playerAudioVolumeNotify","currentTarget","dataset","streamid","streamID","playerAudioVolumeNotify","warn","_playerEnterPictureInPicture","_playerLeavePictureInPicture","_playerCastingUserSelect","_playerCastingStateChange","_playerCastingInterrupt"],"mappings":"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","file":"trtc-player.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 2);\n","module.exports = require(\"@tencentcloud/trtc-cloud-wx\");","import TRTCCloud, {translateTRTCStreamId} from '@tencentcloud/trtc-cloud-wx'\n\nconst trtcCloud = TRTCCloud.getTRTCShareInstance()\nconst trtc = trtcCloud.trtc\nconst InterfaceEventEmitter = trtcCloud.InterfaceEventEmitter\n\nComponent({\n properties: {\n streamId: String,\n pictureInPictureMode: {\n type: null,\n },\n pictureInPictureInitPosition: {\n type: String,\n },\n enableSystemPip: {\n type: Boolean,\n },\n enableCasting: {\n type: Boolean,\n },\n },\n data: {\n player: {},\n TRTCStreamId: '',\n soundMode: ''\n },\n lifetimes: {\n attached() {\n trtcCloud.logger.info('trtc-player attached', this.data.streamId)\n if (this.data.streamId) {\n InterfaceEventEmitter.emit('playerDomReady', {isReady: true, view: this.data.streamId})\n }\n this.data.TRTCStreamId = this.getTRTCStreamId(this.data.streamId)\n this.bindTRTCCloudEvent()\n },\n detached() {\n trtcCloud.logger.info('trtc-player detached', this.data.streamId)\n InterfaceEventEmitter.emit('playerDomReady', {isReady: false, streamId: this.data.streamId})\n this.unbindTRTCCloudEvent()\n }\n },\n\n methods: {\n // todo room uniapp 特供,因为 uniapp 打包导致组件传惨变量名更替 trtc-player 组建内部无法识别\n setTRTCStreamId(id) {\n trtcCloud.logger.info('trtc-player setTRTCStreamId', id)\n return new Promise((resolve, reject) => {\n try {\n this.data.streamId = id\n this.data.TRTCStreamId = this.getTRTCStreamId(id)\n this.setData({streamId: this.data.streamId}, () => {\n trtcCloud.logger.info('trtc-player setTRTCStreamId success', id)\n resolve()\n InterfaceEventEmitter.emit('playerDomReady', {isReady: true, view: id})\n })\n } catch (err) {\n trtcCloud.logger.info('trtc-player setTRTCStreamId fail', id, err)\n reject(err)\n }\n })\n },\n playerAttributesChange(event) {\n const {view, playerAttributes, callback} = event\n trtcCloud.logger.info('trtc-player playerAttributesChange', view, JSON.stringify(playerAttributes), this.data.streamId)\n if (view === this.data.streamId) {\n this.setData({player: playerAttributes}, callback)\n }\n },\n playerAudioRouteChange(event) {\n const {soundMode, callback} = event\n trtcCloud.logger.info('trtc-player playerAudioRouteChange', soundMode)\n this.setData({soundMode}, callback)\n },\n getTRTCStreamId(streamId) {\n const tempArray = streamId.split('_')\n const userId = tempArray.slice(0, -1).join('_')\n const streamType = Number(tempArray[tempArray.length - 1])\n return translateTRTCStreamId(userId, streamType)\n },\n bindTRTCCloudEvent() {\n InterfaceEventEmitter.on('playerAttributesChange', this.playerAttributesChange, this)\n InterfaceEventEmitter.on('playerAudioRouteChange', this.playerAudioRouteChange, this)\n },\n unbindTRTCCloudEvent() {\n InterfaceEventEmitter.off('playerAttributesChange', this.playerAttributesChange)\n InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange)\n },\n emitDocEvent(name, event) {\n this.triggerEvent(name, (event && event.detail) || {})\n },\n // 请保持跟 wxml 中绑定的事件名称一致\n _playerStateChange(event) {\n trtc.playerEventHandler(event)\n this.emitDocEvent('statechange', event)\n },\n _playerFullscreenChange(event) {\n trtc.playerFullscreenChange(event)\n this.emitDocEvent('fullscreenchange', event)\n },\n _playerNetStatus(event) {\n trtc.playerNetStatus(event)\n this.emitDocEvent('netstatus', event)\n },\n _playerAudioVolumeNotify(event) {\n try {\n event.currentTarget.dataset.streamid = this.data.player.streamID\n trtc.playerAudioVolumeNotify(event)\n } catch (err) {\n trtcCloud.logger.warn(err)\n } finally {\n this.emitDocEvent('audiovolumenotify', event)\n }\n },\n _playerEnterPictureInPicture(event) {\n this.emitDocEvent('enterpictureinpicture', event)\n },\n _playerLeavePictureInPicture(event) {\n this.emitDocEvent('leavepictureinpicture', event)\n },\n _playerCastingUserSelect(event) {\n this.emitDocEvent('castinguserselect', event)\n },\n _playerCastingStateChange(event) {\n this.emitDocEvent('castingstatechange', event)\n },\n _playerCastingInterrupt(event) {\n this.emitDocEvent('castinginterrupt', event)\n },\n }\n})\n"],"sourceRoot":""}
|
|
@@ -9,7 +9,13 @@
|
|
|
9
9
|
picture-in-picture-mode="{{pictureInPictureMode}}"
|
|
10
10
|
picture-in-picture-init-position="{{pictureInPictureInitPosition}}"
|
|
11
11
|
enable-system-pip="{{enableSystemPip}}"
|
|
12
|
+
enable-casting="{{enableCasting}}"
|
|
12
13
|
debug="{{player.debug}}" bindstatechange="_playerStateChange" bindfullscreenchange="_playerFullscreenChange"
|
|
13
|
-
bindnetstatus="_playerNetStatus" bindaudiovolumenotify="_playerAudioVolumeNotify"
|
|
14
|
+
bindnetstatus="_playerNetStatus" bindaudiovolumenotify="_playerAudioVolumeNotify"
|
|
15
|
+
bindenterpictureinpicture="_playerEnterPictureInPicture"
|
|
16
|
+
bindleavepictureinpicture="_playerLeavePictureInPicture"
|
|
17
|
+
bindcastinguserselect="_playerCastingUserSelect"
|
|
18
|
+
bindcastingstatechange="_playerCastingStateChange"
|
|
19
|
+
bindcastinginterrupt="_playerCastingInterrupt" />
|
|
14
20
|
<view wx:if="{{player.stopVideo}}" class="trtc-dark-mask"></view>
|
|
15
21
|
</view>
|
|
@@ -111,8 +111,7 @@ var InterfaceEventEmitter = trtcCloud.InterfaceEventEmitter;
|
|
|
111
111
|
Component({
|
|
112
112
|
properties: {
|
|
113
113
|
pictureInPictureMode: {
|
|
114
|
-
type: null
|
|
115
|
-
optionalTypes: [String, Array]
|
|
114
|
+
type: null
|
|
116
115
|
}
|
|
117
116
|
},
|
|
118
117
|
data: {
|
|
@@ -155,31 +154,48 @@ Component({
|
|
|
155
154
|
InterfaceEventEmitter.off('pusherAttributesChange', this.pusherAttributesChange);
|
|
156
155
|
InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange);
|
|
157
156
|
},
|
|
157
|
+
emitDocEvent: function emitDocEvent(name, event) {
|
|
158
|
+
this.triggerEvent(name, event && event.detail || {});
|
|
159
|
+
},
|
|
158
160
|
|
|
159
161
|
// 请保持跟 wxml 中绑定的事件名称一致
|
|
160
162
|
_pusherStateChangeHandler: function _pusherStateChangeHandler(event) {
|
|
161
163
|
trtc.pusherEventHandler(event);
|
|
164
|
+
this.emitDocEvent('statechange', event);
|
|
162
165
|
},
|
|
163
166
|
_pusherNetStatusHandler: function _pusherNetStatusHandler(event) {
|
|
164
167
|
trtc.pusherNetStatusHandler(event);
|
|
168
|
+
this.emitDocEvent('netstatus', event);
|
|
165
169
|
},
|
|
166
170
|
_pusherErrorHandler: function _pusherErrorHandler(event) {
|
|
167
171
|
trtc.pusherErrorHandler(event);
|
|
172
|
+
this.emitDocEvent('error', event);
|
|
168
173
|
},
|
|
169
174
|
_pusherBGMStartHandler: function _pusherBGMStartHandler(event) {
|
|
170
175
|
trtc.pusherBGMStartHandler(event);
|
|
176
|
+
this.emitDocEvent('bgmstart', event);
|
|
171
177
|
},
|
|
172
178
|
_pusherBGMProgressHandler: function _pusherBGMProgressHandler(event) {
|
|
173
179
|
trtc.pusherBGMProgressHandler(event);
|
|
180
|
+
this.emitDocEvent('bgmprogress', event);
|
|
174
181
|
},
|
|
175
182
|
_pusherBGMCompleteHandler: function _pusherBGMCompleteHandler(event) {
|
|
176
183
|
trtc.pusherBGMCompleteHandler(event);
|
|
184
|
+
this.emitDocEvent('bgmcomplete', event);
|
|
177
185
|
},
|
|
178
186
|
_pusherAudioVolumeNotify: function _pusherAudioVolumeNotify(event) {
|
|
179
187
|
if (!trtcCloud.isEnterRoom) {
|
|
188
|
+
this.emitDocEvent('audiovolumenotify', event);
|
|
180
189
|
return;
|
|
181
190
|
}
|
|
182
191
|
trtc.pusherAudioVolumeNotify(event);
|
|
192
|
+
this.emitDocEvent('audiovolumenotify', event);
|
|
193
|
+
},
|
|
194
|
+
_pusherEnterPictureInPicture: function _pusherEnterPictureInPicture(event) {
|
|
195
|
+
this.emitDocEvent('enterpictureinpicture', event);
|
|
196
|
+
},
|
|
197
|
+
_pusherLeavePictureInPicture: function _pusherLeavePictureInPicture(event) {
|
|
198
|
+
this.emitDocEvent('leavepictureinpicture', event);
|
|
183
199
|
}
|
|
184
200
|
}
|
|
185
201
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@tencentcloud/trtc-cloud-wx\"","webpack:///./src/trtc-pusher.js"],"names":["trtcCloud","TRTCCloud","getTRTCShareInstance","trtc","InterfaceEventEmitter","Component","properties","pictureInPictureMode","type","optionalTypes","String","Array","data","pusher","lifetimes","attached","logger","info","bindTRTCCloudEvent","emit","detached","unbindTRTCCloudEvent","exitRoom","methods","pusherAttributesChange","event","callback","setData","playerAudioRouteChange","soundMode","on","off","_pusherStateChangeHandler","pusherEventHandler","_pusherNetStatusHandler","pusherNetStatusHandler","_pusherErrorHandler","pusherErrorHandler","_pusherBGMStartHandler","pusherBGMStartHandler","_pusherBGMProgressHandler","pusherBGMProgressHandler","_pusherBGMCompleteHandler","pusherBGMCompleteHandler","_pusherAudioVolumeNotify","isEnterRoom","pusherAudioVolumeNotify"],"mappings":";;QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;AClFA,wD;;;;;;;;;ACAA;;;;;;AAEA,IAAMA,YAAYC,sBAAUC,oBAAV,EAAlB;AACA,IAAMC,OAAOH,UAAUG,IAAvB;AACA,IAAMC,wBAAwBJ,UAAUI,qBAAxC;;AAEAC,UAAU;AACRC,cAAY;AACVC,0BAAsB;AACpBC,YAAM,IADc;AAEpBC,qBAAe,CAACC,MAAD,EAASC,KAAT;AAFK;AADZ,GADJ;AAORC,QAAM;AACJC,YAAQ;AADJ,GAPE;AAURC,aAAW;AACTC,YADS,sBACE;AACTf,gBAAUgB,MAAV,CAAiBC,IAAjB,CAAsB,sBAAtB;AACA,WAAKC,kBAAL;AACA;AACAd,4BAAsBe,IAAtB,CAA2B,gBAA3B,EAA6C,IAA7C;AACD,KANQ;AAOTC,YAPS,sBAOE;AACTpB,gBAAUgB,MAAV,CAAiBC,IAAjB,CAAsB,sBAAtB;AACAb,4BAAsBe,IAAtB,CAA2B,gBAA3B,EAA6C,KAA7C;AACA,WAAKE,oBAAL;AACArB,gBAAUsB,QAAV;AACD;AAZQ,GAVH;;AA0BRC,WAAS;AACPC,0BADO,kCACgBC,KADhB,EACuB;AAAA,UACrBZ,MADqB,GACDY,KADC,CACrBZ,MADqB;AAAA,UACba,QADa,GACDD,KADC,CACbC,QADa;;AAE5B,WAAKC,OAAL,CAAa,EAACd,cAAD,EAAb,EAAuBa,QAAvB;AACD,KAJM;AAKPE,0BALO,kCAKgBH,KALhB,EAKuB;AAAA,UACpBI,SADoB,GACIJ,KADJ,CACpBI,SADoB;AAAA,UACTH,QADS,GACID,KADJ,CACTC,QADS;;AAE5B1B,gBAAUgB,MAAV,CAAiBC,IAAjB,CAAsB,oCAAtB,EAA4DY,SAA5D;AACA,WAAKF,OAAL,CAAa,EAAEE,oBAAF,EAAb,EAA4BH,QAA5B;AACD,KATM;AAUPR,sBAVO,gCAUc;AACnBd,4BAAsB0B,EAAtB,CAAyB,wBAAzB,EAAmD,KAAKN,sBAAxD,EAAgF,IAAhF;AACApB,4BAAsB0B,EAAtB,CAAyB,wBAAzB,EAAmD,KAAKF,sBAAxD,EAAgF,IAAhF;AACD,KAbM;AAcPP,wBAdO,kCAcgB;AACrBjB,4BAAsB2B,GAAtB,CAA0B,wBAA1B,EAAoD,KAAKP,sBAAzD;AACApB,4BAAsB2B,GAAtB,CAA0B,wBAA1B,EAAoD,KAAKH,sBAAzD;AACD,KAjBM;;AAkBP;AACAI,6BAnBO,qCAmBmBP,KAnBnB,EAmB0B;AAC/BtB,WAAK8B,kBAAL,CAAwBR,KAAxB;AACD,KArBM;AAsBPS,2BAtBO,mCAsBiBT,KAtBjB,EAsBwB;AAC7BtB,WAAKgC,sBAAL,CAA4BV,KAA5B;AACD,KAxBM;AAyBPW,uBAzBO,+BAyBaX,KAzBb,EAyBoB;AACzBtB,WAAKkC,kBAAL,CAAwBZ,KAAxB;AACD,KA3BM;AA4BPa,0BA5BO,kCA4BgBb,KA5BhB,EA4BuB;AAC5BtB,WAAKoC,qBAAL,CAA2Bd,KAA3B;AACD,KA9BM;AA+BPe,6BA/BO,qCA+BmBf,KA/BnB,EA+B0B;AAC/BtB,WAAKsC,wBAAL,CAA8BhB,KAA9B;AACD,KAjCM;AAkCPiB,6BAlCO,qCAkCmBjB,KAlCnB,EAkC0B;AAC/BtB,WAAKwC,wBAAL,CAA8BlB,KAA9B;AACD,KApCM;AAqCPmB,4BArCO,oCAqCkBnB,KArClB,EAqCyB;AAC9B,UAAI,CAACzB,UAAU6C,WAAf,EAA4B;AAC1B;AACD;AACD1C,WAAK2C,uBAAL,CAA6BrB,KAA7B;AACD;AA1CM;AA1BD,CAAV,E","file":"trtc-pusher.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","module.exports = require(\"@tencentcloud/trtc-cloud-wx\");","import TRTCCloud from '@tencentcloud/trtc-cloud-wx'\n\nconst trtcCloud = TRTCCloud.getTRTCShareInstance()\nconst trtc = trtcCloud.trtc\nconst InterfaceEventEmitter = trtcCloud.InterfaceEventEmitter\n\nComponent({\n properties: {\n pictureInPictureMode: {\n type: null,\n optionalTypes: [String, Array],\n },\n },\n data: {\n pusher: {},\n },\n lifetimes: {\n attached() {\n trtcCloud.logger.info('trtc-pusher attached')\n this.bindTRTCCloudEvent()\n // 注意事件绑定应该放在 domReady 之前,因为此时出发 domReady 会执行 ready 后的后续操作依赖 bindTRTCCloudEvent\n InterfaceEventEmitter.emit('pusherDomReady', true)\n },\n detached() {\n trtcCloud.logger.info('trtc-pusher detached')\n InterfaceEventEmitter.emit('pusherDomReady', false)\n this.unbindTRTCCloudEvent()\n trtcCloud.exitRoom()\n },\n },\n\n\n methods: {\n pusherAttributesChange(event) {\n const {pusher, callback} = event\n this.setData({pusher}, callback)\n },\n playerAudioRouteChange(event) {\n const { soundMode, callback } = event\n trtcCloud.logger.info('trtc-player playerAudioRouteChange', soundMode)\n this.setData({ soundMode }, callback)\n },\n bindTRTCCloudEvent() {\n InterfaceEventEmitter.on('pusherAttributesChange', this.pusherAttributesChange, this)\n InterfaceEventEmitter.on('playerAudioRouteChange', this.playerAudioRouteChange, this)\n },\n unbindTRTCCloudEvent() {\n InterfaceEventEmitter.off('pusherAttributesChange', this.pusherAttributesChange)\n InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange)\n },\n // 请保持跟 wxml 中绑定的事件名称一致\n _pusherStateChangeHandler(event) {\n trtc.pusherEventHandler(event)\n },\n _pusherNetStatusHandler(event) {\n trtc.pusherNetStatusHandler(event)\n },\n _pusherErrorHandler(event) {\n trtc.pusherErrorHandler(event)\n },\n _pusherBGMStartHandler(event) {\n trtc.pusherBGMStartHandler(event)\n },\n _pusherBGMProgressHandler(event) {\n trtc.pusherBGMProgressHandler(event)\n },\n _pusherBGMCompleteHandler(event) {\n trtc.pusherBGMCompleteHandler(event)\n },\n _pusherAudioVolumeNotify(event) {\n if (!trtcCloud.isEnterRoom) {\n return\n }\n trtc.pusherAudioVolumeNotify(event)\n }\n }\n})\n"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///external \"@tencentcloud/trtc-cloud-wx\"","webpack:///./src/trtc-pusher.js"],"names":["trtcCloud","TRTCCloud","getTRTCShareInstance","trtc","InterfaceEventEmitter","Component","properties","pictureInPictureMode","type","data","pusher","lifetimes","attached","logger","info","bindTRTCCloudEvent","emit","detached","unbindTRTCCloudEvent","exitRoom","methods","pusherAttributesChange","event","callback","setData","playerAudioRouteChange","soundMode","on","off","emitDocEvent","name","triggerEvent","detail","_pusherStateChangeHandler","pusherEventHandler","_pusherNetStatusHandler","pusherNetStatusHandler","_pusherErrorHandler","pusherErrorHandler","_pusherBGMStartHandler","pusherBGMStartHandler","_pusherBGMProgressHandler","pusherBGMProgressHandler","_pusherBGMCompleteHandler","pusherBGMCompleteHandler","_pusherAudioVolumeNotify","isEnterRoom","pusherAudioVolumeNotify","_pusherEnterPictureInPicture","_pusherLeavePictureInPicture"],"mappings":"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","file":"trtc-pusher.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 1);\n","module.exports = require(\"@tencentcloud/trtc-cloud-wx\");","import TRTCCloud from '@tencentcloud/trtc-cloud-wx'\n\nconst trtcCloud = TRTCCloud.getTRTCShareInstance()\nconst trtc = trtcCloud.trtc\nconst InterfaceEventEmitter = trtcCloud.InterfaceEventEmitter\n\nComponent({\n properties: {\n pictureInPictureMode: {\n type: null,\n },\n },\n data: {\n pusher: {},\n },\n lifetimes: {\n attached() {\n trtcCloud.logger.info('trtc-pusher attached')\n this.bindTRTCCloudEvent()\n // 注意事件绑定应该放在 domReady 之前,因为此时出发 domReady 会执行 ready 后的后续操作依赖 bindTRTCCloudEvent\n InterfaceEventEmitter.emit('pusherDomReady', true)\n },\n detached() {\n trtcCloud.logger.info('trtc-pusher detached')\n InterfaceEventEmitter.emit('pusherDomReady', false)\n this.unbindTRTCCloudEvent()\n trtcCloud.exitRoom()\n },\n },\n\n\n methods: {\n pusherAttributesChange(event) {\n const {pusher, callback} = event\n this.setData({pusher}, callback)\n },\n playerAudioRouteChange(event) {\n const {soundMode, callback} = event\n trtcCloud.logger.info('trtc-player playerAudioRouteChange', soundMode)\n this.setData({soundMode}, callback)\n },\n bindTRTCCloudEvent() {\n InterfaceEventEmitter.on('pusherAttributesChange', this.pusherAttributesChange, this)\n InterfaceEventEmitter.on('playerAudioRouteChange', this.playerAudioRouteChange, this)\n },\n unbindTRTCCloudEvent() {\n InterfaceEventEmitter.off('pusherAttributesChange', this.pusherAttributesChange)\n InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange)\n },\n emitDocEvent(name, event) {\n this.triggerEvent(name, (event && event.detail) || {})\n },\n // 请保持跟 wxml 中绑定的事件名称一致\n _pusherStateChangeHandler(event) {\n trtc.pusherEventHandler(event)\n this.emitDocEvent('statechange', event)\n },\n _pusherNetStatusHandler(event) {\n trtc.pusherNetStatusHandler(event)\n this.emitDocEvent('netstatus', event)\n },\n _pusherErrorHandler(event) {\n trtc.pusherErrorHandler(event)\n this.emitDocEvent('error', event)\n },\n _pusherBGMStartHandler(event) {\n trtc.pusherBGMStartHandler(event)\n this.emitDocEvent('bgmstart', event)\n },\n _pusherBGMProgressHandler(event) {\n trtc.pusherBGMProgressHandler(event)\n this.emitDocEvent('bgmprogress', event)\n },\n _pusherBGMCompleteHandler(event) {\n trtc.pusherBGMCompleteHandler(event)\n this.emitDocEvent('bgmcomplete', event)\n },\n _pusherAudioVolumeNotify(event) {\n if (!trtcCloud.isEnterRoom) {\n this.emitDocEvent('audiovolumenotify', event)\n return\n }\n trtc.pusherAudioVolumeNotify(event)\n this.emitDocEvent('audiovolumenotify', event)\n },\n _pusherEnterPictureInPicture(event) {\n this.emitDocEvent('enterpictureinpicture', event)\n },\n _pusherLeavePictureInPicture(event) {\n this.emitDocEvent('leavepictureinpicture', event)\n },\n }\n})\n"],"sourceRoot":""}
|
|
@@ -16,7 +16,9 @@
|
|
|
16
16
|
bindstatechange="_pusherStateChangeHandler" bindnetstatus="_pusherNetStatusHandler"
|
|
17
17
|
binderror="_pusherErrorHandler" bindbgmstart="_pusherBGMStartHandler"
|
|
18
18
|
bindbgmprogress="_pusherBGMProgressHandler" bindbgmcomplete="_pusherBGMCompleteHandler"
|
|
19
|
-
bindaudiovolumenotify="_pusherAudioVolumeNotify"
|
|
19
|
+
bindaudiovolumenotify="_pusherAudioVolumeNotify"
|
|
20
|
+
bindenterpictureinpicture="_pusherEnterPictureInPicture"
|
|
21
|
+
bindleavepictureinpicture="_pusherLeavePictureInPicture" />
|
|
20
22
|
<live-player class="trtc-player" sound-mode="{{soundMode}}">
|
|
21
23
|
</live-player>
|
|
22
24
|
<!-- <camera wx:if="{{pusher.videoPreview}}" class="trtc-camera" device-position="{{pusher.frontCamera}}"></camera> -->
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tencentcloud/trtc-component-wx",
|
|
3
|
-
"version": "1.0.6-beta.
|
|
3
|
+
"version": "1.0.6-beta.7",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "miniprogram_dist/index.js",
|
|
6
6
|
"scripts": {
|
|
7
|
-
"dev": "gulp dev --develop",
|
|
8
|
-
"watch": "gulp watch --develop --watch",
|
|
9
|
-
"build": "gulp",
|
|
7
|
+
"dev": "NODE_OPTIONS=--openssl-legacy-provider gulp dev --develop",
|
|
8
|
+
"watch": "NODE_OPTIONS=--openssl-legacy-provider gulp watch --develop --watch",
|
|
9
|
+
"build": "NODE_OPTIONS=--openssl-legacy-provider gulp",
|
|
10
10
|
"dist": "npm run build",
|
|
11
11
|
"clean-dev": "gulp clean --develop",
|
|
12
12
|
"clean": "gulp clean",
|
package/src/trtc-player.js
CHANGED
|
@@ -9,14 +9,15 @@ Component({
|
|
|
9
9
|
streamId: String,
|
|
10
10
|
pictureInPictureMode: {
|
|
11
11
|
type: null,
|
|
12
|
-
optionalTypes: [String, Array],
|
|
13
12
|
},
|
|
14
13
|
pictureInPictureInitPosition: {
|
|
15
14
|
type: String,
|
|
16
15
|
},
|
|
17
16
|
enableSystemPip: {
|
|
18
|
-
type:
|
|
19
|
-
|
|
17
|
+
type: Boolean,
|
|
18
|
+
},
|
|
19
|
+
enableCasting: {
|
|
20
|
+
type: Boolean,
|
|
20
21
|
},
|
|
21
22
|
},
|
|
22
23
|
data: {
|
|
@@ -67,9 +68,9 @@ Component({
|
|
|
67
68
|
}
|
|
68
69
|
},
|
|
69
70
|
playerAudioRouteChange(event) {
|
|
70
|
-
const {
|
|
71
|
+
const {soundMode, callback} = event
|
|
71
72
|
trtcCloud.logger.info('trtc-player playerAudioRouteChange', soundMode)
|
|
72
|
-
this.setData({
|
|
73
|
+
this.setData({soundMode}, callback)
|
|
73
74
|
},
|
|
74
75
|
getTRTCStreamId(streamId) {
|
|
75
76
|
const tempArray = streamId.split('_')
|
|
@@ -85,15 +86,21 @@ Component({
|
|
|
85
86
|
InterfaceEventEmitter.off('playerAttributesChange', this.playerAttributesChange)
|
|
86
87
|
InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange)
|
|
87
88
|
},
|
|
89
|
+
emitDocEvent(name, event) {
|
|
90
|
+
this.triggerEvent(name, (event && event.detail) || {})
|
|
91
|
+
},
|
|
88
92
|
// 请保持跟 wxml 中绑定的事件名称一致
|
|
89
93
|
_playerStateChange(event) {
|
|
90
94
|
trtc.playerEventHandler(event)
|
|
95
|
+
this.emitDocEvent('statechange', event)
|
|
91
96
|
},
|
|
92
97
|
_playerFullscreenChange(event) {
|
|
93
98
|
trtc.playerFullscreenChange(event)
|
|
99
|
+
this.emitDocEvent('fullscreenchange', event)
|
|
94
100
|
},
|
|
95
101
|
_playerNetStatus(event) {
|
|
96
102
|
trtc.playerNetStatus(event)
|
|
103
|
+
this.emitDocEvent('netstatus', event)
|
|
97
104
|
},
|
|
98
105
|
_playerAudioVolumeNotify(event) {
|
|
99
106
|
try {
|
|
@@ -101,7 +108,24 @@ Component({
|
|
|
101
108
|
trtc.playerAudioVolumeNotify(event)
|
|
102
109
|
} catch (err) {
|
|
103
110
|
trtcCloud.logger.warn(err)
|
|
111
|
+
} finally {
|
|
112
|
+
this.emitDocEvent('audiovolumenotify', event)
|
|
104
113
|
}
|
|
105
114
|
},
|
|
115
|
+
_playerEnterPictureInPicture(event) {
|
|
116
|
+
this.emitDocEvent('enterpictureinpicture', event)
|
|
117
|
+
},
|
|
118
|
+
_playerLeavePictureInPicture(event) {
|
|
119
|
+
this.emitDocEvent('leavepictureinpicture', event)
|
|
120
|
+
},
|
|
121
|
+
_playerCastingUserSelect(event) {
|
|
122
|
+
this.emitDocEvent('castinguserselect', event)
|
|
123
|
+
},
|
|
124
|
+
_playerCastingStateChange(event) {
|
|
125
|
+
this.emitDocEvent('castingstatechange', event)
|
|
126
|
+
},
|
|
127
|
+
_playerCastingInterrupt(event) {
|
|
128
|
+
this.emitDocEvent('castinginterrupt', event)
|
|
129
|
+
},
|
|
106
130
|
}
|
|
107
131
|
})
|
package/src/trtc-player.wxml
CHANGED
|
@@ -9,7 +9,13 @@
|
|
|
9
9
|
picture-in-picture-mode="{{pictureInPictureMode}}"
|
|
10
10
|
picture-in-picture-init-position="{{pictureInPictureInitPosition}}"
|
|
11
11
|
enable-system-pip="{{enableSystemPip}}"
|
|
12
|
+
enable-casting="{{enableCasting}}"
|
|
12
13
|
debug="{{player.debug}}" bindstatechange="_playerStateChange" bindfullscreenchange="_playerFullscreenChange"
|
|
13
|
-
bindnetstatus="_playerNetStatus" bindaudiovolumenotify="_playerAudioVolumeNotify"
|
|
14
|
+
bindnetstatus="_playerNetStatus" bindaudiovolumenotify="_playerAudioVolumeNotify"
|
|
15
|
+
bindenterpictureinpicture="_playerEnterPictureInPicture"
|
|
16
|
+
bindleavepictureinpicture="_playerLeavePictureInPicture"
|
|
17
|
+
bindcastinguserselect="_playerCastingUserSelect"
|
|
18
|
+
bindcastingstatechange="_playerCastingStateChange"
|
|
19
|
+
bindcastinginterrupt="_playerCastingInterrupt" />
|
|
14
20
|
<view wx:if="{{player.stopVideo}}" class="trtc-dark-mask"></view>
|
|
15
21
|
</view>
|
package/src/trtc-pusher.js
CHANGED
|
@@ -8,7 +8,6 @@ Component({
|
|
|
8
8
|
properties: {
|
|
9
9
|
pictureInPictureMode: {
|
|
10
10
|
type: null,
|
|
11
|
-
optionalTypes: [String, Array],
|
|
12
11
|
},
|
|
13
12
|
},
|
|
14
13
|
data: {
|
|
@@ -36,9 +35,9 @@ Component({
|
|
|
36
35
|
this.setData({pusher}, callback)
|
|
37
36
|
},
|
|
38
37
|
playerAudioRouteChange(event) {
|
|
39
|
-
const {
|
|
38
|
+
const {soundMode, callback} = event
|
|
40
39
|
trtcCloud.logger.info('trtc-player playerAudioRouteChange', soundMode)
|
|
41
|
-
this.setData({
|
|
40
|
+
this.setData({soundMode}, callback)
|
|
42
41
|
},
|
|
43
42
|
bindTRTCCloudEvent() {
|
|
44
43
|
InterfaceEventEmitter.on('pusherAttributesChange', this.pusherAttributesChange, this)
|
|
@@ -48,30 +47,47 @@ Component({
|
|
|
48
47
|
InterfaceEventEmitter.off('pusherAttributesChange', this.pusherAttributesChange)
|
|
49
48
|
InterfaceEventEmitter.off('playerAudioRouteChange', this.playerAudioRouteChange)
|
|
50
49
|
},
|
|
50
|
+
emitDocEvent(name, event) {
|
|
51
|
+
this.triggerEvent(name, (event && event.detail) || {})
|
|
52
|
+
},
|
|
51
53
|
// 请保持跟 wxml 中绑定的事件名称一致
|
|
52
54
|
_pusherStateChangeHandler(event) {
|
|
53
55
|
trtc.pusherEventHandler(event)
|
|
56
|
+
this.emitDocEvent('statechange', event)
|
|
54
57
|
},
|
|
55
58
|
_pusherNetStatusHandler(event) {
|
|
56
59
|
trtc.pusherNetStatusHandler(event)
|
|
60
|
+
this.emitDocEvent('netstatus', event)
|
|
57
61
|
},
|
|
58
62
|
_pusherErrorHandler(event) {
|
|
59
63
|
trtc.pusherErrorHandler(event)
|
|
64
|
+
this.emitDocEvent('error', event)
|
|
60
65
|
},
|
|
61
66
|
_pusherBGMStartHandler(event) {
|
|
62
67
|
trtc.pusherBGMStartHandler(event)
|
|
68
|
+
this.emitDocEvent('bgmstart', event)
|
|
63
69
|
},
|
|
64
70
|
_pusherBGMProgressHandler(event) {
|
|
65
71
|
trtc.pusherBGMProgressHandler(event)
|
|
72
|
+
this.emitDocEvent('bgmprogress', event)
|
|
66
73
|
},
|
|
67
74
|
_pusherBGMCompleteHandler(event) {
|
|
68
75
|
trtc.pusherBGMCompleteHandler(event)
|
|
76
|
+
this.emitDocEvent('bgmcomplete', event)
|
|
69
77
|
},
|
|
70
78
|
_pusherAudioVolumeNotify(event) {
|
|
71
79
|
if (!trtcCloud.isEnterRoom) {
|
|
80
|
+
this.emitDocEvent('audiovolumenotify', event)
|
|
72
81
|
return
|
|
73
82
|
}
|
|
74
83
|
trtc.pusherAudioVolumeNotify(event)
|
|
75
|
-
|
|
84
|
+
this.emitDocEvent('audiovolumenotify', event)
|
|
85
|
+
},
|
|
86
|
+
_pusherEnterPictureInPicture(event) {
|
|
87
|
+
this.emitDocEvent('enterpictureinpicture', event)
|
|
88
|
+
},
|
|
89
|
+
_pusherLeavePictureInPicture(event) {
|
|
90
|
+
this.emitDocEvent('leavepictureinpicture', event)
|
|
91
|
+
},
|
|
76
92
|
}
|
|
77
93
|
})
|
package/src/trtc-pusher.wxml
CHANGED
|
@@ -16,7 +16,9 @@
|
|
|
16
16
|
bindstatechange="_pusherStateChangeHandler" bindnetstatus="_pusherNetStatusHandler"
|
|
17
17
|
binderror="_pusherErrorHandler" bindbgmstart="_pusherBGMStartHandler"
|
|
18
18
|
bindbgmprogress="_pusherBGMProgressHandler" bindbgmcomplete="_pusherBGMCompleteHandler"
|
|
19
|
-
bindaudiovolumenotify="_pusherAudioVolumeNotify"
|
|
19
|
+
bindaudiovolumenotify="_pusherAudioVolumeNotify"
|
|
20
|
+
bindenterpictureinpicture="_pusherEnterPictureInPicture"
|
|
21
|
+
bindleavepictureinpicture="_pusherLeavePictureInPicture" />
|
|
20
22
|
<live-player class="trtc-player" sound-mode="{{soundMode}}">
|
|
21
23
|
</live-player>
|
|
22
24
|
<!-- <camera wx:if="{{pusher.videoPreview}}" class="trtc-camera" device-position="{{pusher.frontCamera}}"></camera> -->
|