@videosdk.live/react-sdk 0.7.0 → 0.8.0
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/dist/index.js +184 -3
- package/dist/index.js.map +1 -1
- package/dist/index.modern.js +184 -4
- package/dist/index.modern.js.map +1 -1
- package/dist/types/agentParticipant.d.ts +138 -0
- package/dist/types/index.d.ts +170 -2
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -458,7 +458,7 @@ var MeetingConsumer = function MeetingConsumer(_ref2) {
|
|
|
458
458
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(MeetingProviderContex.Consumer, null, children));
|
|
459
459
|
};
|
|
460
460
|
|
|
461
|
-
var version = "0.
|
|
461
|
+
var version = "0.8.0";
|
|
462
462
|
|
|
463
463
|
var MeetingProvider = function MeetingProvider(_ref) {
|
|
464
464
|
var children = _ref.children,
|
|
@@ -1884,8 +1884,14 @@ var usePubSub = function usePubSub(topic, _temp) {
|
|
|
1884
1884
|
setMessages = _useState[1];
|
|
1885
1885
|
var isSubscribed = React.useRef(false);
|
|
1886
1886
|
var publish = function publish(message, options, payload) {
|
|
1887
|
-
|
|
1888
|
-
return
|
|
1887
|
+
try {
|
|
1888
|
+
return Promise.resolve(function () {
|
|
1889
|
+
if (meeting) {
|
|
1890
|
+
return Promise.resolve(meeting.pubSub.publish(topic, message, options, payload));
|
|
1891
|
+
}
|
|
1892
|
+
}());
|
|
1893
|
+
} catch (e) {
|
|
1894
|
+
return Promise.reject(e);
|
|
1889
1895
|
}
|
|
1890
1896
|
};
|
|
1891
1897
|
var _handlePubSub = function _handlePubSub(data) {
|
|
@@ -2499,6 +2505,180 @@ var useWhiteboard = function useWhiteboard() {
|
|
|
2499
2505
|
};
|
|
2500
2506
|
};
|
|
2501
2507
|
|
|
2508
|
+
var useAgentParticipant = function useAgentParticipant(participantId, _temp) {
|
|
2509
|
+
var _mMeeting$participant;
|
|
2510
|
+
var _ref = _temp === void 0 ? {} : _temp,
|
|
2511
|
+
_ref$onAgentStateChan = _ref.onAgentStateChanged,
|
|
2512
|
+
onAgentStateChanged = _ref$onAgentStateChan === void 0 ? function () {} : _ref$onAgentStateChan,
|
|
2513
|
+
_ref$onAgentTranscrip = _ref.onAgentTranscriptionReceived,
|
|
2514
|
+
onAgentTranscriptionReceived = _ref$onAgentTranscrip === void 0 ? function () {} : _ref$onAgentTranscrip,
|
|
2515
|
+
_ref$onStreamEnabled = _ref.onStreamEnabled,
|
|
2516
|
+
onStreamEnabled = _ref$onStreamEnabled === void 0 ? function () {} : _ref$onStreamEnabled,
|
|
2517
|
+
_ref$onStreamDisabled = _ref.onStreamDisabled,
|
|
2518
|
+
onStreamDisabled = _ref$onStreamDisabled === void 0 ? function () {} : _ref$onStreamDisabled,
|
|
2519
|
+
_ref$onMediaStatusCha = _ref.onMediaStatusChanged,
|
|
2520
|
+
onMediaStatusChanged = _ref$onMediaStatusCha === void 0 ? function () {} : _ref$onMediaStatusCha;
|
|
2521
|
+
var mMeeting = useMeeting();
|
|
2522
|
+
var _useState = React.useState(null),
|
|
2523
|
+
webcamStream = _useState[0],
|
|
2524
|
+
setWebcamStream = _useState[1];
|
|
2525
|
+
var _useState2 = React.useState(null),
|
|
2526
|
+
micStream = _useState2[0],
|
|
2527
|
+
setMicStream = _useState2[1];
|
|
2528
|
+
var _useState3 = React.useState(null),
|
|
2529
|
+
agentState = _useState3[0],
|
|
2530
|
+
setAgentState = _useState3[1];
|
|
2531
|
+
var _useState4 = React.useState(false),
|
|
2532
|
+
webcamOn = _useState4[0],
|
|
2533
|
+
setWebcamOn = _useState4[1];
|
|
2534
|
+
var _useState5 = React.useState(false),
|
|
2535
|
+
micOn = _useState5[0],
|
|
2536
|
+
setMicOn = _useState5[1];
|
|
2537
|
+
var _useState6 = React.useState((_mMeeting$participant = mMeeting.participants.get(participantId)) === null || _mMeeting$participant === void 0 ? void 0 : _mMeeting$participant.mode),
|
|
2538
|
+
mode = _useState6[0],
|
|
2539
|
+
setMode = _useState6[1];
|
|
2540
|
+
var _useMemo = React.useMemo(function () {
|
|
2541
|
+
var _mMeeting$pinnedParti;
|
|
2542
|
+
var participant = mMeeting.participants.get(participantId);
|
|
2543
|
+
if (participant && !participant.isAgent) {
|
|
2544
|
+
console.warn("useAgentParticipant: Participant " + participantId + " is not an agent participant.");
|
|
2545
|
+
}
|
|
2546
|
+
var pinState = (mMeeting === null || mMeeting === void 0 ? void 0 : (_mMeeting$pinnedParti = mMeeting.pinnedParticipants) === null || _mMeeting$pinnedParti === void 0 ? void 0 : _mMeeting$pinnedParti.get(participantId)) || {
|
|
2547
|
+
cam: false,
|
|
2548
|
+
share: false
|
|
2549
|
+
};
|
|
2550
|
+
return {
|
|
2551
|
+
agentParticipant: participant !== null && participant !== void 0 && participant.isAgent ? participant : null,
|
|
2552
|
+
activeSpeakerId: mMeeting.activeSpeakerId,
|
|
2553
|
+
pinState: pinState
|
|
2554
|
+
};
|
|
2555
|
+
}, [mMeeting.participants, mMeeting.pinnedParticipants, mMeeting.activeSpeakerId, participantId]),
|
|
2556
|
+
agentParticipant = _useMemo.agentParticipant,
|
|
2557
|
+
activeSpeakerId = _useMemo.activeSpeakerId,
|
|
2558
|
+
pinState = _useMemo.pinState;
|
|
2559
|
+
var setTrack = function setTrack(stream) {
|
|
2560
|
+
if (stream.track.readyState !== 'live') return;
|
|
2561
|
+
switch (stream.kind) {
|
|
2562
|
+
case 'video':
|
|
2563
|
+
setWebcamStream(stream);
|
|
2564
|
+
break;
|
|
2565
|
+
case 'audio':
|
|
2566
|
+
setMicStream(stream);
|
|
2567
|
+
break;
|
|
2568
|
+
}
|
|
2569
|
+
};
|
|
2570
|
+
var unsetTrack = function unsetTrack(stream) {
|
|
2571
|
+
switch (stream.kind) {
|
|
2572
|
+
case 'video':
|
|
2573
|
+
setWebcamStream(null);
|
|
2574
|
+
break;
|
|
2575
|
+
case 'audio':
|
|
2576
|
+
setMicStream(null);
|
|
2577
|
+
break;
|
|
2578
|
+
}
|
|
2579
|
+
};
|
|
2580
|
+
var _handleAgentStateChanged = function _handleAgentStateChanged(state) {
|
|
2581
|
+
setAgentState(state);
|
|
2582
|
+
onAgentStateChanged(state);
|
|
2583
|
+
};
|
|
2584
|
+
var _handleTranscriptionReceived = function _handleTranscriptionReceived(data) {
|
|
2585
|
+
onAgentTranscriptionReceived(data);
|
|
2586
|
+
};
|
|
2587
|
+
var _handleStreamEnabled = function _handleStreamEnabled(stream) {
|
|
2588
|
+
setTrack(stream);
|
|
2589
|
+
onStreamEnabled(stream);
|
|
2590
|
+
};
|
|
2591
|
+
var _handleMediaStatusChanged = function _handleMediaStatusChanged(data) {
|
|
2592
|
+
var kind = data.kind,
|
|
2593
|
+
peerId = data.peerId,
|
|
2594
|
+
newStatus = data.newStatus;
|
|
2595
|
+
if (kind == 'audio') {
|
|
2596
|
+
setMicOn(newStatus);
|
|
2597
|
+
} else if (kind == 'video') {
|
|
2598
|
+
setWebcamOn(newStatus);
|
|
2599
|
+
}
|
|
2600
|
+
onMediaStatusChanged({
|
|
2601
|
+
kind: kind,
|
|
2602
|
+
peerId: peerId,
|
|
2603
|
+
newStatus: newStatus
|
|
2604
|
+
});
|
|
2605
|
+
};
|
|
2606
|
+
var _handleStreamDisabled = function _handleStreamDisabled(stream) {
|
|
2607
|
+
unsetTrack(stream);
|
|
2608
|
+
onStreamDisabled(stream);
|
|
2609
|
+
};
|
|
2610
|
+
var _handleParticipantModeChanged = function _handleParticipantModeChanged(data) {
|
|
2611
|
+
if (participantId === data.participantId) {
|
|
2612
|
+
setMode(data.mode);
|
|
2613
|
+
}
|
|
2614
|
+
};
|
|
2615
|
+
var remove = function remove() {
|
|
2616
|
+
agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.remove();
|
|
2617
|
+
};
|
|
2618
|
+
var pin = function pin(data) {
|
|
2619
|
+
agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.pin(data);
|
|
2620
|
+
};
|
|
2621
|
+
var unpin = function unpin(data) {
|
|
2622
|
+
agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.unpin(data);
|
|
2623
|
+
};
|
|
2624
|
+
var getAudioStats = function getAudioStats() {
|
|
2625
|
+
return Promise.resolve(agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.getAudioStats());
|
|
2626
|
+
};
|
|
2627
|
+
var getVideoStats = function getVideoStats() {
|
|
2628
|
+
return Promise.resolve(agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.getVideoStats());
|
|
2629
|
+
};
|
|
2630
|
+
React.useEffect(function () {
|
|
2631
|
+
if (!agentParticipant) return;
|
|
2632
|
+
var streams = agentParticipant.streams;
|
|
2633
|
+
if (streams) {
|
|
2634
|
+
streams.forEach(function (stream) {
|
|
2635
|
+
return setTrack(stream);
|
|
2636
|
+
});
|
|
2637
|
+
}
|
|
2638
|
+
if (agentParticipant !== null && agentParticipant !== void 0 && agentParticipant.micOn) {
|
|
2639
|
+
setMicOn(micOn);
|
|
2640
|
+
}
|
|
2641
|
+
if (agentParticipant !== null && agentParticipant !== void 0 && agentParticipant.webcamOn) {
|
|
2642
|
+
setWebcamOn(webcamOn);
|
|
2643
|
+
}
|
|
2644
|
+
setAgentState(agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.agentState);
|
|
2645
|
+
agentParticipant.on('agent-state-changed', _handleAgentStateChanged);
|
|
2646
|
+
agentParticipant.on('agent-transcription-received', _handleTranscriptionReceived);
|
|
2647
|
+
agentParticipant.on('stream-enabled', _handleStreamEnabled);
|
|
2648
|
+
agentParticipant.on('stream-disabled', _handleStreamDisabled);
|
|
2649
|
+
agentParticipant.on('media-status-changed', _handleMediaStatusChanged);
|
|
2650
|
+
eventEmitter.on(events['participant-mode-changed'], _handleParticipantModeChanged);
|
|
2651
|
+
return function () {
|
|
2652
|
+
agentParticipant.off('agent-state-changed', _handleAgentStateChanged);
|
|
2653
|
+
agentParticipant.off('agent-transcription-received', _handleTranscriptionReceived);
|
|
2654
|
+
agentParticipant.off('stream-enabled', _handleStreamEnabled);
|
|
2655
|
+
agentParticipant.off('stream-disabled', _handleStreamDisabled);
|
|
2656
|
+
agentParticipant.off('media-status-changed', _handleMediaStatusChanged);
|
|
2657
|
+
eventEmitter.off(events['participant-mode-changed'], _handleParticipantModeChanged);
|
|
2658
|
+
};
|
|
2659
|
+
}, [agentParticipant]);
|
|
2660
|
+
return {
|
|
2661
|
+
agentParticipant: agentParticipant,
|
|
2662
|
+
id: agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.id,
|
|
2663
|
+
displayName: agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.displayName,
|
|
2664
|
+
agentId: agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.agentId,
|
|
2665
|
+
agentState: agentState,
|
|
2666
|
+
webcamStream: webcamStream,
|
|
2667
|
+
micStream: micStream,
|
|
2668
|
+
webcamOn: webcamOn || !!webcamStream,
|
|
2669
|
+
micOn: micOn || !!micStream,
|
|
2670
|
+
mode: mode,
|
|
2671
|
+
metaData: agentParticipant === null || agentParticipant === void 0 ? void 0 : agentParticipant.metaData,
|
|
2672
|
+
pinState: pinState,
|
|
2673
|
+
isActiveSpeaker: activeSpeakerId === participantId,
|
|
2674
|
+
pin: pin,
|
|
2675
|
+
unpin: unpin,
|
|
2676
|
+
remove: remove,
|
|
2677
|
+
getAudioStats: getAudioStats,
|
|
2678
|
+
getVideoStats: getVideoStats
|
|
2679
|
+
};
|
|
2680
|
+
};
|
|
2681
|
+
|
|
2502
2682
|
var _excluded = ["participantId", "type"];
|
|
2503
2683
|
var Constants = jsSdk.VideoSDK.Constants;
|
|
2504
2684
|
var createCameraVideoTrack = function createCameraVideoTrack(_ref) {
|
|
@@ -2794,6 +2974,7 @@ exports.createMicrophoneAudioTrack = createMicrophoneAudioTrack;
|
|
|
2794
2974
|
exports.createScreenShareVideoTrack = createScreenShareVideoTrack;
|
|
2795
2975
|
exports.getNetworkStats = getNetworkStats;
|
|
2796
2976
|
exports.setLogLevel = setLogLevel;
|
|
2977
|
+
exports.useAgentParticipant = useAgentParticipant;
|
|
2797
2978
|
exports.useCharacter = useCharacter;
|
|
2798
2979
|
exports.useConnection = useConnection;
|
|
2799
2980
|
exports.useFile = useFile;
|