From b5ea5b40f4ced4c33236d65bce676378c469d847 Mon Sep 17 00:00:00 2001 From: Hans-Peter Herzog Date: Thu, 19 Sep 2019 23:14:42 +0200 Subject: [PATCH] TT#66595 Fix type issue with Janus video room id Change-Id: I6958ae1c34562af89494e1d0f5b773bfa1f32e99 --- package.json | 2 +- src/plugins/videoroom/handle.js | 11 +++++++++-- src/plugins/videoroom/index.js | 4 ---- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index f935e0e..97828bd 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "janus-videoroom-client", - "version": "4.1.2", + "version": "4.1.3", "main": "src/janus.js", "scripts": { "test": "mocha -b --exit -R spec --full-trace test/*-spec.js" diff --git a/src/plugins/videoroom/handle.js b/src/plugins/videoroom/handle.js index df0e607..0cdf057 100644 --- a/src/plugins/videoroom/handle.js +++ b/src/plugins/videoroom/handle.js @@ -39,6 +39,7 @@ class VideoRoomHandle extends PluginHandle { destroy(options) { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); + options.room = parseInt(options.room + ""); let message = _.merge({ request: 'destroy' }, options); @@ -55,6 +56,7 @@ class VideoRoomHandle extends PluginHandle { exists(options) { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); + options.room = parseInt(options.room + ""); let message = _.merge({ request: 'exists' }, options); @@ -87,6 +89,7 @@ class VideoRoomHandle extends PluginHandle { listParticipants(options) { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); + options.room = parseInt(options.room + ""); let message = _.merge({ request: 'listparticipants' }, options); @@ -105,6 +108,7 @@ class VideoRoomHandle extends PluginHandle { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); assert.property(options, 'ptype'); + options.room = parseInt(options.room + ""); let message = _.merge({ request: 'join' }, options); @@ -125,6 +129,7 @@ class VideoRoomHandle extends PluginHandle { joinPublisher(options) { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); + options.room = parseInt(options.room + ""); let joinOptions = _.merge({ ptype: ParticipantType.publisher }, options); @@ -142,6 +147,8 @@ class VideoRoomHandle extends PluginHandle { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); assert.property(options, 'feed'); + options.room = parseInt(options.room + ""); + options.feed = parseInt(options.feed + ""); let joinOptions = _.merge({ ptype: ParticipantType.listener }, options); @@ -182,6 +189,7 @@ class VideoRoomHandle extends PluginHandle { options.audio = _.get(options, 'audio', true); options.video = _.get(options, 'video', true); options.data = _.get(options, 'data', true); + options.room = parseInt(options.room + ""); let message = _.merge({ request: 'joinandconfigure', ptype: 'publisher' @@ -240,6 +248,7 @@ class VideoRoomHandle extends PluginHandle { return new Promise((resolve, reject)=>{ assert.property(options, 'room'); assert.property(options, 'jsep'); + options.room = parseInt(options.room + ""); let message = _.merge({ request: 'start' }, options); @@ -377,8 +386,6 @@ class VideoRoomHandle extends PluginHandle { */ publishFeed(options) { return new Promise((resolve, reject)=>{ - assert.property(options, 'room'); - assert.property(options, 'jsep'); this.joinAndConfigure(options).then((res)=>{ resolve(res); }).catch((err)=>{ diff --git a/src/plugins/videoroom/index.js b/src/plugins/videoroom/index.js index 77ceb15..c9afd04 100644 --- a/src/plugins/videoroom/index.js +++ b/src/plugins/videoroom/index.js @@ -1,7 +1,6 @@ 'use strict'; const _ = require('lodash'); -const assert = require('chai').assert; const Plugin = require('../plugin').Plugin; const VideoRoomHandle = require('./handle').VideoRoomHandle; const VideoRoomPublisher = require('./publisher').VideoRoomPublisher; @@ -176,7 +175,6 @@ class VideoRoomPlugin extends Plugin { */ getFeeds(room) { return new Promise((resolve, reject)=>{ - assert.isNumber(room, 'Missing room id'); let feeds = []; Promise.resolve().then(()=>{ return this.defaultHandle(); @@ -204,8 +202,6 @@ class VideoRoomPlugin extends Plugin { * @returns {Promise} */ getFeedsExclude(room, feed) { - assert.isNumber(room, 'Missing room id'); - assert.isNumber(feed, 'Missing feed to exclude'); return new Promise((resolve, reject)=>{ this.getFeeds(room).then((feeds)=>{ resolve(_.remove(feeds, ($feed)=>{