Commit 158b334a099b626253e76795588cefc809823ec5
1 parent
fdcdcbce
update...
Showing
1 changed file
with
65 additions
and
123 deletions
src/main/resources/static/real_control_v2/js/safe_driv/call_phone.js
| 1 | 1 | var gb_call_phone = function () { |
| 2 | - /* | |
| 3 | - | |
| 4 | - var basePath = "http://180.168.57.114:4244"; | |
| 5 | - var wsUri = "ws://180.168.57.114:21892/"; | |
| 6 | - | |
| 7 | - var nbbm2tel = { | |
| 8 | - "S0E-178":"915618938041", | |
| 9 | - "S0E-179":"915618937546", | |
| 10 | - "S0E-182":"915618938047", | |
| 11 | - "S0E-183":"915618937940", | |
| 12 | - "S0E-186":"915601989452", | |
| 13 | - "S0E-187":"915618846405", | |
| 14 | - "S0E-043":"915618847457", | |
| 15 | - "S0E-044":"915618845487", | |
| 16 | - "S2F-070":"915618846479", | |
| 17 | - "S2F-071":"915601989461", | |
| 18 | - "S2F-072":"915618937945", | |
| 19 | - "S2F-073":"915618937845", | |
| 20 | - "S2F-075":"915618847416", | |
| 21 | - "S2F-076":"915618847410", | |
| 22 | - "S2F-077":"915618847413", | |
| 23 | - "S2F-078":"915618847415", | |
| 24 | - "S2F-079":"915618847417", | |
| 25 | - "S2F-080":"915618847418", | |
| 26 | - "S2F-083":"915618847420", | |
| 27 | - "S2F-119":"915601987406", | |
| 28 | - "W0F-018":"915618209534", | |
| 29 | - "W0F-019":"915601987405", | |
| 30 | - "W0F-020":"915618278604", | |
| 31 | - "W0F-021":"915618278614", | |
| 32 | - "W0F-022":"915618012546", | |
| 33 | - "W0F-023":"915618278704", | |
| 34 | - "W0F-024":"915618278594", | |
| 35 | - "W0F-025":"915601989450", | |
| 36 | - "W0F-026":"915618209194", | |
| 37 | - "W0F-027":"915618208724", | |
| 38 | - "W0F-028":"915618278624", | |
| 39 | - "W0F-029":"915601988491", | |
| 40 | - "W0F-030":"915618936848", | |
| 41 | - "W0F-031":"915618928940", | |
| 42 | - "W0F-069":"915618011142", | |
| 43 | - "W0F-070":"915618279534", | |
| 44 | - "W0F-071":"915601989439", | |
| 45 | - "W0F-072":"915618011245", | |
| 46 | - "W0F-073":"915618010242", | |
| 47 | - "W0F-074":"915618279594", | |
| 48 | - "W0F-075":"915618010947", | |
| 49 | - "W0F-089":"915618011747", | |
| 50 | - "W0F-090":"915618279574", | |
| 51 | - "S2F-069":"915618938143", | |
| 52 | - "S2F-081":"915601986481" | |
| 53 | - }; | |
| 54 | - | |
| 55 | - var locData = window.localStorage.getItem('test_nbbm2tel_json'); | |
| 56 | - if(locData){ | |
| 57 | - nbbm2tel = JSON.parse(locData); | |
| 58 | - } | |
| 59 | - | |
| 60 | - var login = function (cb) { | |
| 61 | - var agentID = '1002'; | |
| 62 | - var dn = '6002'; | |
| 63 | - | |
| 64 | - var options = { | |
| 65 | - AgentID: agentID, | |
| 66 | - DN: dn, | |
| 67 | - wsUri: wsUri, | |
| 68 | - setbtnStatus: function (stateName) { | |
| 69 | - //setState(stateName); | |
| 70 | - console.log('stateName', stateName); | |
| 71 | - | |
| 72 | - cb && cb(stateName) | |
| 73 | - } | |
| 74 | - }; | |
| 75 | - $.CallCenterInit(options); | |
| 76 | - }; | |
| 77 | - | |
| 78 | - var call = function (nbbm, loginSucc, loginFailed, callSucc) { | |
| 79 | - var telNumber = nbbm2tel[nbbm]; | |
| 80 | - if(!telNumber){ | |
| 81 | - alert('没有该车辆的对照表..'); | |
| 82 | - loginFailed && loginFailed(); | |
| 83 | - return; | |
| 84 | - } | |
| 85 | - login(function (sname) { | |
| 86 | - if(sname=='login'){ | |
| 87 | - loginSucc && loginSucc(); | |
| 88 | - | |
| 89 | - $.CallCenterPublicFun.Dialing(telNumber); | |
| 90 | - setTimeout(function () { | |
| 91 | - callSucc && callSucc(); | |
| 92 | - }, 1000); | |
| 93 | - } | |
| 94 | - else{ | |
| 95 | - //loginFailed && loginFailed(); | |
| 96 | - } | |
| 97 | - }); | |
| 98 | - }; | |
| 99 | - | |
| 100 | - var hangup = function () { | |
| 101 | - console.log('hangup...'); | |
| 102 | - $.CallCenterPublicFun.Hangup(); | |
| 103 | - $.CallCenterPublicFun.LoginOff(); | |
| 104 | - }; | |
| 105 | - | |
| 106 | - return { | |
| 107 | - call: call, | |
| 108 | - hangup: hangup, | |
| 109 | - setNbbm2tel: function (json) { | |
| 110 | - nbbm2tel = json; | |
| 111 | - | |
| 112 | - window.localStorage.setItem('test_nbbm2tel_json', JSON.stringify(nbbm2tel)); | |
| 113 | - }, | |
| 114 | - getNbbm2tel: function () { | |
| 115 | - return nbbm2tel; | |
| 116 | - } | |
| 117 | - }*/ | |
| 118 | 2 | |
| 119 | 3 | /** |
| 120 | 4 | * 0 已挂断 |
| ... | ... | @@ -128,14 +12,32 @@ var gb_call_phone = function () { |
| 128 | 12 | var agentID; |
| 129 | 13 | var dn; |
| 130 | 14 | var wrap = '.voip_call_info_panel'; |
| 15 | + var storage = window.localStorage; | |
| 16 | + var loc_dn_key = 'control_sd_voip_dn'; | |
| 17 | + var callMaxTime = 7;//拨号超时时间-秒 | |
| 18 | + var $stateBtnTxt; | |
| 131 | 19 | var init = function (nbbm) { |
| 20 | + $stateBtnTxt = $('.state_txt>button', wrap); | |
| 21 | + | |
| 132 | 22 | _nbbm = nbbm; |
| 133 | 23 | agentID = $('[name=agentID]', wrap).val(); |
| 134 | 24 | dn = $('[name=dn]', wrap).val(); |
| 135 | 25 | |
| 136 | - var $stateBtnTxt = $('.state_txt>button', wrap); | |
| 137 | - var $simInput = $('[name=simNo]', wrap); | |
| 26 | + //从本地读取分机号 | |
| 27 | + var locDn = storage.getItem(loc_dn_key); | |
| 28 | + if(!dn && locDn){ | |
| 29 | + dn = locDn; | |
| 30 | + $('[name=dn]', wrap).val(locDn); | |
| 31 | + } | |
| 32 | + | |
| 33 | + if(!dn){ | |
| 34 | + waitInputDn(); | |
| 35 | + return; | |
| 36 | + } | |
| 138 | 37 | |
| 38 | + //将分机号写入本地 | |
| 39 | + storage.setItem(loc_dn_key, $('[name=dn]', wrap).val()); | |
| 40 | + var $simInput = $('[name=simNo]', wrap); | |
| 139 | 41 | var eq = EventProxy.create('pluginInit', 'getSimNo', function () { |
| 140 | 42 | simNo = ('9' + simNo); |
| 141 | 43 | $simInput.val(simNo); |
| ... | ... | @@ -143,10 +45,13 @@ var gb_call_phone = function () { |
| 143 | 45 | $stateBtnTxt.text('获取SIM卡号失败!'); |
| 144 | 46 | return; |
| 145 | 47 | } |
| 146 | - $stateBtnTxt.text('正在拨号...') | |
| 48 | + | |
| 49 | + _t = 0; | |
| 50 | + $stateBtnTxt.text('正在拨号(0)') | |
| 147 | 51 | .attr('disabled', 'disabled'); |
| 148 | 52 | //拨号 |
| 149 | - $.PhonePluginFun.Dialing("913052310315"); | |
| 53 | + $.PhonePluginFun.Dialing(simNo); | |
| 54 | + startTimer(); | |
| 150 | 55 | }); |
| 151 | 56 | |
| 152 | 57 | //初始化插件 |
| ... | ... | @@ -161,10 +66,45 @@ var gb_call_phone = function () { |
| 161 | 66 | }); |
| 162 | 67 | }; |
| 163 | 68 | |
| 69 | + var waitInputDn = function () { | |
| 70 | + $stateBtnTxt.text('输入分机号,点击拨号!') | |
| 71 | + .removeAttr('disabled') | |
| 72 | + .addClass('uk-button-primary') | |
| 73 | + .one('click', function () { | |
| 74 | + init(_nbbm); | |
| 75 | + });; | |
| 76 | + $('[name=dn]', wrap).focus(); | |
| 77 | + }; | |
| 78 | + | |
| 79 | + /** | |
| 80 | + * 开始计时器 | |
| 81 | + */ | |
| 82 | + var _t = 0, timer; | |
| 83 | + var startTimer = function () { | |
| 84 | + if(_t >= callMaxTime){ | |
| 85 | + shutdown(); | |
| 86 | + return; | |
| 87 | + } | |
| 88 | + _t ++; | |
| 89 | + $stateBtnTxt.text('正在拨号('+_t+')'); | |
| 90 | + timer = setTimeout(startTimer, 1000); | |
| 91 | + }; | |
| 92 | + | |
| 93 | + var shutdown = function () { | |
| 94 | + _hangup(true); | |
| 95 | + $stateBtnTxt.text('已超时,点击重拨!') | |
| 96 | + .removeAttr('disabled') | |
| 97 | + .addClass('uk-button-primary') | |
| 98 | + .one('click', function () { | |
| 99 | + init(_nbbm); | |
| 100 | + });; | |
| 101 | + }; | |
| 102 | + | |
| 164 | 103 | var talking = function () { |
| 165 | 104 | console.log('talking'); |
| 105 | + clearTimeout(timer); | |
| 106 | + timer = null; | |
| 166 | 107 | phoneStatus = 1; |
| 167 | - | |
| 168 | 108 | setTimeout(function () { |
| 169 | 109 | var $stateBtnTxt = $('.state_txt>button', wrap); |
| 170 | 110 | $stateBtnTxt.text('已接通,点击挂断!') |
| ... | ... | @@ -206,8 +146,10 @@ var gb_call_phone = function () { |
| 206 | 146 | cb && cb(); |
| 207 | 147 | }; |
| 208 | 148 | |
| 209 | - var _hangup = function () { | |
| 210 | - if(phoneStatus==0) | |
| 149 | + var _hangup = function (flag) { | |
| 150 | + clearTimeout(timer); | |
| 151 | + timer = null; | |
| 152 | + if(!flag && phoneStatus==0) | |
| 211 | 153 | return; |
| 212 | 154 | console.log('hangup...'); |
| 213 | 155 | $.CallCenterPublicFun.Hangup(); | ... | ... |