Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
李勇
/
McuClient
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
李勇
2017-02-23 10:19:20 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
aea4e05f7b18fe8d682e550c8557e7e8e3e7f995
aea4e05f
1 parent
55b7bc2c
1.修改视频音频模块接口调用的返回值结构
隐藏空白字符变更
内嵌
并排对比
正在显示
6 个修改的文件
包含
44 行增加
和
42 行删除
src/apes/ApeConsts.js
src/apes/AudioApe.js
src/apes/ConferApe.js
src/apes/MediaModule.js
src/apes/VideoApe.js
src/pdus/pro.js
src/apes/ApeConsts.js
查看文件 @
aea4e05
...
...
@@ -102,12 +102,16 @@ ApeConsts.MEDIA_TYPE_DEFAULT=0;//没有类型
ApeConsts
.
MEDIA_TYPE_VIDEO
=
1
;
//视频流(包含音频)
ApeConsts
.
MEDIA_TYPE_AUDIO
=
2
;
//音频流
//FLASH中使用下面4个
ApeConsts
.
CGS_RELEASED
=
0
;
///< 无人占用状态
ApeConsts
.
CGS_PENDING
=
1
;
///< 占用成功,等待打开
ApeConsts
.
CGS_OPENNED
=
2
;
///< 打开成功
ApeConsts
.
CGS_GRABBING
=
3
;
///< 准备占用中, 属于本地状态机需要用的状态,在多点数据库中不存在。
//return返回值状态
ApeConsts
.
RETURN_SUCCESS
=
0
;
//成功
ApeConsts
.
RETURN_FAILED
=
1
;
//失败
////FLASH中使用下面4个
//ApeConsts.CGS_RELEASED = 0;///< 无人占用状态
//ApeConsts.CGS_PENDING = 1;///< 占用成功,等待打开
//ApeConsts.CGS_OPENNED = 2;///< 打开成功
//ApeConsts.CGS_GRABBING = 3; ///< 准备占用中, 属于本地状态机需要用的状态,在多点数据库中不存在。
//
ApeConsts
.
INVALIDATE_CHANNEL_ID
=
-
1
;
...
...
src/apes/AudioApe.js
查看文件 @
aea4e05
...
...
@@ -58,7 +58,7 @@ class AudioApe extends Ape {
{
loger
.
warn
(
'publishAudio,参数错误'
,
_param
);
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_INTERFACE_PARAM_WRONG
);
return
{
"code"
:
1
,
"data"
:
"
"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"参数错误
"
};
}
//同一个nodeId只允许推一个流,如果已经推了就不能再推
...
...
@@ -71,13 +71,13 @@ class AudioApe extends Ape {
let
freeChannel
=
this
.
mediaModule
.
getFreeMediaChannel
();
if
(
freeChannel
==
0
)
{
loger
.
warn
(
"publishAudio,没有空闲的channel "
);
return
{
"code"
:
1
,
"data"
:
"不能再打开更多的设备"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"不能再打开更多的设备"
};
}
//判断当前的频道是否已经占用
if
(
this
.
mediaModule
.
checkChannelIsOpening
(
_param
.
channelId
)){
loger
.
warn
(
_param
.
channelId
,
"频道已经被占用"
);
return
{
"code"
:
1
,
"data"
:
"频道已经被占用!"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"频道已经被占用!"
};
}
let
channelInfo
=
{};
...
...
@@ -90,7 +90,7 @@ class AudioApe extends Ape {
channelInfo
.
toNodeId
=
0
;
channelInfo
.
mediaType
=
ApeConsts
.
MEDIA_TYPE_AUDIO
;
this
.
sendTableUpdateHandler
(
channelInfo
);
return
{
"code"
:
0
,
"data"
:
"推流成功!"
}
return
{
"code"
:
ApeConsts
.
RETURN_SUCCESS
,
"data"
:
"推流成功!"
}
}
//停止推流,
...
...
@@ -106,8 +106,8 @@ class AudioApe extends Ape {
let
openingChannel
=
this
.
mediaModule
.
getOpeningMediaChannel
(
nodeId
);
if
(
openingChannel
==
0
)
{
loger
.
warn
(
nodeId
,
"stopPublishAudio,没有打开的channel,不需要关闭"
);
return
{
"code"
:
1
,
"data"
:
"没有打开的channel,不需要关闭"
};
loger
.
warn
(
nodeId
,
"stopPublishAudio,没有占用channel,不需要关闭"
);
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"没有占用channel,不需要关闭"
};
}
let
channelInfo
=
{};
...
...
@@ -126,15 +126,14 @@ class AudioApe extends Ape {
loger
.
log
(
'sendAudioBroadcastMsg.McuClient还未初始化数据!'
);
if
(
GlobalConfig
.
getCurrentStatus
().
code
==
0
||
GlobalConfig
.
getCurrentStatus
().
code
==
1
)
{
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_SEND_FAILED_NO_JOIN
);
return
{
"code"
:
1
,
"data"
:
"sendAudioBroadcastMsg.McuClient还未初始化数据"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"sendAudioBroadcastMsg.McuClient还未初始化数据"
};
}
return
{
"code"
:
1
,
"data"
:
"sendAudioBroadcastMsg.McuClient还未初始化数据"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"sendAudioBroadcastMsg.McuClient还未初始化数据"
};
}
if
(
_param
==
null
)
{
loger
.
warn
(
'sendAudioBroadcastMsg,参数错误'
,
_param
);
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_INTERFACE_PARAM_WRONG
);
return
{
"code"
:
1
,
"data"
:
"sendAudioBroadcastMsg,参数错误"
};
;
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"sendAudioBroadcastMsg,参数错误"
};
}
// to, message
loger
.
log
(
'发送Audio消息.'
,
_param
);
...
...
@@ -144,7 +143,7 @@ class AudioApe extends Ape {
let
freeChannel
=
this
.
mediaModule
.
getFreeMediaChannel
();
if
(
freeChannel
==
0
)
{
loger
.
warn
(
'sendAudioBroadcastMsg,不能再打开更多的设备'
,
_param
);
return
{
"code"
:
1
,
"data"
:
"不能再打开更多的设备"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"不能再打开更多的设备"
};
}
}
/* message RCVideoSendDataRequestPdu {
...
...
@@ -173,7 +172,7 @@ class AudioApe extends Ape {
loger
.
log
(
'发送公聊消息.'
);
this
.
sendChatUniform
(
audioSendPdu
);
}
return
{
"code"
:
0
,
"data"
:
""
};
return
{
"code"
:
ApeConsts
.
RETURN_SUCCESS
,
"data"
:
""
};
}
sendTableUpdateHandler
(
_channelInfo
)
{
...
...
src/apes/ConferApe.js
查看文件 @
aea4e05
...
...
@@ -455,7 +455,7 @@ class ConferApe extends Ape {
updaterRosterStatus
(
_param
){
if
(
_param
){
loger
.
log
(
"媒体模块发生更新,人员状态需要更新,fromNodeId->"
,
_param
.
fromNodeId
);
loger
.
log
(
_param
.
status
,
_param
.
fromNodeId
,
this
.
rosters
[
_param
.
fromNodeId
]
);
loger
.
log
(
_param
.
status
,
_param
.
fromNodeId
);
//console.log(_param.fromNodeId);
//如果是自己。改变自己的状态同步到MCU
//if(_param.fromNodeId==GlobalConfig.nodeId){
...
...
src/apes/MediaModule.js
查看文件 @
aea4e05
...
...
@@ -26,7 +26,7 @@ class MediaModule {
{
loger
.
warn
(
'getMediaPlayPath,参数错误'
,
_param
);
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_INTERFACE_PARAM_WRONG
);
return
{
"code"
:
1
,
"data"
:
""
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
""
};
}
let
path
=
""
;
...
...
@@ -53,7 +53,7 @@ class MediaModule {
+
"_"
+
_param
.
channelId
+
"_"
+
_param
.
timestamp
;
}
return
{
"code"
:
0
,
"data
"
:
path
};
return
{
"code"
:
ApeConsts
.
RETURN_SUCCESS
,
"data"
:
""
,
"playUrl
"
:
path
};
}
//获取推流地址
...
...
@@ -62,7 +62,7 @@ class MediaModule {
//判断当前开启的视频数量是否已经是最大值,如果已经是最大值,不能再开启
let
freeChannel
=
this
.
getFreeMediaChannel
();
if
(
freeChannel
==
0
)
{
return
{
"code"
:
1
,
"data"
:
"不能再打开更多的设备"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"不能再打开更多的设备"
};
}
//默认方式推流
...
...
@@ -82,15 +82,14 @@ class MediaModule {
+
port
+
"/"
+
pubType
+
"/"
+
GlobalConfig
.
siteId
+
"_"
+
GlobalConfig
.
classId
+
"_"
+
GlobalConfig
.
userId
+
"_"
+
freeChannel
+
"_"
+
timestamp
;
return
{
"code"
:
0
,
"data"
:
{
"siteId"
:
GlobalConfig
.
siteId
,
"classId"
:
GlobalConfig
.
classId
,
"userId"
:
GlobalConfig
.
userId
,
"channelId"
:
freeChannel
,
"timestamp"
:
timestamp
,
"publishUrl"
:
publishUrl
}
return
{
"code"
:
ApeConsts
.
RETURN_SUCCESS
,
"data"
:
""
,
"siteId"
:
GlobalConfig
.
siteId
,
"classId"
:
GlobalConfig
.
classId
,
"userId"
:
GlobalConfig
.
userId
,
"channelId"
:
freeChannel
,
"timestamp"
:
timestamp
,
"publishUrl"
:
publishUrl
};
}
...
...
src/apes/VideoApe.js
查看文件 @
aea4e05
...
...
@@ -59,7 +59,7 @@ class VideoApe extends Ape {
{
loger
.
warn
(
'publishVideo,参数错误'
,
_param
);
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_INTERFACE_PARAM_WRONG
);
return
{
"code"
:
1
,
"data"
:
"
"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"参数错误
"
};
}
loger
.
log
(
'publishVideo -> maxVideoChannels'
,
GlobalConfig
.
maxVideoChannels
);
...
...
@@ -74,13 +74,13 @@ class VideoApe extends Ape {
let
freeChannel
=
this
.
mediaModule
.
getFreeMediaChannel
();
if
(
freeChannel
==
0
)
{
loger
.
warn
(
"publishVideo,没有空闲的channel "
);
return
{
"code"
:
1
,
"data"
:
"不能再打开更多的设备"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"不能再打开更多的设备"
};
}
//判断当前的频道是否已经占用
if
(
this
.
mediaModule
.
checkChannelIsOpening
(
_param
.
channelId
)){
loger
.
warn
(
_param
.
channelId
,
"频道已经被占用"
);
return
{
"code"
:
1
,
"data"
:
"频道已经被占用!"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"频道已经被占用!"
};
}
let
channelInfo
=
{};
...
...
@@ -93,7 +93,7 @@ class VideoApe extends Ape {
channelInfo
.
toNodeId
=
0
;
channelInfo
.
mediaType
=
ApeConsts
.
MEDIA_TYPE_VIDEO
;
this
.
sendTableUpdateHandler
(
channelInfo
);
return
{
"code"
:
0
,
"data"
:
"推流成功!"
}
return
{
"code"
:
ApeConsts
.
RETURN_SUCCESS
,
"data"
:
"推流成功!"
}
}
//停止推流,
...
...
@@ -109,8 +109,8 @@ class VideoApe extends Ape {
let
openingChannel
=
this
.
mediaModule
.
getOpeningMediaChannel
(
nodeId
);
if
(
openingChannel
==
0
)
{
loger
.
warn
(
nodeId
,
"stopPublishVideo,没有打开的channel,不需要关闭"
);
return
{
"code"
:
1
,
"data"
:
"没有打开的channel,不需要关闭"
};
loger
.
warn
(
nodeId
,
"stopPublishVideo,没有占用channel,不需要关闭"
);
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"没有占用channel,不需要关闭"
};
}
let
channelInfo
=
{};
...
...
@@ -131,13 +131,12 @@ class VideoApe extends Ape {
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_SEND_FAILED_NO_JOIN
);
return
{
"code"
:
1
,
"data"
:
"不能发送Video消息.McuClient还未初始化数据"
};
}
return
{
"code"
:
1
,
"data"
:
"不能发送Video消息.McuClient还未初始化数据"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"不能发送Video消息.McuClient还未初始化数据"
};
}
if
(
_param
==
null
)
{
loger
.
warn
(
'sendVideoCommandMsg失败,参数错误'
,
_param
);
this
.
_emit
(
MessageTypes
.
MCU_ERROR
,
MessageTypes
.
ERR_APE_INTERFACE_PARAM_WRONG
);
return
{
"code"
:
1
,
"data"
:
"sendVideoCommandMsg失败,参数错误"
};
;
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"sendVideoCommandMsg失败,参数错误"
};
}
// to, message
loger
.
log
(
'发送Video消息.'
,
_param
);
...
...
@@ -147,7 +146,7 @@ class VideoApe extends Ape {
let
freeChannel
=
this
.
mediaModule
.
getFreeMediaChannel
();
if
(
freeChannel
==
0
)
{
loger
.
warn
(
'sendVideoCommandMsg,不能再打开更多的设备'
,
_param
);
return
{
"code"
:
1
,
"data"
:
"不能再打开更多的设备"
};
return
{
"code"
:
ApeConsts
.
RETURN_FAILED
,
"data"
:
"不能再打开更多的设备"
};
}
}
/* message RCVideoSendDataRequestPdu {
...
...
@@ -176,7 +175,7 @@ class VideoApe extends Ape {
loger
.
log
(
'发送公聊Video消息.'
);
this
.
sendChatUniform
(
videoSendPdu
);
}
return
{
"code"
:
0
,
"data"
:
""
};
return
{
"code"
:
ApeConsts
.
RETURN_SUCCESS
,
"data"
:
""
};
}
sendTableUpdateHandler
(
_channelInfo
)
{
...
...
src/pdus/pro.js
查看文件 @
aea4e05
...
...
@@ -924,6 +924,7 @@ message RCClassStatusInfoPdu {
optional
uint32
active_doc_cur_page
=
21
;
//当前激活的文档的当前页
}
//end
`
;
...
...
请
注册
或
登录
后发表评论