Explorar el Código

feat(ts) migrate modules\videosipgw\JitsiVideoSIPGWSession to TS

master
Naman Jain hace 4 meses
padre
commit
240abc0c35
No account linked to committer's email address
Se han modificado 1 ficheros con 21 adiciones y 17 borrados
  1. 21
    17
      modules/videosipgw/JitsiVideoSIPGWSession.ts

modules/videosipgw/JitsiVideoSIPGWSession.js → modules/videosipgw/JitsiVideoSIPGWSession.ts Ver fichero

@@ -1,6 +1,6 @@
1 1
 import { getLogger } from '@jitsi/logger';
2 2
 import { $iq } from 'strophe.js';
3
-
3
+import ChatRoom from '../xmpp/ChatRoom';
4 4
 import Listenable from '../util/Listenable';
5 5
 
6 6
 import * as VideoSIPGWConstants from './VideoSIPGWConstants';
@@ -11,13 +11,17 @@ const logger = getLogger('modules/videosipgw/JitsiVideoSIPGWSession');
11 11
  * The event name for current sip video session state changed.
12 12
  * @type {string} event name for sip video session state changed.
13 13
  */
14
-const STATE_CHANGED = 'STATE_CHANGED';
14
+const STATE_CHANGED: string = 'STATE_CHANGED';
15 15
 
16 16
 /**
17 17
  * Jitsi video SIP GW session. Holding its state and able to start/stop it.
18 18
  * When session is in OFF or FAILED stated it cannot be used anymore.
19 19
  */
20 20
 export default class JitsiVideoSIPGWSession extends Listenable {
21
+    sipAddress: string;
22
+    displayName: string;
23
+    chatRoom: ChatRoom;
24
+    state?: string;
21 25
 
22 26
     /**
23 27
      * Creates new session with the desired sip address and display name.
@@ -28,7 +32,7 @@ export default class JitsiVideoSIPGWSession extends Listenable {
28 32
      * that participant.
29 33
      * @param {ChatRoom} chatRoom - The chat room this session is bound to.
30 34
      */
31
-    constructor(sipAddress, displayName, chatRoom) {
35
+    constructor(sipAddress: string, displayName: string, chatRoom: ChatRoom) {
32 36
         super();
33 37
 
34 38
         this.sipAddress = sipAddress;
@@ -48,7 +52,7 @@ export default class JitsiVideoSIPGWSession extends Listenable {
48 52
     /**
49 53
      * Stops the current session.
50 54
      */
51
-    stop() {
55
+    stop(): void {
52 56
         if (this.state === VideoSIPGWConstants.STATE_OFF
53 57
             || this.state === VideoSIPGWConstants.STATE_FAILED) {
54 58
             logger.warn('Video SIP GW session already stopped or failed!');
@@ -62,7 +66,7 @@ export default class JitsiVideoSIPGWSession extends Listenable {
62 66
     /**
63 67
      * Starts a new session. Sends an iq to the focus.
64 68
      */
65
-    start() {
69
+    start(): void {
66 70
         // if state is off, this session was active for some reason
67 71
         // and we should create new one, rather than reusing it
68 72
         if (this.state === VideoSIPGWConstants.STATE_ON
@@ -85,7 +89,7 @@ export default class JitsiVideoSIPGWSession extends Listenable {
85 89
      * was entered.
86 90
      * @returns {void}
87 91
      */
88
-    setState(newState, failureReason) {
92
+    setState(newState: string, failureReason?: string): void {
89 93
         if (newState === this.state) {
90 94
             return;
91 95
         }
@@ -108,18 +112,18 @@ export default class JitsiVideoSIPGWSession extends Listenable {
108 112
      * Subscribes the passed listener to the event for state change of this
109 113
      * session.
110 114
      *
111
-     * @param {Function} listener - The function that will receive the event.
115
+     * @param {EventListener} listener - The function that will receive the event.
112 116
      */
113
-    addStateListener(listener) {
117
+    addStateListener(listener: EventListener): void {
114 118
         this.addListener(STATE_CHANGED, listener);
115 119
     }
116 120
 
117 121
     /**
118 122
      * Unsubscribes the passed handler.
119 123
      *
120
-     * @param {Function} listener - The function to be removed.
124
+     * @param {EventListener} listener - The function to be removed.
121 125
      */
122
-    removeStateListener(listener) {
126
+    removeStateListener(listener: EventListener): void {
123 127
         this.removeListener(STATE_CHANGED, listener);
124 128
     }
125 129
 
@@ -129,15 +133,14 @@ export default class JitsiVideoSIPGWSession extends Listenable {
129 133
      * @private
130 134
      * @param {string} action - The action to send ('start' or 'stop').
131 135
      */
132
-    _sendJibriIQ(action) {
136
+    private _sendJibriIQ(action: string): void {
133 137
         const attributes = {
134 138
             'xmlns': 'http://jitsi.org/protocol/jibri',
135 139
             'action': action,
136
-            sipaddress: this.sipAddress
140
+            'sipaddress': this.sipAddress,
141
+            'displayname': this.displayName
137 142
         };
138 143
 
139
-        attributes.displayname = this.displayName;
140
-
141 144
         const iq = $iq({
142 145
             to: this.chatRoom.focusMucJid,
143 146
             type: 'set' })
@@ -147,11 +150,12 @@ export default class JitsiVideoSIPGWSession extends Listenable {
147 150
         logger.debug(`${action} video SIP GW session`, iq.nodeTree);
148 151
         this.chatRoom.connection.sendIQ(
149 152
             iq,
150
-            () => {}, // eslint-disable-line no-empty-function
151
-            error => {
153
+            () => {}, // eslint-disable-line @typescript-eslint/no-empty-function
154
+            (error: any) => {
152 155
                 logger.error(
153 156
                     `Failed to ${action} video SIP GW session, error: `, error);
154 157
                 this.setState(VideoSIPGWConstants.STATE_FAILED);
155
-            });
158
+            },
159
+            undefined);
156 160
     }
157 161
 }

Loading…
Cancelar
Guardar