洛阳公积金升级后需使用的坐席客户端,从4.1版本衍生而来,因使用的web框架不一样需单独版本应对

BaseAgentOCXCtrl.cs 25KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Drawing;
  5. using System.Data;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. namespace HySoft.Lecall.BaseAgentOcx
  9. {
  10. public partial class BaseAgentOCXCtrl : UserControl
  11. {
  12. /*
  13. * 版权所有:Copyright (C) 2015,河南华谊科技
  14. * Version: 1.0
  15. * 创建日期: 2015-05-08
  16. * 作者: 张国杰
  17. * 说明: CTIServer 中间件接口
  18. * 修改日期:
  19. * 修改者:
  20. * 修改说明:
  21. */
  22. public BaseAgentOCXCtrl()
  23. {
  24. InitializeComponent();
  25. }
  26. #region 参数
  27. /// <summary>
  28. /// CTI服务IP地址
  29. /// </summary>
  30. private string _serverIP;
  31. /// <summary>
  32. /// CTI服务连接端口
  33. /// </summary>
  34. private int _serverPort;
  35. /// <summary>
  36. /// 坐席工号
  37. /// </summary>
  38. private string _agentID;
  39. /// <summary>
  40. /// 分机电话
  41. /// </summary>
  42. private string _extPhone;
  43. /// <summary>
  44. /// 技能组ID
  45. /// </summary>
  46. private string _groupID;
  47. /// <summary>
  48. /// 坐席权限
  49. /// </summary>
  50. private string _agentRights;
  51. /// <summary>
  52. /// CTI服务状态
  53. /// </summary>
  54. private string _serverState;
  55. /// <summary>
  56. /// 坐席状态
  57. /// </summary>
  58. private string _agentState;
  59. #endregion
  60. #region 属性
  61. /// <summary>
  62. /// CTI服务IP地址
  63. /// </summary>
  64. public string ServerIP
  65. {
  66. set
  67. {
  68. _serverIP = value;
  69. }
  70. get
  71. {
  72. return _serverIP;
  73. }
  74. }
  75. /// <summary>
  76. /// CTI服务连接端口
  77. /// </summary>
  78. public int ServerPort
  79. {
  80. set
  81. {
  82. _serverPort = value;
  83. }
  84. get
  85. {
  86. return _serverPort;
  87. }
  88. }
  89. /// <summary>
  90. /// 坐席工号
  91. /// </summary>
  92. public string AgentID
  93. {
  94. set
  95. {
  96. _agentID = value;
  97. }
  98. get
  99. {
  100. return _agentID;
  101. }
  102. }
  103. /// <summary>
  104. /// 分机电话
  105. /// </summary>
  106. public string ExtPhone
  107. {
  108. set
  109. {
  110. _extPhone = value;
  111. }
  112. get
  113. {
  114. return _extPhone;
  115. }
  116. }
  117. /// <summary>
  118. /// 技能组ID
  119. /// </summary>
  120. public string GroupID
  121. {
  122. set
  123. {
  124. _groupID = value;
  125. }
  126. get
  127. {
  128. return _groupID;
  129. }
  130. }
  131. /// <summary>
  132. /// 坐席权限
  133. /// </summary>
  134. public string AgentRights
  135. {
  136. set
  137. {
  138. _agentRights = value;
  139. }
  140. get
  141. {
  142. return _agentRights;
  143. }
  144. }
  145. /// <summary>
  146. /// CTI服务状态
  147. /// </summary>
  148. public string ServerState
  149. {
  150. set
  151. {
  152. _serverState = value;
  153. }
  154. get
  155. {
  156. return _serverState;
  157. }
  158. }
  159. /// <summary>
  160. /// 坐席状态
  161. /// </summary>
  162. public string AgentState
  163. {
  164. set
  165. {
  166. _agentState = value;
  167. }
  168. get
  169. {
  170. return _agentState;
  171. }
  172. }
  173. #endregion
  174. #region 方法
  175. #region 公开方法
  176. /// <summary>
  177. /// 坐席登录
  178. /// </summary>
  179. /// <returns>true 登录成功 ; false 登录失败</returns>
  180. public virtual bool AgentLogin()
  181. {
  182. return true;
  183. }
  184. /// <summary>
  185. /// 坐席退出
  186. /// </summary>
  187. /// <returns>true 退出成功 ; false 退出失败</returns>
  188. public virtual bool AgentLogOut()
  189. {
  190. return true;
  191. }
  192. /// <summary>
  193. /// 坐席外呼
  194. /// </summary>
  195. /// <param name="calltype">呼叫类型</param>
  196. /// <param name="callerNum">主叫号码</param>
  197. /// <param name="calledNum">被叫号码</param>
  198. /// <returns>true 外呼成功 ; false 外呼失败</returns>
  199. public virtual bool CallOut(string calltype, string callerNum, string calledNum)
  200. {
  201. return true;
  202. }
  203. /// <summary>
  204. /// 重置
  205. /// </summary>
  206. /// <returns>true 重置成功 ; false 重置失败</returns>
  207. public virtual bool ResetAgent()
  208. {
  209. return true;
  210. }
  211. /// <summary>
  212. /// 置忙
  213. /// </summary>
  214. /// <returns>true 置忙成功 ; false 置忙失败</returns>
  215. public virtual bool SetBusy()
  216. {
  217. return true;
  218. }
  219. /// <summary>
  220. /// 置闲
  221. /// </summary>
  222. /// <returns>true 置闲成功 ; false 置闲失败</returns>
  223. public virtual bool SetFree()
  224. {
  225. return true;
  226. }
  227. /// <summary>
  228. /// 保持
  229. /// </summary>
  230. /// <returns>true 保持成功 ; false 保持失败</returns>
  231. public virtual bool Hold()
  232. {
  233. return true;
  234. }
  235. /// <summary>
  236. /// 接回
  237. /// </summary>
  238. /// <returns>true 接回成功 ; false 接回失败</returns>
  239. public virtual bool UnHold()
  240. {
  241. return true;
  242. }
  243. /// <summary>
  244. /// 挂机
  245. /// </summary>
  246. /// <returns>true 挂机成功 ; false 挂机失败</returns>
  247. public virtual bool Hangup()
  248. {
  249. return true;
  250. }
  251. /// <summary>
  252. /// 转移到电话
  253. /// </summary>
  254. /// <param name="phone">转移号码</param>
  255. /// <param name="callnumber">透传的主叫号码</param>
  256. /// <returns>转移结果</returns>
  257. public virtual bool TransferToPhone(string phone,string callnumber)
  258. {
  259. return true;
  260. }
  261. /// <summary>
  262. /// 咨询
  263. /// </summary>
  264. /// <param name="phone">咨询号码</param>
  265. /// <param name="callnumber">透传的主叫号码</param>
  266. /// <returns>咨询结果</returns>
  267. public virtual bool Consult(string phone,string callnumber)
  268. {
  269. return true;
  270. }
  271. /// <summary>
  272. /// 三方通话
  273. /// </summary>
  274. /// <param name="phone">会议号码</param>
  275. /// <param name="callnumber">透传的主叫号码</param>
  276. /// <returns>结果</returns>
  277. public virtual bool ThirdParty(string phone,string callnumber)
  278. {
  279. return true;
  280. }
  281. /// <summary>
  282. /// 转回IVR
  283. /// </summary>
  284. /// <param name="ivrID">IVR编号</param>
  285. /// <param name="dataParam">数据参数</param>
  286. /// <returns>结果</returns>
  287. public virtual bool TransferToIVR(string ivrID, string dataParam)
  288. {
  289. return true;
  290. }
  291. /// <summary>
  292. /// 获取CallId
  293. /// </summary>
  294. /// <param name="dataParam">数据参数</param>
  295. /// <returns>结果</returns>
  296. public virtual string GetCallID(string dataParam)
  297. {
  298. return "";
  299. }
  300. /// <summary>
  301. /// 获取来电振铃时的被叫号码
  302. /// </summary>
  303. /// <returns>1、外线呼座席时,返回外线所拨打的号码。2、座席呼座席时,返回与座席的分机号码。</returns>
  304. public virtual string GetCalleeNumber()
  305. {
  306. return "";
  307. }
  308. #endregion
  309. #region 监控相关
  310. /// <summary>
  311. /// 订阅数据
  312. /// </summary>
  313. /// <param name="type">订阅类型</param>
  314. /// 0坐席状态 1线路状态 2 空闲坐席列表 3.忙坐席列表 4.来电振铃坐席列表 5 通话坐席列表
  315. /// 6 外线排队数目 7 指定座席组中座席的状态 8 指定坐席组外线排队的数量 9 指定呼叫任务所占用的外线数量
  316. /// <param name="dataParam">数据参数</param>
  317. /// <returns>结果</returns>
  318. public virtual bool SubscribeData(string type, string dataParam)
  319. {
  320. return true;
  321. }
  322. /// <summary>
  323. /// 取消订阅数据
  324. /// </summary>
  325. /// <param name="type">订阅类型</param>
  326. /// 0坐席状态 1线路状态 2 空闲坐席列表 3.忙坐席列表 4.来电振铃坐席列表 5 通话坐席列表
  327. /// 6 外线排队数目 7 指定座席组中座席的状态 8 指定坐席组外线排队的数量 9 指定呼叫任务所占用的外线数量
  328. /// <param name="dataParam">数据参数</param>
  329. /// <returns>结果</returns>
  330. public virtual bool CancelSubscribeData(string type, string dataParam)
  331. {
  332. return true;
  333. }
  334. /// <summary>
  335. /// 监听
  336. /// </summary>
  337. /// 目标坐席处于通话状态
  338. /// <param name="agentcode">坐席工号</param>
  339. /// <returns>结果</returns>
  340. public virtual bool Listen(string agentcode)
  341. {
  342. return true;
  343. }
  344. /// <summary>
  345. /// 代接
  346. /// </summary>
  347. /// 目标坐席处于空闲状态
  348. /// <param name="agentcode">坐席工号</param>
  349. /// <returns>结果</returns>
  350. public virtual bool Instead(string agentcode)
  351. {
  352. return true;
  353. }
  354. /// <summary>
  355. /// 强插
  356. /// </summary>
  357. /// 目标坐席处于通话中状态
  358. /// <param name="agentcode">坐席工号</param>
  359. /// <returns>结果</returns>
  360. public virtual bool Insert(string agentcode)
  361. {
  362. return true;
  363. }
  364. /// <summary>
  365. /// 拦截
  366. /// </summary>
  367. /// 目标坐席处于通话中状态
  368. /// <param name="agentcode">坐席工号</param>
  369. /// <returns>结果</returns>
  370. public virtual bool Intercept(string agentcode)
  371. {
  372. return true;
  373. }
  374. /// <summary>
  375. /// 强拆
  376. /// </summary>
  377. /// 目标坐席处于通话中状态
  378. /// <param name="agentcode">坐席工号</param>
  379. /// <returns>结果</returns>
  380. public virtual bool Break(string agentcode)
  381. {
  382. return true;
  383. }
  384. /// <summary>
  385. /// 强制指定坐席状态
  386. /// </summary>
  387. ///
  388. /// <param name="agentcode">坐席工号</param>
  389. /// <param name="state">坐席状态</param>
  390. /// <returns>结果</returns>
  391. public virtual bool ForceAgentState(string agentcode, string state)
  392. {
  393. return true;
  394. }
  395. /// <summary>
  396. /// 强制指定坐席签出
  397. /// </summary>
  398. ///
  399. /// <param name="agentcode">坐席工号</param>
  400. /// <param name="reson">签出原因</param>
  401. /// <returns>结果</returns>
  402. public virtual bool ForceAgentOut(string agentcode, string reson)
  403. {
  404. return true;
  405. }
  406. #endregion
  407. #endregion
  408. #region 委托
  409. #region 监控相关
  410. /// <summary>
  411. /// 订阅数据改变通知事件
  412. /// </summary>
  413. /// <param name="sender"></param>
  414. /// <param name="type">0 坐席状态改变 1 线路状态改变 2 空闲坐席列表 3 忙坐席列表 4 来电振铃坐席列表 5 通话坐席列表 6 外线排队电话数量 7 指定座席组中座席的状态 8 指定坐席组外线排队的数量 9 指定呼叫任务所占用的外线数</param>
  415. /// <param name="data1"></param>
  416. /// <param name="data2"></param>
  417. /// <param name="substr"></param>
  418. public delegate void Delegate_SubscribeDataChanged(object sender, string type, string data1, string data2, string substr);
  419. /// <summary>
  420. /// 监听结果通知事件
  421. /// </summary>
  422. /// <param name="sender"></param>
  423. /// <param name="blres"></param>
  424. /// <param name="strres"></param>
  425. public delegate void Delegate_Listen(object sender, bool blres, string callid,string strres);
  426. /// <summary>
  427. /// 代接结果通知事件
  428. /// </summary>
  429. /// <param name="sender"></param>
  430. /// <param name="blres"></param>
  431. /// <param name="strres"></param>
  432. public delegate void Delegate_Instead(object sender, bool blres, string callid, string strres);
  433. /// <summary>
  434. /// 强插结果通知事件
  435. /// </summary>
  436. /// <param name="sender"></param>
  437. /// <param name="blres"></param>
  438. /// <param name="strres"></param>
  439. public delegate void Delegate_Insert(object sender, bool blres, string callid, string strres);
  440. /// <summary>
  441. /// 拦截结果通知事件
  442. /// </summary>
  443. /// <param name="sender"></param>
  444. /// <param name="blres"></param>
  445. /// <param name="strres"></param>
  446. public delegate void Delegate_Intercept(object sender, bool blres, string callid, string strres);
  447. /// <summary>
  448. /// 强拆结果通知事件
  449. /// </summary>
  450. /// <param name="sender"></param>
  451. /// <param name="blres"></param>
  452. /// <param name="strres"></param>
  453. public delegate void Delegate_Break(object sender, bool blres, string callid, string strres);
  454. /// <summary>
  455. /// 强制坐席状态结果通知事件
  456. /// </summary>
  457. /// <param name="sender"></param>
  458. /// <param name="blres"></param>
  459. /// <param name="strres"></param>
  460. public delegate void Delegate_ForceAgentState(object sender, bool blres, string callid, string strres);
  461. /// <summary>
  462. /// 强制坐席签出结果通知事件
  463. /// </summary>
  464. /// <param name="sender"></param>
  465. /// <param name="blres"></param>
  466. /// <param name="strres"></param>
  467. public delegate void Delegate_ForceAgentOut(object sender, bool blres, string strres);
  468. #endregion
  469. /// <summary>
  470. /// 日志通知事件
  471. /// </summary>
  472. /// <param name="sender"></param>
  473. /// <param name="type">日志类型</param>
  474. /// <param name="name">方法及事件名称</param>
  475. /// <param name="infor">日志描述</param>
  476. public delegate void Delegate_LogsNote(object sender, string type, string name, string infor);
  477. /// <summary>
  478. /// 坐席状态变化通知事件
  479. /// </summary>
  480. /// <param name="sender"></param>
  481. /// <param name="agentState">坐席状态</param>
  482. public delegate void Delegate_AgentStateChangeNote(object sender, string agentState);
  483. /// <summary>
  484. /// 服务状态变化通知事件
  485. /// </summary>
  486. /// <param name="sender"></param>
  487. /// <param name="serverState">服务状态</param>
  488. public delegate void Delegate_ServerStateChangeNote(object sender, string serverState);
  489. /// <summary>
  490. /// 当前等待坐席数量
  491. /// </summary>
  492. /// <param name="sender"></param>
  493. /// <param name="count"></param>
  494. public delegate void Delegate_WaitCountNote(object sender, string count);
  495. /// <summary>
  496. /// 来电通知
  497. /// </summary>
  498. /// <param name="sender"></param>
  499. /// <param name="callerNum">来电号码</param>
  500. /// <param name="callID">来电编号</param>
  501. /// <param name="calltype">来电类型</param>
  502. /// <param name="dataParam">随路数据</param>
  503. public delegate void Delegate_CallCommingNote(object sender, string callerNum, string callID,string calltype, string dataParam);
  504. /// <summary>
  505. /// 外呼振铃事件
  506. /// </summary>
  507. /// <param name="sender"></param>
  508. /// <param name="callerNum">来电号码</param>
  509. /// <param name="callID">来电编号</param>
  510. /// <param name="dataParam">随路数据</param>
  511. public delegate void Delegate_CallOutRingNote(object sender, string callerNum, string callID, string dataParam);
  512. /// <summary>
  513. /// 录音通知事件
  514. /// </summary>
  515. /// <param name="sender"></param>
  516. /// <param name="callerNum">来电号码</param>
  517. /// <param name="callID">来电编号</param>
  518. /// <param name="dataParam">随路数据</param>
  519. public delegate void Delegate_RecordInfoNote(object sender, string path, string callID, string dataParam);
  520. /// <summary>
  521. /// 坐席签入结果通知事件
  522. /// </summary>
  523. /// <param name="sender"></param>
  524. /// <param name="blres"></param>
  525. /// <param name="strres"></param>
  526. public delegate void Delegate_AgentLogin(object sender, bool blres, string strres);
  527. /// <summary>
  528. /// 坐席签出结果通知事件
  529. /// </summary>
  530. /// <param name="sender"></param>
  531. /// <param name="blres"></param>
  532. /// <param name="strres"></param>
  533. public delegate void Delegate_AgentLogout(object sender, bool blres, string strres);
  534. /// <summary>
  535. /// 坐席外呼结果通知事件
  536. /// </summary>
  537. /// <param name="sender"></param>
  538. /// <param name="blres"></param>
  539. /// <param name="strres"></param>
  540. public delegate void Delegate_CallOut(object sender, bool blres, string strres);
  541. /// <summary>
  542. /// 坐席置忙结果通知事件
  543. /// </summary>
  544. /// <param name="sender"></param>
  545. /// <param name="blres"></param>
  546. /// <param name="strres"></param>
  547. public delegate void Delegate_SetBusy(object sender, bool blres, string strres);
  548. /// <summary>
  549. /// 坐席置闲结果通知事件
  550. /// </summary>
  551. /// <param name="sender"></param>
  552. /// <param name="blres"></param>
  553. /// <param name="strres"></param>
  554. public delegate void Delegate_SetFree(object sender, bool blres, string strres);
  555. /// <summary>
  556. /// 坐席保持结果通知事件
  557. /// </summary>
  558. /// <param name="sender"></param>
  559. /// <param name="blres"></param>
  560. /// <param name="strres"></param>
  561. public delegate void Delegate_Hold(object sender, bool blres, string strres);
  562. /// <summary>
  563. /// 坐席接回保持结果通知事件
  564. /// </summary>
  565. /// <param name="sender"></param>
  566. /// <param name="blres"></param>
  567. /// <param name="strres"></param>
  568. public delegate void Delegate_UnHold(object sender, bool blres, string strres);
  569. /// <summary>
  570. /// 坐席挂机结果通知事件
  571. /// </summary>
  572. /// <param name="sender"></param>
  573. /// <param name="blres"></param>
  574. /// <param name="strres"></param>
  575. public delegate void Delegate_Hangup(object sender, bool blres, string strres);
  576. /// <summary>
  577. /// 坐席转移结果通知事件
  578. /// </summary>
  579. /// <param name="sender"></param>
  580. /// <param name="blres"></param>
  581. /// <param name="strres"></param>
  582. public delegate void Delegate_TransferToPhone(object sender, bool blres, string strres);
  583. /// <summary>
  584. /// 坐席咨询结果通知事件
  585. /// </summary>
  586. /// <param name="sender"></param>
  587. /// <param name="blres"></param>
  588. /// <param name="strres"></param>
  589. public delegate void Delegate_Consult(object sender, bool blres, string strres);
  590. /// <summary>
  591. /// 坐席三方通话结果通知事件
  592. /// </summary>
  593. /// <param name="sender"></param>
  594. /// <param name="blres"></param>
  595. /// <param name="strres"></param>
  596. public delegate void Delegate_ThirdParty(object sender, bool blres, string strres);
  597. /// <summary>
  598. /// 坐席转回IVR结果通知事件
  599. /// </summary>
  600. /// <param name="sender"></param>
  601. /// <param name="blres"></param>
  602. /// <param name="strres"></param>
  603. public delegate void Delegate_TransferToIVR(object sender, bool blres, string strres);
  604. /// <summary>
  605. /// 中继利用数量
  606. /// </summary>
  607. /// <param name="sender"></param>
  608. /// <param name="count"></param>
  609. public delegate void Delegate_TrunkUseCountNote(object sender, string count);
  610. #endregion
  611. #region 事件
  612. /// <summary>
  613. /// 坐席签入结果通知事件
  614. /// </summary>
  615. public virtual event Delegate_AgentLogin EvtAgentLogin;
  616. /// <summary>
  617. /// 坐席签出结果通知事件
  618. /// </summary>
  619. public virtual event Delegate_AgentLogout EvtAgentLogout;
  620. /// <summary>
  621. /// 坐席外呼结果通知事件
  622. /// </summary>
  623. public virtual event Delegate_CallOut EvtCallOut;
  624. /// <summary>
  625. /// 坐席置忙结果通知事件
  626. /// </summary>
  627. public virtual event Delegate_SetBusy EvtSetBusy;
  628. /// <summary>
  629. /// 坐席置闲结果通知事件
  630. /// </summary>
  631. public virtual event Delegate_SetFree EvtSetFree;
  632. /// <summary>
  633. /// 坐席保持结果通知事件
  634. /// </summary>
  635. public virtual event Delegate_Hold EvtHold;
  636. /// <summary>
  637. /// 坐席接回保持结果通知事件
  638. /// </summary>
  639. public virtual event Delegate_UnHold EvtUnHold;
  640. /// <summary>
  641. /// 坐席挂机结果通知事件
  642. /// </summary>
  643. public virtual event Delegate_Hangup EvtHangup;
  644. /// <summary>
  645. /// 坐席转移结果通知事件
  646. /// </summary>
  647. public virtual event Delegate_TransferToPhone EvtTransferToPhone;
  648. /// <summary>
  649. /// 坐席咨询结果通知事件
  650. /// </summary>
  651. public virtual event Delegate_Consult EvtConsult;
  652. /// <summary>
  653. /// 坐席三方通话结果通知事件
  654. /// </summary>
  655. public virtual event Delegate_ThirdParty EvtThirdParty;
  656. /// <summary>
  657. /// 坐席转IVR结果通知事件
  658. /// </summary>
  659. public virtual event Delegate_TransferToIVR EvtTransferToIVR;
  660. /// <summary>
  661. /// 日志通知事件
  662. /// </summary>
  663. public virtual event Delegate_LogsNote EvtLogs;
  664. /// <summary>
  665. /// 坐席状态变化通知事件
  666. /// </summary>
  667. public virtual event Delegate_AgentStateChangeNote EvtAgentStateChange;
  668. /// <summary>
  669. /// 服务状态变化通知事件
  670. /// </summary>
  671. public virtual event Delegate_ServerStateChangeNote EvtServerStateChange;
  672. /// <summary>
  673. /// 获得当前坐席忙 线路中等待用户的数量
  674. /// </summary>
  675. public virtual event Delegate_WaitCountNote EvtWaitCount;
  676. /// <summary>
  677. /// 来电通知事件
  678. /// </summary>
  679. public virtual event Delegate_CallCommingNote EvtCallComming;
  680. /// <summary>
  681. /// 外呼振铃事件
  682. /// </summary>
  683. public virtual event Delegate_CallOutRingNote EvtCallOutRing;
  684. /// <summary>
  685. /// 录音通知事件
  686. /// </summary>
  687. public virtual event Delegate_RecordInfoNote EvtRecordInfo;
  688. /// <summary>
  689. /// 订阅数据改变通知事件
  690. /// </summary>
  691. public virtual event Delegate_SubscribeDataChanged EvtSubscribeDataChanged;
  692. /// <summary>
  693. /// 监听结果通知事件
  694. /// </summary>
  695. public virtual event Delegate_Listen EvtListen;
  696. /// <summary>
  697. /// 代接结果通知事件
  698. /// </summary>
  699. public virtual event Delegate_Instead EvtInstead;
  700. /// <summary>
  701. /// 强插结果通知事件
  702. /// </summary>
  703. public virtual event Delegate_Insert EvtInsert;
  704. /// <summary>
  705. /// 拦截结果通知事件
  706. /// </summary>
  707. public virtual event Delegate_Intercept EvtIntercept;
  708. /// <summary>
  709. /// 强拆结果通知事件
  710. /// </summary>
  711. public virtual event Delegate_Break EvtBreak;
  712. /// <summary>
  713. /// 强制坐席状态结果通知事件
  714. /// </summary>
  715. public virtual event Delegate_ForceAgentState EvtForceAgentState;
  716. /// <summary>
  717. /// 强制坐席签出结果通知事件
  718. /// </summary>
  719. public virtual event Delegate_ForceAgentOut EvtForceAgentOut;
  720. /// <summary>
  721. /// 中继利用数量
  722. /// </summary>
  723. public virtual event Delegate_TrunkUseCountNote EvtTrunkUseCount;
  724. #endregion
  725. }
  726. }