admin管理员组

文章数量:1122852

呼叫中心

队列呼叫任务

cti_queue_dialer_task@template [哈希表]

  1. key任务名字
  2. value 任务配置JSON格式

    {"params": {"enable": true,"line_group": ["外呼使用的线路组"],"limit":100,"start_time": "2020-1-20 12:00","stop_time": "2020-1-22 12:00","work_hour": [{"wday":"-1","begin": "8:00","end": "12:00"}, {"wday":"0","begin": "14:00","end": "18:00"}],"work_week": [1,2,3,4,5],"holiday": [{"begin": "2020-1-20 12:00","end": "2020-1-21 12:00"}, {"begin": "2020-1-21 12:00","end": "2020-1-22 8:00"}],"number_queue": "号码队列","destination_extension":"8888","destination_dialplan":"XML","destination_context":"default"},"variables": {"origination_caller_id_number": "主叫号码","absolute_codec_string": "pcma,pcmu,g729"}
    }
    
    • params 任务参数
      • enable [布尔] 是否启用任务
      • line_group [数组] 外呼使用的线路组,如果配置多个线路组,第一个线路组呼叫失败,会使用第二个继续呼叫。
      • limit [数字] 任务并发,同时呼叫多少号码。
    • cps [数字] 呼叫速度,1秒最多呼叫多少号码,如果10秒呼叫1个,可以设置0.1。
      • start_time [字符串] 任务启动时间
      • stop_time [字符串] 任务停止时间
      • work_time [数组] 任务工作时间,可以配置多个时间范围
        • wday [字符串] 周几,用来支持根据周几来设置不同的工作时间,-1或者不设置是不管星期几都使用这个时间,0代表星期日,1是星期一,6是星期六,如果设置了只有星期几匹配了,才使用这个时间,work_week也是需要设置的。
        • begin [字符串] 开始时间
        • end [字符串] 结束时间
      • work_week [数组] 工作日,参数是星期,就是每个星期的那些天是工作日。比如 星期一到星期五是工作日,0代表星期日。
      • holiday [数组] 放假时间,参数是具体的放假时间范围。
      • number_queue 任务关联的号码队列。默认使用redis的list,如果使用前缀set:就是使用redis的set作为号码队列。如果需要防止重复号码以及动态删除指定号码以及乱序呼叫可以用set作为号码队列。
      • destination_extension 应答后转接目的分机
      • destination_dialplan 应答后转接目的拨号方案类型,比如XML
      • destination_context 应答后转接目的上下文,比如default,public
      • service_line_group 根据空闲座席数量来控制外呼并发
      • call_multiple 一个空闲座席呼叫多少个并发
      • queue_limit 排队中的呼叫大于座席总数乘以这个值就停止呼叫(排队中并发【已经接通进入排队的电话】大于 queue_limit【一般设置0.1到1之间】 乘以 座席总数【不是空闲座席是是座席组的总人数】,就停止呼叫。)防止排队中的电话超过座席数。
    • cps_multiple 一个空闲座席一秒最多呼叫多少个号码,建议设置1-3。
    • blacklist 配置一个redis的set,用于设置禁止呼叫的黑名单号码。
    • ttsconfig 导入的号码变量名如果是tts_前缀,会呼叫前就预先调用TTS,这里可以设置使用哪个话术的TTS配置,变量如果包含url保留字符需要先进行url编码。tts文本内容也不能包含”!”,导入时候需要去除!。
- variables 任务的通道变量 ,线路配置的通道变量优先级更高  - origination_caller_id_number [字符串类型] 主叫号码 - origination_caller_id_name [字符串类型]   主叫名字 - ignore_early_media=true [字符串类型]      忽略早期媒体- absolute_codec_string [字符串类型]        声音编码

cti_queue_dialer_task@domain[哈希表]

  1. key 任务名字
  2. value 任务配置JSON格式,和 cti_queue_dialer_task@template 含义一样,未配置的会使用 cti_queue_dialer_task@template 模板配置。

号码队列 [列表]

支持文本和JSON 2中格式。如果不需要给单独号码设置通道变量,可以直接用文本格式,直接插入号码文本到list。

 
{"params": {"number":"被叫号码"},"variables": {"origination_caller_id_number": "主叫号码","absolute_codec_string": "pcma,pcmu,g729","origination_uuid":"uuid"}
}
  • number 被叫号码
  • variables 通道变量,优先级 号码配置(本配置) < cti_queue_dialer_task@domain < cti_queue_dialer_task@template < cti_line@domain
  • origination_uuid 可以通过设置号码变量origination_uui来设置呼叫这个号码时候的call id。注意需要使用UUID,来保证唯一性。

定时呼叫

  1. key任务名字
  2. value 任务配置JSON格式
      {"params": {"line_group": ["外呼使用的线路组"],"destination_extension":"8888","destination_dialplan":"XML","destination_context":"default"},"variables": {"origination_caller_id_number": "主叫号码","absolute_codec_string": "pcma,pcmu,g729"}
    }
    

cti_schedule_dialer_number@domain [有序集合]

  1. score 计划呼叫的时间戳
  2. string 号码配置json,和号码队列的号码配置一样。

    {"params": {"number":"被叫号码","expires":0,"config":"cti_schedule_dialer_config@domain里面的任务名字"},"variables": {"origination_caller_id_number": "被叫号码","absolute_codec_string": "pcma,pcmu,g729"}
    }
    
    • expires 过期时间(unix时间戳,1970年1月1日(UTC/GMT的午夜)开始所经过的秒数),当前时间超过这个时间,就不会呼叫这个号码了,如果值为0,忽略这个参数。如果没可用线路时,重新写回redis,score设置为当前时间+60,如果expires为0,或者超过了expires,就不会写会redis了。

配置改变通知

config@all config@domain [通道]

cti_queue_dialer_task@template改变PUBLISH 通知到 config@all,cti_queue_dialer_task@domain改变PUBLISH 通知到 config@domain。

 
{"type":"config_change","table":"cti_queue_dialer_task","key":"test"
}
  • type,config_change:配置改变
  • table,那个表修改了,只需要@前面的。
  • key table的主键,比如任务表名字。

本文标签: 呼叫中心