市长热线演示版

iframeocx.aspx 24KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493
  1. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="iframeocx.aspx.cs" Inherits="HySoft.BaseCallCenter.Web.iframeocx" %>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head runat="server">
  5. <title></title>
  6. <script src="seatformjs/formopt.js" type="text/javascript"></script>
  7. <script type="text/javascript">
  8. /*/// <summary>
  9. /// 取保持结果事件
  10. /// </summary>
  11. /// <param name="sender"></param>
  12. /// <param name="blres"></param>
  13. /// <param name="strres"></param>*/
  14. function EvtUnHold(blres, strres) {
  15. WriteFileLogs(1, "iframeocx.aspx", "EvtUnHold");
  16. if (blres == "True") {
  17. parent.document.getElementById("spanServerRes").innerHTML = "坐席接回成功";
  18. parent.setLinkStatus("true");
  19. parent.Form_setWinfromenble("True", "false", "false", "false", "True", "True", "True", "false", "false", "false");
  20. parent.setAgentStatus("忙");
  21. }
  22. else {
  23. parent.document.getElementById("spanServerRes").innerHTML = "坐席接回失败:" + strres;
  24. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "True", "false", "false", "True");
  25. }
  26. }
  27. /*/// <summary>
  28. /// 转移电话结果事件
  29. /// </summary>
  30. /// <param name="sender"></param>
  31. /// <param name="blres"></param>
  32. /// <param name="strres"></param>*/
  33. function EvtTransferToPhone(blres, strres) {
  34. WriteFileLogs(1, "iframeocx.aspx", "EvtTransferToPhone");
  35. if (blres == "True") {
  36. parent.document.getElementById("spanServerRes").innerHTML = "坐席转移电话成功";
  37. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "false", "false");
  38. }
  39. else {
  40. parent.document.getElementById("spanServerRes").innerHTML = "坐席转移电话失败:" + strres;
  41. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "True", "false", "false", "True");
  42. }
  43. }
  44. /*/// <summary>
  45. /// 转IVR结果事件
  46. /// </summary>
  47. /// <param name="sender"></param>
  48. /// <param name="blres"></param>
  49. /// <param name="strres"></param>*/
  50. function EvtTransferToIVR(blres, strres) {
  51. WriteFileLogs(1, "iframeocx.aspx", "EvtTransferToIVR");
  52. if (blres == "True") {
  53. parent.document.getElementById("spanServerRes").innerHTML = "坐席转IVR成功";
  54. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "false", "false");
  55. }
  56. else {
  57. parent.document.getElementById("spanServerRes").innerHTML = "坐席转IVR失败:" + strres;
  58. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "True", "false", "false", "True");
  59. }
  60. }
  61. /*/// <summary>
  62. /// 三方通话结果事件
  63. /// </summary>
  64. /// <param name="sender"></param>
  65. /// <param name="blres"></param>
  66. /// <param name="strres"></param>*/
  67. function EvtThirdParty(blres, strres) {
  68. WriteFileLogs(1, "iframeocx.aspx", "EvtThirdParty");
  69. if (blres == "True") {
  70. parent.document.getElementById("spanServerRes").innerHTML = "坐席三方通话成功";
  71. parent.Form_setWinfromenble("True", "false", "false", "false", "false", "false", "false", "false", "false", "false");
  72. }
  73. else {
  74. parent.document.getElementById("spanServerRes").innerHTML = "坐席三方通话失败:" + strres;
  75. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "True", "false", "false", "True");
  76. }
  77. }
  78. /*/// <summary>
  79. /// 坐席置闲结果事件
  80. /// </summary>
  81. /// <param name="sender"></param>
  82. /// <param name="blres"></param>
  83. /// <param name="strres"></param>*/
  84. function EvtSetFree(blres, strres) {
  85. WriteFileLogs(1, "iframeocx.aspx", "EvtSetFree");
  86. if (blres == "True") {
  87. parent.document.getElementById("spanServerRes").innerHTML = "坐席置闲成功";
  88. parent.setLinkStatus("True");
  89. parent.Form_setWinfromenble("false", "True", "True", "false", "false", "false", "false", "false", "false", "True");
  90. parent.setAgentStatus("空闲");
  91. }
  92. else {
  93. parent.document.getElementById("spanServerRes").innerHTML = "坐席置闲失败:" + strres;
  94. //parent.Form_setWinfromenble("false", "True", "True", "false", "false", "false", "false", "false", "false", "True");
  95. }
  96. }
  97. /*/// <summary>
  98. /// 坐席置忙结果事件
  99. /// </summary>
  100. /// <param name="sender"></param>
  101. /// <param name="blres"></param>
  102. /// <param name="strres"></param>*/
  103. function EvtSetBusy(blres, strres) {
  104. WriteFileLogs(1, "iframeocx.aspx", "EvtSetBusy");
  105. if (blres == "True") {
  106. parent.document.getElementById("spanServerRes").innerHTML = "坐席置忙成功";
  107. parent.setLinkStatus("True");
  108. parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "false", "false", "false", "True");
  109. parent.setAgentStatus("忙");
  110. }
  111. else {
  112. parent.document.getElementById("spanServerRes").innerHTML = "坐席置忙失败:" + strres;
  113. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "false", "false", "false", "True");
  114. }
  115. }
  116. /*/// <summary>
  117. /// 电话保持结果事件
  118. /// </summary>
  119. /// <param name="sender"></param>
  120. /// <param name="blres"></param>
  121. /// <param name="strres"></param>*/
  122. function EvtHold(blres, strres) {
  123. WriteFileLogs(1, "iframeocx.aspx", "EvtHold");
  124. if (blres == "True") {
  125. parent.document.getElementById("spanServerRes").innerHTML = "坐席保持成功";
  126. parent.setLinkStatus("True");
  127. parent.Form_setWinfromenble("True", "false", "false", "false", "false", "false", "false", "True", "false", "True");
  128. parent.setAgentStatus("忙");
  129. }
  130. else {
  131. parent.document.getElementById("spanServerRes").innerHTML = "坐席保持失败:" + strres;
  132. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "false", "True", "false", "True");
  133. }
  134. }
  135. /*/// <summary>
  136. /// 挂机结果事件
  137. /// </summary>
  138. /// <param name="sender"></param>
  139. /// <param name="blres"></param>
  140. /// <param name="strres"></param>*/
  141. function EvtHangup(blres, strres) {
  142. WriteFileLogs(1, "iframeocx.aspx", "EvtHangup");
  143. if (blres == "True") {
  144. parent.document.getElementById("spanServerRes").innerHTML = "坐席挂机成功";
  145. parent.setLinkStatus("false");
  146. parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "false", "True", "false", "True");
  147. parent.setAgentStatus("离席");
  148. }
  149. else {
  150. parent.document.getElementById("spanServerRes").innerHTML = "坐席挂机失败:" + strres;
  151. parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "false", "True", "false", "True");
  152. }
  153. }
  154. /*/// <summary>
  155. /// 咨询磋商结果事件
  156. /// </summary>
  157. /// <param name="sender"></param>
  158. /// <param name="blres"></param>
  159. /// <param name="strres"></param>*/
  160. function EvtConsult(blres, strres) {
  161. WriteFileLogs(1, "iframeocx.aspx", "EvtConsult");
  162. }
  163. /*/// <summary>
  164. /// 坐席外呼结果事件
  165. /// </summary>
  166. /// <param name="sender"></param>
  167. /// <param name="blres"></param>
  168. /// <param name="strres"></param>*/
  169. function EvtCallOut(blres, strres) {
  170. WriteFileLogs(1, "iframeocx.aspx", "EvtCallOut");
  171. if (blres == "True") {
  172. parent.document.getElementById("spanServerRes").innerHTML = "坐席外呼成功";
  173. parent.Form_setWinfromenble("True", "false", "false", "false", "false", "false", "false", "false", "false", "false");
  174. parent.setAgentStatus("忙");
  175. }
  176. else {
  177. parent.document.getElementById("spanServerRes").innerHTML = "坐席外呼失败:" + strres;
  178. //parent.Form_setWinfromenble("false", "True", "false", "True", "false", "false", "false", "True", "false", "True");
  179. }
  180. }
  181. /*/// <summary>
  182. /// 坐席登出结果事件
  183. /// </summary>
  184. /// <param name="sender"></param>
  185. /// <param name="blres"></param>
  186. /// <param name="strres"></param>*/
  187. function EvtAgentLogout(blres, strres) {
  188. WriteFileLogs(1, "iframeocx.aspx", "EvtAgentLogout");
  189. if (blres == "True") {
  190. parent.document.getElementById("spanServerRes").innerHTML = "坐席签出成功";
  191. parent.setLinkStatus("false");
  192. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "True", "false");
  193. parent.setAgentStatus("离席");
  194. }
  195. else {
  196. parent.document.getElementById("spanServerRes").innerHTML = "坐席签出失败:" + strres;
  197. //parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "True", "false");
  198. }
  199. }
  200. /*/// <summary>
  201. /// 坐席登录结果事件
  202. /// </summary>
  203. /// <param name="sender"></param>
  204. /// <param name="blres"></param>
  205. /// <param name="strres"></param>*/
  206. function EvtAgentLogin(blres, strres) {
  207. WriteFileLogs(1, "iframeocx.aspx", "EvtAgentLogin");
  208. if (blres=="True") {
  209. parent.document.getElementById("spanServerRes").innerHTML = "坐席签入成功";
  210. parent.setLinkStatus("True");
  211. parent.Form_setWinfromenble("false", "True", "True", "false", "false", "false", "false", "false", "false", "True");
  212. parent.setAgentStatus("空闲");
  213. }
  214. else {
  215. parent.document.getElementById("spanServerRes").innerHTML = "坐席签入失败:" + strres;
  216. parent.setLinkStatus("false");
  217. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "True", "false");
  218. parent.setAgentStatus("未签入");
  219. }
  220. }
  221. /*/// <summary>
  222. /// 挂机事件
  223. /// </summary>
  224. /// <param name="sender"></param>*/
  225. function EvtTelephoneHangup() {
  226. WriteFileLogs(1, "iframeocx.aspx", "EvtTelephoneHangup");
  227. if (blres == "True") {
  228. parent.document.getElementById("spanServerRes").innerHTML = "坐席挂机成功";
  229. parent.setLinkStatus("True");
  230. parent.Form_setWinfromenble("false", "True", "True", "false", "false", "false", "false", "false", "false", "True");
  231. parent.setAgentStatus("空闲");
  232. }
  233. else {
  234. parent.document.getElementById("spanServerRes").innerHTML = "坐席挂机失败:" + strres;
  235. parent.setLinkStatus("false");
  236. parent.Form_setWinfromenble("True", "True", "True", "false", "false", "false", "True", "false", "false", "True");
  237. }
  238. }
  239. /*/// <summary>
  240. /// 服务状态改变事件
  241. /// </summary>
  242. /// <param name="sender"></param>
  243. /// <param name="serverState"></param>*/
  244. function EvtServerStateChange(serverState) {
  245. WriteFileLogs(1, "iframeocx.aspx", "EvtServerStateChange:" + serverState);
  246. switch (serverState) {
  247. case "0":
  248. parent.document.getElementById("spanServerRes").innerHTML = "未签入";
  249. parent.setLinkStatus("True");
  250. parent.setAgentStatus("未签入");
  251. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "True", "false");
  252. break;
  253. case "1":
  254. parent.document.getElementById("spanServerRes").innerHTML = "线路空闲";
  255. parent.setLinkStatus("True");
  256. parent.setAgentStatus("空闲");
  257. parent.Form_setWinfromenble("false", "True", "True", "false", "false", "false", "false", "false", "false", "True");
  258. break;
  259. case "2":
  260. break;
  261. case "3":
  262. break;
  263. case "4":
  264. parent.document.getElementById("spanServerRes").innerHTML = "呼出振铃";
  265. parent.setLinkStatus("True");
  266. parent.setAgentStatus("忙");
  267. parent.Form_setWinfromenble("True", "false", "false", "false", "false", "false", "True", "false", "false", "false");
  268. break;
  269. case "5":
  270. parent.document.getElementById("spanServerRes").innerHTML = "来电振铃";
  271. parent.setLinkStatus("True");
  272. parent.setAgentStatus("忙");
  273. parent.Form_setWinfromenble("True", "false", "false", "false", "false", "false", "false", "false", "false", "false");
  274. break;
  275. case "6":
  276. parent.document.getElementById("spanServerRes").innerHTML = "通话中";
  277. parent.setLinkStatus("True");
  278. parent.setAgentStatus("忙");
  279. parent.Form_setWinfromenble("True", "false", "false", "false", "True", "True", "True", "false", "false", "false");
  280. break;
  281. case "7":
  282. parent.document.getElementById("spanServerRes").innerHTML = "通话保持中";
  283. parent.setLinkStatus("True");
  284. parent.setAgentStatus("忙");
  285. parent.Form_setWinfromenble("True", "false", "false", "false", "false", "false", "false", "True", "false", "false");
  286. break;
  287. }
  288. }
  289. /*/// <summary>
  290. /// 坐席状态改变事件
  291. /// </summary>
  292. /// <param name="sender"></param>
  293. /// <param name="agentState"></param>*/
  294. function EvtAgentStateChange(agentState) {
  295. WriteFileLogs(1, "iframeocx.aspx", "EvtAgentStateChange:" + agentState);
  296. switch (agentState) {
  297. case "1":
  298. parent.document.getElementById("spanServerRes").innerHTML = "登陆中...";
  299. parent.setLinkStatus("false");
  300. parent.setAgentStatus("未签入");
  301. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "false", "True");
  302. break;
  303. case "2":
  304. parent.document.getElementById("spanServerRes").innerHTML = "线路空闲";
  305. parent.setLinkStatus("True");
  306. parent.setAgentStatus("空闲");
  307. parent.Form_setWinfromenble("false", "True", "True", "false", "false", "false", "false", "false", "false", "True");
  308. break;
  309. case "3":
  310. parent.document.getElementById("spanServerRes").innerHTML = "通话中";
  311. parent.setLinkStatus("True");
  312. parent.setAgentStatus("忙");
  313. parent.Form_setWinfromenble("True", "false", "false", "false", "True", "True", "True", "false", "false", "false");
  314. parent.telajaxopt("../telmanage/ajax/telrecords.ashx?action=zhaijiEvent&callid=" + parent.document.getElementById("CallHjbh").value); //更新摘机事件
  315. break;
  316. case "4":
  317. parent.document.getElementById("spanServerRes").innerHTML = "话后处理";
  318. parent.setLinkStatus("True");
  319. parent.setAgentStatus("忙");
  320. parent.Form_setWinfromenble("false", "false", "false", "True", "false", "false", "false", "false", "false", "True");
  321. parent.telajaxopt("../telmanage/ajax/telrecords.ashx?action=guajiEvent&callid=" + parent.document.getElementById("CallHjbh").value); //更新挂机事件
  322. break;
  323. case "5":
  324. parent.document.getElementById("spanServerRes").innerHTML = "置闲成功";
  325. parent.setLinkStatus("True");
  326. parent.setAgentStatus("忙");
  327. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "false", "false");
  328. break;
  329. case "7":
  330. parent.document.getElementById("spanServerRes").innerHTML = "注销";
  331. parent.setLinkStatus("false");
  332. parent.setAgentStatus("未签入");
  333. parent.Form_setWinfromenble("false", "false", "false", "false", "false", "false", "false", "false", "false", "True");
  334. break;
  335. }
  336. }
  337. /*/// <summary>
  338. /// 来电弹屏事件
  339. /// </summary>
  340. /// <param name="sender"></param>
  341. /// <param name="callerNum"></param>
  342. /// <param name="callID"></param>
  343. /// <param name="dataParam"></param>*/
  344. function EvtCallComming(callerNum, callID, dataParam) {
  345. WriteFileLogs(1, "iframeocx.aspx", "EvtCallComming");
  346. try {
  347. var userid = parent.document.getElementById("txtAgentId").value;
  348. var usercode = parent.document.getElementById("lblAgentCode").innerHTML;
  349. var username = parent.document.getElementById("lblAgentName").innerHTML;
  350. var extnumber = parent.document.getElementById("lblAgentExt").innerHTML;
  351. //获取呼叫编号
  352. //var callid = parent.telajaxopt("../telmanage/ajax/telrecords.ashx?action=getCallIdByPhone&telphone=" + callerNum);
  353. parent.document.getElementById("CallHjbh").value = callID;
  354. username = encodeURI(username);
  355. parent.telajaxopt("../telmanage/ajax/telrecords.ashx?action=zhenlingEvent&callid=" + callID + "&userid=" + userid + "&usercode=" + usercode + "&username=" + username + "&extnumber" + extnumber); //更新摘机事件
  356. } catch (e) {alert(e.Message);
  357. }
  358. parent.Form_callCommingCaller(callerNum, callID);
  359. }
  360. /*/// <summary>
  361. /// 外呼振铃
  362. /// </summary>
  363. /// <param name="sender"></param>
  364. /// <param name="callerNum">来电号码</param>
  365. /// <param name="callID">呼叫编号</param>
  366. /// <param name="dataParam">任务Id</param>*/
  367. function EvtCallOutRing(callerNum, callID, dataParam) {
  368. WriteFileLogs(1, "iframeocx.aspx", "EvtCallOutRing");
  369. try {
  370. //alert("外呼振铃:" + callerNum + ":" + callID + ":" + dataParam);
  371. } catch (e) {
  372. }
  373. }
  374. /*/// <summary>
  375. /// 录音通知事件
  376. /// </summary>
  377. /// <param name="sender"></param>
  378. /// <param name="path">path</param>
  379. /// <param name="callID">呼叫编号</param>
  380. /// <param name="dataParam">任务Id</param>*/
  381. function EvtRecordInfo(path, callID, dataParam) {
  382. WriteFileLogs(1, "iframeocx.aspx", "EvtRecordInfo: path=" + path + ";callID:" + callID + ";dataParam=" + dataParam);
  383. try {
  384. //alert("外呼振铃:" + callerNum + ":" + callID + ":" + dataParam);
  385. parent.telajaxopt("../telmanage/ajax/telrecords.ashx?action=luyinEvent&callid=" + callID + "&path=" + path); //录音开始事件
  386. //Form_setWinfromenble("True", "false", "false", "false", "True", "True", "True", "false", "false", "false");
  387. } catch (e) {
  388. }
  389. }
  390. </script>
  391. <script type="text/javascript">
  392. /*-----------------------------------------------------------*/
  393. //var ismonitoring = false;//是否开启监控
  394. /*/// <summary>
  395. /// 订阅数据改变通知事件
  396. /// </summary>
  397. /// <param name="sender"></param>
  398. /// <param name="type"></param>
  399. /// <param name="data1"></param>
  400. /// <param name="data2"></param>
  401. /// <param name="substr"></param>*/
  402. function EvtSubscribeDataChanged(type, data1, data2, substr) {
  403. WriteFileLogs(1, "iframeocx.aspx", "EvtSubscribeDataChanged--type(" + type + ")--data1(" + data1 + ")--data2(" + data2 + ")--substr(" + substr + ")");
  404. if (parent.document.getElementById("ismonitoring").value=="false")
  405. return false;
  406. try {
  407. switch (type) {
  408. case "0":
  409. //坐席状态
  410. parent.window.frames["frame_zxjkgl"].GetState(data1, substr);
  411. //document.getElementById("frame_zxjkgl").GetState(data1, substr);
  412. break;
  413. case "1":
  414. //线路状态
  415. if (substr == "5") {
  416. parent.window.frames["frame_zxjkgl"].GetState(data1, "9");
  417. }
  418. break;
  419. case "2":
  420. //空闲坐席
  421. break;
  422. case "3":
  423. //忙
  424. break;
  425. case "4":
  426. //来电振铃
  427. if (substr != "") {
  428. var arr = substr.split('|');
  429. for (var i = 0; i < arr.length; i++) {
  430. parent.window.frames["frame_zxjkgl"].GetState(arr[i].split(',')[0], "9");
  431. }
  432. }
  433. break;
  434. case "5":
  435. //通话中
  436. break;
  437. default:
  438. break;
  439. }
  440. } catch (e) {
  441. WriteFileLogs(1, "iframeocx.aspx-javascript", "EvtSubscribeDataChanged:"+e.Message);
  442. }
  443. }
  444. /*/// <summary>
  445. /// <summary>
  446. /// 强制坐席状态结果通知事件
  447. /// </summary>
  448. /// <param name="sender"></param>
  449. /// <param name="blres"></param>
  450. /// <param name="callid"></param>
  451. /// <param name="strres"></param>*/
  452. function EvtForceAgentState(blres, callid, strres) {
  453. WriteFileLogs(1, "iframeocx.aspx", "EvtForceAgentState--blres(" + blres + ")--callid(" + callid + ")--strres(" + strres + ")");
  454. if (parent.document.getElementById("ismonitoring").value == "false")
  455. return false;
  456. if (blres == "True") {
  457. parent.document.getElementById("spanServerRes").innerHTML = "强制坐席状态成功";
  458. }
  459. else {
  460. parent.document.getElementById("spanServerRes").innerHTML = "强制坐席状态失败:" + strres;
  461. }
  462. }
  463. </script>
  464. </head>
  465. <body>
  466. <form id="form1" runat="server">
  467. </form>
  468. </body>
  469. </html>