|
@@ -89,4 +89,761 @@ function isLinux() {
|
|
|
return true;
|
|
|
}
|
|
|
return false;
|
|
|
+}
|
|
|
+function onenet_guid()
|
|
|
+{
|
|
|
+ return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
|
|
|
+ var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
|
|
|
+ return v.toString(16);
|
|
|
+ });
|
|
|
+
|
|
|
+}
|
|
|
+
|
|
|
+function InitCmdMsg(action, data)
|
|
|
+{
|
|
|
+ var msg = {};
|
|
|
+ msg['logid'] = onenet_guid();
|
|
|
+ msg['action'] = action;
|
|
|
+ msg['data'] = data;
|
|
|
+ return msg;
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+var oneNetHelper_activex=new Object();
|
|
|
+oneNetHelper_activex.isAvailable = false;
|
|
|
+oneNetHelper_activex.IsAddonAvailable = function ()
|
|
|
+ {
|
|
|
+ if(!oneNetHelper_activex.isAvailable)
|
|
|
+ {
|
|
|
+ oneNetHelper_activex.isAvailable = (AuthClientCtrl)? true : false;
|
|
|
+ if(oneNetHelper_activex.isAvailable)
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ AuthClientCtrl.Test();
|
|
|
+ }
|
|
|
+ catch(e)
|
|
|
+ {
|
|
|
+ oneNetHelper_activex.isAvailable = false;
|
|
|
+ alert("AuthClientCtrl.Test失败!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ alert("加载AuthClientCtrl 对象失败!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ return oneNetHelper_activex.isAvailable;
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.AddonAvailableNotify = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ resp['addon']=oneNetHelper_activex.isAvailable;
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.GetUASToken = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ AuthClientCtrl.GetUASToken();
|
|
|
+ resp['ret'] = AuthClientCtrl.lResult == 0 ? 1 : 0;
|
|
|
+ resp['errinfo'] = AuthClientCtrl.bstrError;
|
|
|
+ resp['token'] = AuthClientCtrl.bstrUASToken;
|
|
|
+ resp['expiredate'] = AuthClientCtrl.bstrUASExpireDate;
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.GetUserInfo = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ AuthClientCtrl.GetUserInfo();
|
|
|
+ resp['ret'] = AuthClientCtrl.lResult == 0 ? 1 : 0;
|
|
|
+ resp['errinfo'] = AuthClientCtrl.bstrError;
|
|
|
+ resp['userid'] = AuthClientCtrl.bstrUserID;
|
|
|
+ resp['username'] = AuthClientCtrl.bstrUserName;
|
|
|
+ resp['certuserid'] = AuthClientCtrl.bstrCertUserID;
|
|
|
+ resp['certusername'] = AuthClientCtrl.bstrCertUserName;
|
|
|
+ resp['authresult'] = AuthClientCtrl.lAuthResult;
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.GetSignAndToken = function (randomnum, notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var hostname = location.hostname;
|
|
|
+ var msg = InitCmdMsg("GetSignAndToken", randomnum);
|
|
|
+ msg['appServerAddr'] = hostname;
|
|
|
+ var resp = {};
|
|
|
+ AuthClientCtrl.JsonActionCmdDeal(JSON.stringify(msg));
|
|
|
+ var obj = JSON.parse(AuthClientCtrl.bstrResponse);
|
|
|
+ resp = obj.info;
|
|
|
+ /*说明:1.针对老版本客户端底层未处理GetSignAndToken action方式,再次调用原接口获取令牌;
|
|
|
+ 2.若提示AuthClientCtrl未定义JsonActionCmdDeal方法,则直接使用GetSignAndToken方法*/
|
|
|
+ if(resp['ret'] == -2003)
|
|
|
+ {
|
|
|
+ AuthClientCtrl.GetSignAndToken(randomnum);
|
|
|
+ resp['ret'] = AuthClientCtrl.lResult == 0 ? 1 : 0;
|
|
|
+ resp['errinfo'] = AuthClientCtrl.bstrError;
|
|
|
+ resp['signandtoken'] = AuthClientCtrl.bstrSignValAndToken;
|
|
|
+ }
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.GetUserCertInfo = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ AuthClientCtrl.GetUserCertInfo();
|
|
|
+ resp['ret'] = AuthClientCtrl.lResult == 0 ? 1 : 0;
|
|
|
+ resp['errinfo'] = AuthClientCtrl.bstrError;
|
|
|
+ resp['DNStringAll'] = AuthClientCtrl.bstrUserCertInfoValue('DNStringAll');
|
|
|
+ resp['UserName'] = AuthClientCtrl.bstrUserCertInfoValue('UserName');
|
|
|
+ resp['UserID'] = AuthClientCtrl.bstrUserCertInfoValue('UserID');
|
|
|
+ resp['DNCode'] = AuthClientCtrl.bstrUserCertInfoValue('DNCode');
|
|
|
+ resp['DisName'] = AuthClientCtrl.bstrUserCertInfoValue('DisName');
|
|
|
+ resp['UniqueId'] = AuthClientCtrl.bstrUserCertInfoValue('UniqueId');
|
|
|
+ resp['IssuerDisName'] = AuthClientCtrl.bstrUserCertInfoValue('IssuerDisName');
|
|
|
+ resp['CertSerial'] = AuthClientCtrl.bstrUserCertInfoValue('CertSerial');
|
|
|
+ resp['EMail'] = AuthClientCtrl.bstrUserCertInfoValue('EMail');
|
|
|
+ resp['Org'] = AuthClientCtrl.bstrUserCertInfoValue('Org');
|
|
|
+ resp['OrgUnit'] = AuthClientCtrl.bstrUserCertInfoValue('OrgUnit');
|
|
|
+ resp['City'] = AuthClientCtrl.bstrUserCertInfoValue('City');
|
|
|
+ resp['State'] = AuthClientCtrl.bstrUserCertInfoValue('State');
|
|
|
+ resp['Descption'] = AuthClientCtrl.bstrUserCertInfoValue('Descption');
|
|
|
+ resp['Version'] = AuthClientCtrl.bstrUserCertInfoValue('Version');
|
|
|
+ resp['BeginTime'] = AuthClientCtrl.bstrUserCertInfoValue('BeginTime');
|
|
|
+ resp['EndTime'] = AuthClientCtrl.bstrUserCertInfoValue('EndTime');
|
|
|
+ //resp['authresult'] = AuthClientCtrl.lAuthResult;
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.Login = function (appToken,username,userpwd,authtype,svctype, gw_id, notify_web)
|
|
|
+ {
|
|
|
+ alert("Login IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.ChangeUKeyPin = function (old_key_pin,new_key_pin,notify_web)
|
|
|
+ {
|
|
|
+ alert("ChangeUKeyPin IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.SSLUsbKeyLogin = function (appToken,gw_id,key_pin,notify_web)
|
|
|
+ {
|
|
|
+ alert("SSLUsbKeyLogin IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.SSLUserPwdLogin = function (appToken,gw_id,username,userpwd,notify_web)
|
|
|
+ {
|
|
|
+ alert("SSLUserPwdLogin IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.IPSecUsbKeyLogin = function (appToken,gw_id,key_pin,notify_web)
|
|
|
+ {
|
|
|
+ alert("IPSecUsbKeyLogin IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.Logout = function (appToken,notify_web)
|
|
|
+ {
|
|
|
+ alert("Logout IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.QuerySecPortalStatus = function (appToken,notify_web)
|
|
|
+ {
|
|
|
+ alert("QuerySecPortalStatus IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.HeartBeat = function (appToken,notify_web)
|
|
|
+ {
|
|
|
+ alert("HeartBeat IE插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.GetGateWayAddrList = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var msg = InitCmdMsg("GetGateWayAddrList", "");
|
|
|
+ var resp = {};
|
|
|
+ AuthClientCtrl.JsonActionCmdDeal(JSON.stringify(msg));
|
|
|
+ var obj = JSON.parse(AuthClientCtrl.bstrResponse);
|
|
|
+ resp = obj.info;
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_activex.JsonActionTestCmdDeal = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var msg = InitCmdMsg("testAction", "");
|
|
|
+ var resp = {};
|
|
|
+ AuthClientCtrl.JsonActionCmdDeal(JSON.stringify(msg));
|
|
|
+ var obj = JSON.parse(AuthClientCtrl.bstrResponse);
|
|
|
+ resp = obj.info;
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+ var oneNetHelper_np=new Object();
|
|
|
+oneNetHelper_np.isAvailable = false;
|
|
|
+oneNetHelper_np.IsAddonAvailable = function ()
|
|
|
+ {
|
|
|
+ if(!oneNetHelper_np.isAvailable)
|
|
|
+ {
|
|
|
+ oneNetHelper_np.isAvailable = (plugin) ? true : false;
|
|
|
+ if(oneNetHelper_np.isAvailable)
|
|
|
+ {
|
|
|
+ try
|
|
|
+ {
|
|
|
+ //AuthClientCtrl.Test();
|
|
|
+ }
|
|
|
+ catch(e)
|
|
|
+ {
|
|
|
+ alert("plugin.Test失败!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ alert("加载plugin 对象失败!");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ return oneNetHelper_np.isAvailable;
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.AddonAvailableNotify = function (notify_web)
|
|
|
+ {
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ resp['addon']=oneNetHelper_np.IsAddonAvailable();
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.GetUASToken = function (notify_web)
|
|
|
+ {
|
|
|
+ alert("GetUASToken np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.GetUserInfo = function (notify_web)
|
|
|
+ {
|
|
|
+ var msg = {};
|
|
|
+ msg['logid'] = 'GetUserInfo';
|
|
|
+ msg['action'] = 'UIGetUserInfo';
|
|
|
+ msg['data'] = "";
|
|
|
+ var req = JSON.stringify(msg);
|
|
|
+
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ var outStr = plugin.HandleJsonReq(req);
|
|
|
+ resp = JSON.parse(outStr);
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.GetSignAndToken = function (randomnum, notify_web)
|
|
|
+ {
|
|
|
+ /*1.调整np插件获取令牌的anction为GetSignAndToken,保持与非np插件一致;
|
|
|
+ 2.同时为兼容旧版本客户端,当outStr为空时,需调用action UIGetSignAndToken*/
|
|
|
+ var msg = {};
|
|
|
+ var hostname = location.hostname;
|
|
|
+ msg['logid'] = 'GetSignAndToken';
|
|
|
+ msg['action'] = 'GetSignAndToken';
|
|
|
+ msg['data'] = randomnum;
|
|
|
+ msg['appServerAddr'] = hostname;
|
|
|
+ var req = JSON.stringify(msg);
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ var outStr = plugin.HandleJsonReq(req);
|
|
|
+ if(outStr != '{}')
|
|
|
+ {
|
|
|
+ resp = JSON.parse(outStr);
|
|
|
+ notify_web(resp);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ msg['action'] = 'UIGetSignAndToken';
|
|
|
+ req = JSON.stringify(msg);
|
|
|
+ outStr = plugin.HandleJsonReq(req);
|
|
|
+ resp = JSON.parse(outStr);
|
|
|
+ notify_web(resp);
|
|
|
+ }
|
|
|
+
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.GetUserCertInfo = function (notify_web)
|
|
|
+ {
|
|
|
+ var msg = {};
|
|
|
+ msg['logid'] = 'UIGetCertInfo';
|
|
|
+ msg['action'] = 'UIGetCertInfo';
|
|
|
+ msg['data'] = "";
|
|
|
+ var req = JSON.stringify(msg);
|
|
|
+
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ var outStr = plugin.HandleJsonReq(req);
|
|
|
+ resp = JSON.parse(outStr);
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.Login = function (appToken,username,userpwd,authtype,svctype, gw_id, notify_web)
|
|
|
+ {
|
|
|
+ alert("Login np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.SSLUsbKeyLogin = function (appToken,gw_id,key_pin,notify_web)
|
|
|
+ {
|
|
|
+ alert("SSLUsbKeyLogin np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.SSLUserPwdLogin = function (appToken,gw_id,username,userpwd,notify_web)
|
|
|
+ {
|
|
|
+ alert("SSLUserPwdLogin np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.IPSecUsbKeyLogin = function (appToken,gw_id,key_pin,notify_web)
|
|
|
+ {
|
|
|
+ alert("IPSecUsbKeyLogin np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.Logout = function (appToken,notify_web)
|
|
|
+ {
|
|
|
+ alert("Logout np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.QuerySecPortalStatus = function (appToken,notify_web)
|
|
|
+ {
|
|
|
+ alert("QuerySecPortalStatus np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.HeartBeat = function (appToken,notify_web)
|
|
|
+ {
|
|
|
+ alert("HeartBeat np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.GetWebServiceAddr = function (notify_web)
|
|
|
+ {
|
|
|
+ alert("GetWebServiceAddr np插件未实现");
|
|
|
+ }
|
|
|
+
|
|
|
+oneNetHelper_np.GetGateWayAddrList = function (notify_web)
|
|
|
+{
|
|
|
+ var msg = {};
|
|
|
+ msg['logid'] = 'GetGateWayAddrList';
|
|
|
+ msg['action'] = 'GetGateWayAddrList';
|
|
|
+ msg['data'] = "";
|
|
|
+ var req = JSON.stringify(msg);
|
|
|
+
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = {};
|
|
|
+ var outStr = plugin.HandleJsonReq(req);
|
|
|
+ resp = JSON.parse(outStr);
|
|
|
+ notify_web(resp);
|
|
|
+ }, 0);
|
|
|
+}
|
|
|
+function vLog(msg)
|
|
|
+{
|
|
|
+ var args = Array.prototype.slice.call(arguments);
|
|
|
+ args.unshift('[onenet]');
|
|
|
+ console.log.apply(console, args);
|
|
|
+}
|
|
|
+
|
|
|
+// function onenet_guid()
|
|
|
+// {
|
|
|
+// return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
|
|
|
+// var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
|
|
|
+// return v.toString(16);
|
|
|
+// });
|
|
|
+
|
|
|
+// }
|
|
|
+
|
|
|
+
|
|
|
+class COneNetHelper{
|
|
|
+ constructor()
|
|
|
+ {
|
|
|
+ this.name = 'OneNet';
|
|
|
+ this.mCmdCbMap = new Map();
|
|
|
+ this.evtReqName = 'EventOneNetHost';
|
|
|
+ this.evtRespName = 'EventOneNetWeb';
|
|
|
+ this.type = 'OneNetReqBg';
|
|
|
+ this.msgGetUserInfo = 'GetUserInfo';
|
|
|
+ this.msgGetSignAndToken = 'GetSignAndToken';
|
|
|
+ this.msgGetUserCertInfo = 'GetUserCertInfo';
|
|
|
+ this.msgLogin ='Login';
|
|
|
+ this.msgLogout ='Logout';
|
|
|
+ this.msgQuerySecPortalStatus = 'QuerySecPortalStatus';
|
|
|
+ this.msgHeartBeat = 'HeartBeat';
|
|
|
+ this.msgGetGateWayAddrList = 'GetGateWayAddrList';
|
|
|
+ this.msgCheckExtensionInstalled = 'ExtensionInstalled';
|
|
|
+ this.msgGetUASToken = 'GetUASToken';
|
|
|
+ this.msgChangeUKeyPin = 'ChangeUKeyPin';
|
|
|
+ this.msgTestAction = 'testAction';
|
|
|
+ this.isInstalled = 0;
|
|
|
+ this.timeout = 30000;
|
|
|
+
|
|
|
+ this.AddonAvailableNotifyCB;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ InsertCmdCBHandler(msg, webCB)
|
|
|
+ {
|
|
|
+ var that=this;
|
|
|
+ this.mCmdCbMap.set(msg['logid'], webCB);
|
|
|
+ setTimeout(function (){
|
|
|
+ var resp = msg;
|
|
|
+ var cb = that.mCmdCbMap.get(resp.logid);
|
|
|
+ if( cb !== undefined)
|
|
|
+ {
|
|
|
+ that.DeleteCmdCBHandler(resp);
|
|
|
+ if(cb == that.AddonAvailableNotifyCB)
|
|
|
+ {
|
|
|
+ that.isInstalled = 0;
|
|
|
+ resp['addon']=that.isInstalled;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ resp['ret'] = 0;
|
|
|
+ resp['errinfo'] = 'timeout';
|
|
|
+ }
|
|
|
+ webCB(resp);
|
|
|
+ }
|
|
|
+ }, that.timeout);
|
|
|
+ }
|
|
|
+
|
|
|
+ DeleteCmdCBHandler(obj)
|
|
|
+ {
|
|
|
+ this.mCmdCbMap.delete(obj.logid);
|
|
|
+ }
|
|
|
+
|
|
|
+ InitCmdMsg(action, data)
|
|
|
+ {
|
|
|
+ var msg = {};
|
|
|
+ if(action == this.msgCheckExtensionInstalled)
|
|
|
+ {
|
|
|
+ msg['logid'] = action;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ msg['logid'] = onenet_guid();
|
|
|
+ }
|
|
|
+ msg['action'] = action;
|
|
|
+ msg['data'] = data;
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
+
|
|
|
+ SendCustomCmd(msg,webCB)
|
|
|
+ {
|
|
|
+ if(msg['action'] === undefined)
|
|
|
+ {
|
|
|
+ vLog('CallEx() action error: ' + msg);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ if(msg['data'] === undefined)
|
|
|
+ {
|
|
|
+ msg['data']="";
|
|
|
+ }
|
|
|
+ var tmpmsg = this.InitCmdMsg(msg['action'], msg['data']);
|
|
|
+ this.InsertCmdCBHandler(tmpmsg, webCB);
|
|
|
+ this.BgRequest(tmpmsg);
|
|
|
+ }
|
|
|
+
|
|
|
+ GetUASToken(notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgGetUASToken, "");
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ GetUserInfo(notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgGetUserInfo, "");
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ GetSignAndToken(randomnum, notify_web)
|
|
|
+ {
|
|
|
+ var hostname = location.hostname;
|
|
|
+ vLog('GetSignAndToken: ' + hostname);
|
|
|
+ var msg = this.InitCmdMsg(this.msgGetSignAndToken, randomnum);
|
|
|
+ msg['appServerAddr'] = hostname;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ GetUserCertInfo(notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgGetUserCertInfo, "");
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ Login(appToken,username,userpwd,authtype,svctype, gw_id, notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgLogin, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ msg['username'] = username;
|
|
|
+ msg['password'] = userpwd;
|
|
|
+ msg['authtype']= authtype;
|
|
|
+ msg['svctype']= svctype;
|
|
|
+ msg['gw_id']= gw_id;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ ChangeUKeyPin(old_key_pin,new_key_pin,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgChangeUKeyPin, "");
|
|
|
+ msg['oldpin'] = old_key_pin;
|
|
|
+ msg['newpin'] = new_key_pin;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ SSLUsbKeyLogin(appToken,gw_id,key_pin,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgLogin, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ msg['username'] ="";
|
|
|
+ msg['password'] =key_pin;
|
|
|
+ msg['authtype']= "1";
|
|
|
+ msg['svctype']= "1";
|
|
|
+ msg['gw_id']= gw_id;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ SSLUserPwdLogin(appToken,gw_id,username,userpwd,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgLogin, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ msg['username'] =username;
|
|
|
+ msg['password'] =userpwd;
|
|
|
+ msg['authtype']= "2";
|
|
|
+ msg['svctype']= "1";
|
|
|
+ msg['gw_id']= gw_id;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ IPSecUsbKeyLogin(appToken,gw_id,key_pin,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgLogin, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ msg['username'] ="";
|
|
|
+ msg['password'] =key_pin;
|
|
|
+ msg['authtype']= "1";
|
|
|
+ msg['svctype']= "2";
|
|
|
+ msg['gw_id']= gw_id;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ Logout(appToken,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgLogout, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ QuerySecPortalStatus(appToken,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgQuerySecPortalStatus, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ HeartBeat(appToken,notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgHeartBeat, "");
|
|
|
+ msg['token'] = appToken;
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ GetGateWayAddrList(notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgGetGateWayAddrList, "");
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ JsonActionTestCmdDeal(notify_web)
|
|
|
+ {
|
|
|
+ var msg = this.InitCmdMsg(this.msgTestAction, "");
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ IsAddonAvailable()
|
|
|
+ {
|
|
|
+ return this.isInstalled;
|
|
|
+ }
|
|
|
+
|
|
|
+ AddonAvailableNotify(notify_web)
|
|
|
+ {
|
|
|
+ if( notify_web === undefined)
|
|
|
+ {
|
|
|
+ alert('AddonAvailableNotify no set notify_web callback!');
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ this.AddonAvailableNotifyCB=notify_web;
|
|
|
+ var msg = this.InitCmdMsg(this.msgCheckExtensionInstalled, "");
|
|
|
+ this.InsertCmdCBHandler(msg, notify_web);
|
|
|
+ this.BgRequest(msg);
|
|
|
+ }
|
|
|
+
|
|
|
+ BgRespone(msg)
|
|
|
+ {
|
|
|
+ vLog('BgRespone() rcv:' + msg);
|
|
|
+ var obj = JSON.parse(msg);
|
|
|
+
|
|
|
+ if(obj.action == this.msgCheckExtensionInstalled)
|
|
|
+ {
|
|
|
+ if(this.AddonAvailableNotifyCB !== undefined)
|
|
|
+ {
|
|
|
+ obj['logid'] = this.msgCheckExtensionInstalled;
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ this.isInstalled = 1;
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ //var call = this.mCmdCbMap.get(obj.action);
|
|
|
+ var cb = this.mCmdCbMap.get(obj.logid);
|
|
|
+ if( cb !== undefined)
|
|
|
+ {
|
|
|
+ this.DeleteCmdCBHandler(obj);
|
|
|
+ if(obj.action == this.msgCheckExtensionInstalled)
|
|
|
+ {
|
|
|
+ this.isInstalled = 1;
|
|
|
+ obj['addon'] = this.isInstalled;
|
|
|
+ this.AddonAvailableNotifyCB(obj);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ cb(obj.info);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ vLog('OneNetHelper BgRespone() action error: ' + obj.action);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ BgRequest(msg)
|
|
|
+ {
|
|
|
+ var that=this;
|
|
|
+ if(this.isInstalled == 1 || msg['action'] == this.msgCheckExtensionInstalled)
|
|
|
+ {
|
|
|
+ vLog('OneNetHelper BgRequest() send:' + JSON.stringify(msg));
|
|
|
+ var evt = window.top.document.createEvent("CustomEvent");
|
|
|
+ evt.initCustomEvent(this.evtReqName, true, false, msg);
|
|
|
+ window.top.document.dispatchEvent(evt);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ vLog('OneNetHelper BgRequest() err: oneNetHelper extension current is not available;' + JSON.stringify(msg));
|
|
|
+
|
|
|
+ this.DeleteCmdCBHandler(msg.logid);
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+var oneNetHelper_webext=new COneNetHelper();
|
|
|
+
|
|
|
+//OneNetHandle: {"type":"ReqBg", "message":{"action":"GetUserInfo", "data":""}}
|
|
|
+window.top.document.addEventListener(oneNetHelper_webext.evtRespName, function(evt)
|
|
|
+{
|
|
|
+ vLog('addEventListener::EventOneNetWeb():' + evt.detail);
|
|
|
+ oneNetHelper_webext.BgRespone(evt.detail);
|
|
|
+}, false);
|
|
|
+onenetHelperInit.Init();
|
|
|
+//(4) 判断onenethelper插件是否可用
|
|
|
+function IsAddonAvailable()
|
|
|
+{
|
|
|
+ var form1 = false
|
|
|
+ oneNetHelper.AddonAvailableNotify(AddonAvailableCb)
|
|
|
+ console.log(oneNetHelper.IsAddonAvailable(),"000")
|
|
|
+ if(oneNetHelper.IsAddonAvailable())
|
|
|
+ {
|
|
|
+ // form1.T01.value = "true";
|
|
|
+ form1 = true
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ form1 = false
|
|
|
+ alert("请先安装插件!")
|
|
|
+//(5) 当onenethelper插件不可用时,调用通知接口加载插件
|
|
|
+ // oneNetHelper.AddonAvailableNotify(AddonAvailableCb);
|
|
|
+ }
|
|
|
+ return form1
|
|
|
+}
|
|
|
+
|
|
|
+function AddonAvailableCb(ob)
|
|
|
+{
|
|
|
+ console.log(ob.addon)
|
|
|
+ // form1.T01.value=ob.addon;
|
|
|
+ return ob.addon
|
|
|
+}
|
|
|
+function GetSignAndToken(form1T8)
|
|
|
+{
|
|
|
+
|
|
|
+ oneNetHelper.GetSignAndToken(form1T8, GetSignAndTokenCb);
|
|
|
+}
|
|
|
+function GetSignAndTokenCb(ob)
|
|
|
+{
|
|
|
+ //console.log('GetSignAndTokenCb return:' + JSON.stringify(ob));
|
|
|
+ // form1.T10.value=ob.ret;
|
|
|
+ var form1T9 = ""
|
|
|
+ if(ob.ret == 1)
|
|
|
+ {
|
|
|
+ form1T9 = ob.signandtoken;//获取组合令牌数据
|
|
|
+ // form1.T11.value="成功";
|
|
|
+ // axios({
|
|
|
+ // method: 'post', //
|
|
|
+ // url:' http://127.0.0.1:6006/webservice/verifyIdentityTicket ', // 配制api
|
|
|
+ // data: { // 配制参数
|
|
|
+ // challenge: form1.T8.value,//随机挑战数
|
|
|
+ // identityTicket:form1.T9.value,//组合令牌数据
|
|
|
+ // appServerID:'0'//服务器ID
|
|
|
+
|
|
|
+ // },
|
|
|
+ // headers: {
|
|
|
+
|
|
|
+ // }
|
|
|
+ // }).then(res => {
|
|
|
+ // if(res.expiresIn==7200) {
|
|
|
+
|
|
|
+ // }
|
|
|
+ // })
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ alert("获取组合令牌出错!")
|
|
|
+ // form1.T11.value=ob.errinfo;
|
|
|
+ }
|
|
|
+ return form1T9
|
|
|
+}
|
|
|
+export {
|
|
|
+ IsAddonAvailable,
|
|
|
+ GetSignAndToken,
|
|
|
+ GetSignAndTokenCb,
|
|
|
}
|