所选语种没有对应资源,请选择:

本站点使用Cookies,继续浏览表示您同意我们使用Cookies。Cookies和隐私政策>

提示

尊敬的用户,您的IE浏览器版本过低,为获取更好的浏览体验,请升级您的IE浏览器。

升级

TE10, TE20 会议电视终端 V600R019C00 HTTP API 编程参考

为了方便用户在自定义操作界面上控制终端,终端提供了大量的API(Application Programming Interface)命令行接口,用户可以通过调用这些接口控制终端。
评分并提供意见反馈 :
华为采用机器翻译与人工审校相结合的方式将此文档翻译成不同语言,希望能帮助您更容易理解此文档的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 华为对于翻译的准确性不承担任何责任,并建议您参考英文文档(已提供链接)。
综合示例

综合示例

本小节提供一个综合示例,修改会议参数,主流视频协议,典型场景为例子,介绍HTTP API函数接口使用方法,本小节js代码基于Ext2.3库开发,需要加载Ext2.3库后,才能正常使用。

/* JS程序入口,Ext2.3库加载成功后,自动执行该函数 */ 
 Ext.onReady(function() { 
 requestSessionID(); 
 }); 
/*记录认证成功后CSRFToken */
var strCSRFToken =’’;
 /* 第一步:请求会话ID */ 
/*注意,返回的Sessionid放在返回头的 Set-Cookie字段,这里浏览器会自动处理,第三方使用时需要根据实际情况处理,后期所有HTTP请求头部的Cookie字段都需要携带这个Sessionid,详见2.2登录认证流程介绍*/
 function requestSessionID (){ 
    Ext.Ajax.request({ 
      url: 'action.cgi?ActionID=Web_RequestSessionIDAPI', 
      success: function(response){ 
          var jsonString = response.responseText; 
          var jsonResponse = Ext.util.JSON.decode(jsonString); 
 if ('undefined' !=typeof jsonResponse.success && 1 == jsonResponse.success) 
          { 
 /* 请求认证 */ 
 requestCertificate(); 
          } 
 }, 
      fail: function(){ 
          /* 根据实际需求,对失败情况作处理 */ 
 }, 
      scope:this 
 }); 
 } 
 /* 第二步,校验用户名密码,假设用户名、密码都是'api' */ 
 function requestCertificate(){ 
 var data = {}; 
 data.user = 'api'; //用户名 
 var sessionId = Cookies.get('SessionID'); //从浏览器cookie中获取之前存储的会话ID 
 data.password = 'Change_Me'; 
 Ext.Ajax.request({ 
 url : 'action.cgi?ActionID=Web_RequestCertificateAPI', 
         method : 'post', 
 jsonData : data, 
 success : function(){ 
/*认证成功后,保存返回CSRF Token,后期每个表单请求都必须加上这个字段*/
strCSRFToken = response.data.acCSRFToken;
         /* 认证成功后,启动邮箱 */ 
         InitMailbox(); 
         /* 获取会场列表 */ 
         getConfParms(); 
 }, 
 fail : function(){ 
         /* 认证失败,根据具体场景进行处理 */ 
 }, 
 scope : this 
 }); 
 } 

 /* 认证通过后,订阅消息,并启动邮箱 */ 
 function InitMailbox(){ 
     /* 订阅消息,只订阅观看会场响应消息*/ 
     var params = {"aszMsgIDs":["4037"],"acCSRFToken":strCSRFToken}; 
 Ext.Ajax.request({ 
 url: 'action.cgi?ActionID=WEB_SubscribeMsgAPI', 
 method: 'POST', 
 jsonData: params, 
 success: function(response){ 
 var result = this.processResponse(response); 
 if(1 == result.success){ 
   /* 订阅成功 */ 
 }; 
 }, 
 failure: function(response){ 
 /* 异常处理 */ 
 }, 
 scope: this 
 }); 

 var funDefer = function(){ 
     getMailBoxData(); 
 }; 
 //邮箱定时器是1秒 
 funDefer.defer(1000); 
 }
/* 定时获取邮箱数据 */ 
 function getMailBoxData(){ 
 Ext.Ajax.request({ 
 url : 'action.cgi?ActionID=WEB_GetMailBoxDataAPI', 
     method : 'post', 
jsonData: {"acCSRFToken":strCSRFToken},
 success : function(response){ 
         /* 定时获取状态及邮箱数据 */ 
 if (response.responseText && Ext.decode(response.responseText).success){ 
     var dataString = Ext.decode(o.responseText).data; 
     var data = Ext.decode(dataString); 
     var msgStruct = Ext.decode(data.msgStruct); 
     var msgs = msgStruct.msg; 
     /* msgs就是获取到的消息数组,有可能是0条 */ 
     for (i = 0; i < msgs.length; i++) 
     { 
         var msg = Ext.decode(msgs[i]); 
         msgs[i] = msg; 
         /* 判断是否是观看会场响应 */ 
         if(msg.msgName == 'MSG_VIEW_SITE_RSP'){ 
             /* 收到观看会场响应后,根据场景需要,做处理 */ 
 } 
     } 
 } 
 }, 
 fail : function(response){ 
         /* 异常处理 */ 
 }, 
 scope : this 
 }); 
 } 
  function getConfParms (){ 
 Ext.Ajax.request({ 
url : 'action.cgi?ActionID=WEB_GetCfgParamAPI', 
method : 'post', 
jsonData: {"CfgIDString":["main_protocol"],"acCSRFToken":strCSRFToken}
success : function(){ 
var result = Ext.decode(response.responseText); 
/* 会场列表数据返回成功 */ 
if(result.success == 1){
ParmData = Ext.decode(result.data);
var MainPro = ParmData.main_protocol;
/*对MainPro 进行处理,这里返回255,表示auto*/
}

/* 修改主流视频协议为2,H.264BP */ 
setCfgParam(2); 

 }, 
 fail : function(){ 
/* 异常处理 */ 
 }, 
 scope : this 
 }); 
}

function setCfgParam(MainPro){ 
 Ext.Ajax.request({ 
url : 'action.cgi?ActionID=WEB_SaveCfgParamAPI', 
method : 'post', 
jsonData: {"CfgItemInt":[{"CfgItemID":"main_protocol","CfgItemInfo":MainPro}],"CfgItemString":[],"acCSRFToken":strCSRFToken},
success : function(){ 
var result = Ext.decode(response.responseText); 
/* 会场列表数据返回成功 */ 
if(result.success == 1){
/*保存配置成功*/
}

 }, 
 fail : function(){ 
/* 异常处理 */ 
 }, 
 scope : this 
 }); 
}
翻译
下载文档
更新时间:2019-03-08

文档编号:EDOC1100044503

浏览量:4817

下载量:63

平均得分:
本文档适用于这些产品
相关文档
相关版本
Share
上一页 下一页