1. FSGUI**動態座席組及最新的推送事件的接口**:
  2. 寧衛通信
  3. 新聞動態
  4. 寧衛新聞
  5. FSGUI**動態座席組及最新的推送事件的接口**

FSGUI**動態座席組及最新的推送事件的接口**

到2020-7實現的座席組邏輯如下:

a. 在系統中預定幾個組,如 110,12345,12320等

B. 接著由座席上線時,指定上線了哪幾個組

c. 我們在路由中配置了,如 85733555是進到12320這個組,則配操作符為 16,明細是 12320這個組號

d. 優先進行和組配套的黑名單,如果是處于黑名單就掛 機或放音

e. 接著查詢歷史溝通記錄,如果記憶中的座席空閑,那么就由該座席來處理,否則找空閑座席處理

f. 如果沒有歷史溝通,就直接找該組空閑座席

g. 如果沒空閑座席了,則判斷是vip還是普通用戶來電,有一定時器,不斷優先判斷vip的來電,接著判斷普通的來電,在查找到有空閑座席的情況下,轉給該空閑座席.

h. 不同的客戶,需求有所不同,在有關掛 機的要求,有的要求放音幾次后掛 ,有的是,客戶不掛 機,我們不主動掛 機,按實際來配.

  1. 獲取token

返回值: "token":"token code"

非正常返回值: "Not Authorized"

curl -d '{"username": "admin", "password": "admin"}' -H "Content-Type:application/json" http://ip:8085/api/login


  1. 上線

    讓座席分機為上線或下線,即up or down //up為上線 //down為下線

    里邊的組,可以為多個如: "12345,12320"

curl -H "Content-Type: application/json" -d '{"Extension":"1002","Value":"up" ,"Groups":"12345,110"}'  -H "Authorization:Nway token " http://ip:8085/api/extension_seatstate


  1. 分機忙閑

    讓座席分機置忙或置閑 ,這里和設置呼叫狀態,在不同的客戶需求時,需要進行分開,否則可能只用呼叫狀態一項處理不了

    //ready or rest //ready 意為設置為閑 //rest 意為設置為忙,小休,開會等

curl -H "Content-Type: application/json" -d '{"Extension":"1002","Value":"ready" }'  -H "Authorization:Nway token " http://ip:8085/api/extension_seatstatus
  1. 設置呼叫狀態

    //ring,talking,ivr,ready,typing,no_answer, no_ready //ready是等待電話-置閑 //talking是正在通話中 //typing 整理態,接完電話后在整理,默認5分鐘 //no_answer 久不應答,即響鈴后座席未接 //busy 置忙 //rest 小休

curl -H "Content-Type: application/json" -d '{"Extension":"1002","Value":"ring" }'  -H "Authorization:Nway token " http://ip:8085/api/extension_callstate
  1. 獲取排隊中的來電

    按以下的信息返回排隊中的電話信息

      Uuid             string    //呼入的channel的uuid  Number           string    //呼入的號碼  RealCallinNumber string    //實際呼入的號碼  Group            string    //進入的組  Level            string    //保留用于normal,vip  CallinTime       time.Time //呼入時間
curl  -H "Authorization:Nway token " http://ip:8085/api/queues
  1. 獲取所有的分機狀態

    按以下的信息返回所有的分機狀態信息

      Extension            string  RegStatus            string  AgentState           string  CallState            string  LastStatusChangeTime string
curl  -H "Authorization:Nway token " http://ip:8085/api/get_extensions
  1. 事件和消息的推送

    我們使用redis的pub/sub模式推送如來電,掛 機等事件,以及來電排隊等事件,以及cdr

    a. 來電,振鈴,接通,掛 機等事件

    需要psubscribe event_*

    就會將所有的event事件推過來

    模式如下:

    evt_name,callin_number, dest_number, domain, dtmf, gateway, originate_number, direction, auuid, buuid, origination_dest_number

    其中evt_name為以下項:

      EVENT_CALLIN EVENT_NAME = 1 + iota     //呼入  EVENT_CALLOUT     //呼出  EVENT_RING        //回鈴  EVNET_ALERT       //振鈴  EVENT_ANSWER      //應答  EVENT_HANGUP      //座席  EVENT_DTMF        //按鍵  EVENT_PLAYRING    //開始放音  EVENT_PLAYSTOP    //放音結束  EVENT_PARK        //park掉  EVENT_UNPARK      //解決park  EVENT_HOLD        //hold掉  EVENT_UNHOLD      //unhold  EVENT_BRIDGED     //已橋接  EVENT_DESTORY     //已完全釋放  EVENT_TALKING     //正在通話中  EVENT_DA          //回鈴檢測

Callin_number為呼入號碼,或稱為主叫號碼

dest_number 目標號碼

domain 域,先不用考慮

dtmf, 如果是按鍵,則這里有值

gateway, 如果是呼出,則這是呼出的gateway名稱

originate_number, 原主叫號碼

direction, 呼入還是呼出

auuid, 這條通道的uuid

buuid, 關聯通道的uuid

origination_dest_number 原始被叫號碼

b. 通話詳單信息

以前采用http推送模式,雖然也沒什么影 響,但后來還是采用redis或進一步放個大點的mq等的來完成推送消息的過程

psubscribe cdr_*

其中,主叫,被叫,如果是呼入到座席,那么中間經過了幾個沒有回應或轉接的信息都一起推送過來,如代碼:

arr := []string{strings.Trim(uuid, " "),    strings.Trim(a_caller_id_number, " "),    strings.Trim(a_destination_number, " "),    strings.Trim(a_start_stamp, " "),    strings.Trim(a_answer_stamp, " "),    strings.Trim(a_end_stamp, " "),    strings.Trim(a_duration, " "),    strings.Trim(a_billsec, " "),    strings.Trim(a_sip_hangup_disposition, " "),    strings.Trim(a_record_file, " "),    strings.Trim(str_no_answer_agents, " "),    strings.Trim(destination_number, " "),    strings.Trim(start_stamp, " "),    strings.Trim(answer_stamp, " "),    strings.Trim(end_stamp, " "),    strings.Trim(duration, " "),    strings.Trim(billsec, " ")}   if len(no_answer_agents) > 0 {    var tmpstr string    tmpstr = "{"    for _, v := range no_answer_agents {     tmpstr += v + ","    }    tmpstr = tmpstr[:len(tmpstr)-1]    tmpstr += "}"    arr = append(arr, tmpstr)   } else {    arr = append(arr, "")   }

c. 排隊信息

psubscripe queue_*

其大概信息如下:

method, uuid, number, group, level, callin_time

d. 在分機發生狀態變化時,由系統向外發狀態變更


psubscripe agent_*

其大概信息如下:

number, status, time
ag真人视讯腾讯微博 快速赛车计划冠军一码 北方推倒胡怎么玩图解 福彩体育彩票官网个人中心 福彩3d近500期走势图 山东11选5任选1中1计划 五分彩都是骗局吗 球探即时比分网 泰达币最高涨到多少钱 微信麻将外挂神器 北京单场那里玩 重庆时时彩网站下载 辽宁快乐12哪个软件准 大亨山东11选5算号器 w彩票平台怎么样 内蒙古11选5宣传 09年股票交易开始时间