constant.py 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. #!/usr/bin/env python3
  2. # encoding:utf-8
  3. import json
  4. saasId = "mdj"
  5. UTF_8 = "UTF-8"
  6. SPACE = " "
  7. EMPTY = ""
  8. LF = "\n"
  9. CR = "\r"
  10. AT = "@"
  11. CO = ":"
  12. UNDER_LINE = "_"
  13. POINT = "."
  14. SK = "/"
  15. LINE = "-"
  16. JSON = ".json"
  17. XML = ".xml"
  18. HTTP = "http://"
  19. HTTPS = "https://"
  20. #vip等级进线
  21. VIP_LEVEL = "vipLevel"
  22. START_TIME = "startTime"
  23. QUEUE_TIME = "queueTime"
  24. #指定坐席
  25. DESIGNATE_AGENT = "desiganteAgent"
  26. #当前空闲时间
  27. LONG_READY = "longReady"
  28. #空闲次数
  29. READY_TIMES = "readyTimes"
  30. #服务次数
  31. SEREVICE_TIMES = "serviceTimes"
  32. HOLD_MUSIC_PATH = '/tmp/hold.wav'
  33. BASE_RECORD_PATH = '/freeswitch/record/'
  34. EMPTY = ""
  35. DEFAULT_KEY = ""
  36. #坐席状态相关
  37. AGENT_STATE_KEY = "STATE"
  38. AGENT_LOG_KEY = "LOG"
  39. DEVOCE_KEY = "DEVICE"
  40. DETAIL_KEY = "DETAIL"
  41. CALLLOG_KEY = "CALLLOG"
  42. AGENT_STATE_EXCHANGE = "AGENT-STATE-EXCHANGE"
  43. CALL_LOG_EXCHANGE = "CALL-LOG-EXCHANGE"
  44. #话单相关
  45. CALL_DEVICE_QUEUE = "CALL-DEVICE-QUEUE"
  46. CALL_LOG_QUEUE = "CALL-LOG-QUEUE"
  47. CALL_DETAIL_QUEUE = "CALL-DETAIL-QUEUE"
  48. AGENT_STATE_QUEUE = "AGENT-STATE-QUEUE"
  49. AGENT_LOG_QUEUE = "AGENT-LOG-QUEUE"
  50. #配置变更相关
  51. CC_CONFIG_EXCHANGE = "CC-CONFIG-EXCHANGE"
  52. CC_CONFIG_QUEUE = "CC-CONFIG-QUEUE"
  53. AGENT_TOKEN = "AGENT_TOKEN:"
  54. AGENT_INFO = "AGENT_INFO:"
  55. ADMIN_TOKEN = "ADMIN_TOKEN:"
  56. ADMIN_INFO = "ADMIN_INFO:"
  57. CALL_INFO = "CALL_INFO:"
  58. START_AGENT_NUM = "1000"
  59. DELAY_ACTION_BATCH_SIZE = 10
  60. CTI_ENGINE_DELAY_ACTION = "DELAY:ACTION:%s"
  61. CTI_ENGINE_DELAY_ACTION_LOCK = "DELAY:ACTION:LOCK:%s"
  62. def get_json_dict(json_string):
  63. data = json_string
  64. if isinstance(json_string, str):
  65. data = json.loads(json_string)
  66. return data
  67. def success_response(data=None, code=0, msg=""):
  68. response = json.dumps({"code": code, "msg": msg, "data": data})
  69. return response, 200, {"Content-Type": "application/json"}
  70. def error_response(msg, data=None, code=1, http_code=200):
  71. response = json.dumps({"code": code, "msg": msg, "data": data})
  72. return response, http_code, {"Content-Type": "application/json"}
  73. def format_time_millis(time_millis, pattern='%Y%m%d'):
  74. from datetime import datetime
  75. dt = datetime.utcfromtimestamp(time_millis)
  76. return dt.strftime(pattern)
  77. def get_record_prefix(call):
  78. return BASE_RECORD_PATH + call.call_type + '/' + call.saas_id + '/' + call.caller + '/' + format_time_millis(call.call_time)