hd

CallDetailInc.h 5.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190
  1. /*************************************************************************
  2. 【文件名】 CallDetailInc.h
  3. 【功能模块和目的】 呼叫明细信息定义头文件
  4. 【开发者及日期】 郑石诺 2015/01/10
  5. 【版本】 V1.0.0
  6. 【版权信息】 Copyright (C)2015 河南华谊网络科技有限公司
  7. 【更改记录】
  8. *************************************************************************/
  9. #pragma once
  10. // 常量定义
  11. #define REP_PHONE_NUM_LENGTH 64
  12. #define REP_FILE_NAME_LENGTH 512
  13. // 数据库空值定义
  14. #define REP_DB_NULL _T("(NULL)")
  15. // 统计事件枚举
  16. typedef enum tagREP_EVENT_OP
  17. {
  18. REP_EVENT_TRUNK_CALL_IN = 1, // 中继呼入
  19. REP_EVENT_EXT_CALL_OUT = 2, // 坐席外呼
  20. REP_EVENT_EXT_CALL_IN = 3, // 坐席呼入
  21. REP_EVENT_IVR_CALL_OUT = 4, // IVR自动外呼
  22. REP_EVENT_TRANSFER = 5, // 转移
  23. REP_EVENT_CONFERENCE = 6, // 会议
  24. REP_EVENT_INSTEAD = 7, // 代接
  25. REP_EVENT_HOLD = 8, // 保持
  26. REP_EVENT_TAKE_BACK = 9, // 接回
  27. REP_EVENT_FAX_BEGIN = 10, // 收/发传真开始
  28. REP_EVENT_TURN_IVR = 11, // 转IVR
  29. REP_EVENT_HANG_UP = 12, // 挂机
  30. REP_EVENT_LEAVE_MSG = 13, // 留言
  31. REP_EVENT_WANT_AGENT = 14, // 请求坐席
  32. REP_EVENT_TURN_AGENT = 15, // 转坐席
  33. REP_EVENT_REC_BEGIN = 16, // 录音开始
  34. REP_EVENT_FAX_END = 17, // 收/发传真结束
  35. REP_EVENT_EVALUATE = 18, // 坐席评价
  36. REP_EVENT_STATE_CHANGED = 19, // 线路状态变化事件
  37. REP_EVENT_END_CALL = 20, // 呼叫结束
  38. REP_EVENT_CONSUL_RESULT = 21, // 协商呼叫结果
  39. REP_EVENT_TRANSFER_RESULT = 22, // 转移结果
  40. REP_EVENT_CONF_RESULT = 23, // 三方结果
  41. REP_EVENT_ERROR = 24, // 呼入过程异常
  42. REP_EVENT_TRANSFER_TRUNK = 25, // 转移TRUNK
  43. } REP_EVENT;
  44. // 外线呼入错误类型枚举
  45. typedef enum tagREP_ERROR_TYPE
  46. {
  47. REP_ERROR_IVR = 0,
  48. REP_ERROR_ACD = 1,
  49. REP_ERROR_IVRFLOW = 2,
  50. REP_ERROR_SYSTEM = 3,
  51. }REP_ERROR_TYPE;
  52. // EVENT 信息结构体
  53. struct T_EvtTrunkCallIn // REP_EVENT_TRUNK_CALL_IN信息
  54. {
  55. CHAR szCallerNum[REP_PHONE_NUM_LENGTH]; // 主叫号码
  56. CHAR szCalleeNum[REP_PHONE_NUM_LENGTH]; // 被叫号码
  57. };
  58. struct T_EvtExtCallOut // REP_EVENT_EXT_CALL_OUT信息
  59. {
  60. UINT nCallType; // 呼出方式(1:ocx外呼,2:话机外呼)
  61. UINT nPeerLineType; // 对端线路类型(0:内线 1:外线)
  62. UINT nCallerAgentId; // 主叫坐席工号
  63. UINT nCalleeAgentId; // 被叫坐席工号
  64. CHAR szCalleeNum[REP_PHONE_NUM_LENGTH]; // 被叫号码
  65. CHAR szCalleeHeader[10]; //号码前缀
  66. CHAR szVisitstr[50]; //回访字符串
  67. };
  68. struct T_EvtExtCallIn // REP_EVENT_EXT_CALL_IN信息
  69. {
  70. UINT nCallType; // 呼入方式(1:转坐席呼入,2:转移呼入,3:会议呼入)
  71. UINT nPeerLineType; // 对端线路类型(0:内线 1:外线)
  72. UINT nCallerAgentId; // 主叫坐席工号
  73. CHAR szCallerNum[REP_PHONE_NUM_LENGTH]; // 主叫号码
  74. UINT nCalleeAgentId; // 被叫坐席工号
  75. };
  76. struct T_EvtIvrCallOut // REP_EVENT_IVR_CALL_OUT信息
  77. {
  78. UINT nIvrLineId; // IVR线路ID
  79. CHAR szCalleeNum[REP_PHONE_NUM_LENGTH]; // 被叫号码
  80. };
  81. struct T_EvtTransfer // REP_EVENT_TRANSFER信息
  82. {
  83. BOOL bEvtResult; // 转移结果
  84. UINT nPeerLineType; // 对端线路类型(0:内线 1:外线)
  85. CHAR szCallerNum[REP_PHONE_NUM_LENGTH]; // 主叫号码
  86. UINT nCallerAgentId; // 主叫坐席工号
  87. UINT nCalleeAgentId; // 被叫坐席工号
  88. CHAR szCalleeNum[REP_PHONE_NUM_LENGTH]; // 被叫号码
  89. UINT szTrunkId; // 转移外线时的中继线路ID
  90. };
  91. struct T_EvtConference // REP_EVENT_CONFERENCE信息
  92. {
  93. BOOL bEvtResult; // 三方结果
  94. UINT nPeerLineType; // 对端线路类型(0:内线 1:外线)
  95. UINT nCallerAgentId; // 主叫坐席工号
  96. UINT nCalleeAgentId; // 被叫坐席工号
  97. CHAR szCalleeNum[REP_PHONE_NUM_LENGTH]; // 被叫号码
  98. UINT szTrunkId; // 添加外线时的中继线路ID
  99. };
  100. struct T_EvtInstead // REP_EVENT_INSTEAD信息
  101. {
  102. UINT nCallerAgentId; // 主叫坐席工号
  103. CHAR szCallerNum[REP_PHONE_NUM_LENGTH]; // 主叫号码
  104. UINT nCalleeAgentId; // 被叫坐席工号
  105. };
  106. struct T_EvtHold // REP_EVENT_HOLD信息
  107. {
  108. };
  109. struct T_EvtTakeBack // REP_EVENT_TAKE_BACK信息
  110. {
  111. };
  112. struct T_EvtTurnIvr // REP_EVENT_TURN_IVR信息
  113. {
  114. };
  115. struct T_EvtHangUp // REP_EVENT_HANG_UP信息
  116. {
  117. UINT nHangUpFlag; // 0本端挂机 1对端挂机
  118. };
  119. struct T_EvtLeaveMsg // REP_EVENT_LEAVE_MSG信息
  120. {
  121. CHAR szFileName[REP_FILE_NAME_LENGTH]; // 留言文件路径
  122. };
  123. struct T_EvtWantAgent // REP_EVENT_WANT_AGENT信息
  124. {
  125. };
  126. struct T_EvtTurnAgent // REP_EVENT_TURN_AGENT信息
  127. {
  128. UINT nAgentId; // 被分配坐席工号
  129. };
  130. struct T_EvtRecBegin // REP_EVENT_REC_BEGIN信息
  131. {
  132. CHAR szFileName[REP_FILE_NAME_LENGTH]; // 录音文件路径
  133. };
  134. struct T_EvtFaxBegin // REP_EVENT_FAX_BEGIN信息
  135. {
  136. UINT nIsAuto; // 是否自动收发(0:否 1:是)
  137. UINT nRcvOrSend; // 收/发(0:发 1:收)
  138. UINT nCallerAgentId; // 主叫坐席工号
  139. CHAR szCallerNum[REP_PHONE_NUM_LENGTH]; // 主叫号码
  140. UINT nCalleeAgentId; // 被叫坐席工号
  141. CHAR szCalleeNum[REP_PHONE_NUM_LENGTH]; // 被叫号码
  142. CHAR szFileName[REP_FILE_NAME_LENGTH]; // 传真文件路径
  143. };
  144. struct T_EvtFaxEnd // REP_EVENT_FAX_END信息
  145. {
  146. UINT nIsSucceed; // 收发传真是否成功
  147. };
  148. struct T_EvtEvaluate // REP_EVENT_EVALUATE信息
  149. {
  150. CHAR szEvaluateContent[REP_FILE_NAME_LENGTH]; // 坐席评价内容
  151. };
  152. struct T_EvtStateChanged // REP_EVENT_STATE_CHANGED信息
  153. {
  154. UINT nLineState; // 线路状态
  155. CHAR szCallerNum[REP_PHONE_NUM_LENGTH]; // 主叫号码
  156. UINT nAgentId; // 坐席工号
  157. CHAR szFileName[REP_FILE_NAME_LENGTH]; // 录音文件路径
  158. };
  159. struct T_EvtError // REP_EVENT_ERROR信息
  160. {
  161. REP_ERROR_TYPE nErrorType; // 线路状态
  162. };