Pārlūkot izejas kodu

feat(transcription): Add transcription status

master
hristoterezov 7 gadus atpakaļ
vecāks
revīzija
4c6bf3f31c

+ 9
- 0
JitsiConference.js Parādīt failu

630
     return this.transcriber;
630
     return this.transcriber;
631
 };
631
 };
632
 
632
 
633
+/**
634
+ * Returns the transcription status.
635
+ *
636
+ * @returns {String} "on" or "off".
637
+ */
638
+JitsiConference.prototype.getTranscriptionStatus = function() {
639
+    return this.room.transcriptionStatus;
640
+};
641
+
633
 /**
642
 /**
634
  * Adds JitsiLocalTrack object to the conference.
643
  * Adds JitsiLocalTrack object to the conference.
635
  * @param track the JitsiLocalTrack object.
644
  * @param track the JitsiLocalTrack object.

+ 3
- 0
JitsiConferenceEventManager.js Parādīt failu

191
     this.chatRoomForwarder.forward(XMPPEvents.RECORDER_STATE_CHANGED,
191
     this.chatRoomForwarder.forward(XMPPEvents.RECORDER_STATE_CHANGED,
192
         JitsiConferenceEvents.RECORDER_STATE_CHANGED);
192
         JitsiConferenceEvents.RECORDER_STATE_CHANGED);
193
 
193
 
194
+    this.chatRoomForwarder.forward(XMPPEvents.TRANSCRIPTION_STATUS_CHANGED,
195
+        JitsiConferenceEvents.TRANSCRIPTION_STATUS_CHANGED);
196
+
194
     this.chatRoomForwarder.forward(XMPPEvents.VIDEO_SIP_GW_AVAILABILITY_CHANGED,
197
     this.chatRoomForwarder.forward(XMPPEvents.VIDEO_SIP_GW_AVAILABILITY_CHANGED,
195
         JitsiConferenceEvents.VIDEO_SIP_GW_AVAILABILITY_CHANGED);
198
         JitsiConferenceEvents.VIDEO_SIP_GW_AVAILABILITY_CHANGED);
196
 
199
 

+ 10
- 0
JitsiConferenceEvents.js Parādīt failu

229
  */
229
  */
230
 export const TRACK_REMOVED = 'conference.trackRemoved';
230
 export const TRACK_REMOVED = 'conference.trackRemoved';
231
 
231
 
232
+/**
233
+ * Notifies for transcription status changes. The event provides the
234
+ * following parameters to its listeners:
235
+ *
236
+ * @param {String} status - The new status.
237
+ */
238
+export const TRANSCRIPTION_STATUS_CHANGED
239
+    = 'conference.transcriptionStatusChanged';
240
+
241
+
232
 /**
242
 /**
233
  * A new user joinned the conference.
243
  * A new user joinned the conference.
234
  */
244
  */

+ 3
- 1
JitsiMeetJS.js Parādīt failu

15
 import JitsiTrackError from './JitsiTrackError';
15
 import JitsiTrackError from './JitsiTrackError';
16
 import * as JitsiTrackErrors from './JitsiTrackErrors';
16
 import * as JitsiTrackErrors from './JitsiTrackErrors';
17
 import * as JitsiTrackEvents from './JitsiTrackEvents';
17
 import * as JitsiTrackEvents from './JitsiTrackEvents';
18
+import * as JitsiTranscriptionStatus from './JitsiTranscriptionStatus';
18
 import LocalStatsCollector from './modules/statistics/LocalStatsCollector';
19
 import LocalStatsCollector from './modules/statistics/LocalStatsCollector';
19
 import Recording from './modules/xmpp/recording';
20
 import Recording from './modules/xmpp/recording';
20
 import Logger from 'jitsi-meet-logger';
21
 import Logger from 'jitsi-meet-logger';
97
         participantConnectionStatus: ParticipantConnectionStatus,
98
         participantConnectionStatus: ParticipantConnectionStatus,
98
         recordingStatus: Recording.status,
99
         recordingStatus: Recording.status,
99
         recordingTypes: Recording.types,
100
         recordingTypes: Recording.types,
100
-        sipVideoGW: VideoSIPGWConstants
101
+        sipVideoGW: VideoSIPGWConstants,
102
+        transcriptionStatus: JitsiTranscriptionStatus
101
     },
103
     },
102
     events: {
104
     events: {
103
         conference: JitsiConferenceEvents,
105
         conference: JitsiConferenceEvents,

+ 13
- 0
JitsiTranscriptionStatus.js Parādīt failu

1
+/**
2
+ * The transciption is on.
3
+ *
4
+ * @type {String}
5
+ */
6
+export const ON = 'on';
7
+
8
+/**
9
+ * The transciption is off.
10
+ *
11
+ * @type {String}
12
+ */
13
+export const OFF = 'off';

+ 22
- 0
modules/xmpp/ChatRoom.js Parādīt failu

1
 /* global $, $pres, $iq, $msg, __filename, Strophe */
1
 /* global $, $pres, $iq, $msg, __filename, Strophe */
2
 import { getLogger } from 'jitsi-meet-logger';
2
 import { getLogger } from 'jitsi-meet-logger';
3
 import GlobalOnErrorHandler from '../util/GlobalOnErrorHandler';
3
 import GlobalOnErrorHandler from '../util/GlobalOnErrorHandler';
4
+import * as JitsiTranscriptionStatus from '../../JitsiTranscriptionStatus';
4
 import Listenable from '../util/Listenable';
5
 import Listenable from '../util/Listenable';
5
 import * as MediaType from '../../service/RTC/MediaType';
6
 import * as MediaType from '../../service/RTC/MediaType';
6
 import Moderator from './moderator';
7
 import Moderator from './moderator';
175
         this.participantPropertyListener = null;
176
         this.participantPropertyListener = null;
176
 
177
 
177
         this.locked = false;
178
         this.locked = false;
179
+        this.transcriptionStatus = JitsiTranscriptionStatus.OFF;
178
     }
180
     }
179
 
181
 
180
     /* eslint-enable max-params */
182
     /* eslint-enable max-params */
540
             case 'jibri-recording-status':
542
             case 'jibri-recording-status':
541
                 jibri = node;
543
                 jibri = node;
542
                 break;
544
                 break;
545
+            case 'transcription-status': {
546
+                const { attributes } = node;
547
+
548
+                if (!attributes) {
549
+                    break;
550
+                }
551
+
552
+                const { status } = attributes;
553
+
554
+                if (status && status !== this.transcriptionStatus) {
555
+                    this.transcriptionStatus = status;
556
+                    this.eventEmitter.emit(
557
+                        XMPPEvents.TRANSCRIPTION_STATUS_CHANGED,
558
+                        status
559
+                    );
560
+                }
561
+
562
+
563
+                break;
564
+            }
543
             case 'call-control': {
565
             case 'call-control': {
544
                 const att = node.attributes;
566
                 const att = node.attributes;
545
 
567
 

+ 8
- 0
service/xmpp/XMPPEvents.js Parādīt failu

195
     // suspending detected
195
     // suspending detected
196
     SUSPEND_DETECTED: 'xmpp.suspend_detected',
196
     SUSPEND_DETECTED: 'xmpp.suspend_detected',
197
 
197
 
198
+    /**
199
+     * Notifies for transcription status changes. The event provides the
200
+     * following parameters to its listeners:
201
+     *
202
+     * @param {String} status - The new status.
203
+     */
204
+    TRANSCRIPTION_STATUS_CHANGED: 'xmpp.transcription_status_changed',
205
+
198
     /**
206
     /**
199
      * Event fired when 'transport-info' with new ICE candidates is received.
207
      * Event fired when 'transport-info' with new ICE candidates is received.
200
      */
208
      */

Notiek ielāde…
Atcelt
Saglabāt