將訊息轉發到微信客服
如果公眾號處於開發模式,普通微信用戶向公眾號發送訊息時,微信伺服器會先將訊息POST到開發者填寫的url上,如果希望將訊息轉發到客服系統,則需要開發者在回應包中回傳MsgType為transfer_customer_service的訊息,微信伺服器收到回應後會把當次發送的訊息轉送至客服系統。 您也可以在傳回transfer_customer_service訊息時,在XML中附上TransInfo資訊指定指派給某個客服帳號。
使用者被客服存取以後,客服關閉會話以前,處於會話過程中時,使用者傳送的訊息都會直接轉送至客服系統。當會話超過30分鐘客服沒有關閉時,微信伺服器會自動停止轉送至客服,而將訊息恢復傳送至開發者填寫的url上。
用戶在等待佇列中時,用戶發送的訊息仍然會被推送到開發者填寫的url上。
這裡特別要注意,只針對微信用戶發送的訊息才進行轉發,而對於其他任何事件(例如選單點擊、地理位置上報等)都不應該轉接,否則客服在客服系統上就會看到一些無意義的消息了。
訊息轉送到客服
如果公眾號處於開發模式,一般微信使用者傳送訊息給公眾號時,微信伺服器會先將訊息POST到開發者填寫的url上,如果希望將訊息轉送到客服系統,則需要開發者在回應包中傳回MsgType為transfer_customer_service的訊息,微信伺服器收到回應後會把當次發送的訊息轉送至客服系統。
<xml> <ToUserName><![CDATA[touser]]></ToUserName> <FromUserName><![CDATA[fromuser]]></FromUserName> <CreateTime>1399197672</CreateTime> <MsgType><![CDATA[transfer_customer_service]]></MsgType> </xml>
參數說明
#參數 | 是否必須 | 描述 |
---|---|---|
ToUserName | #是 | 接收方帳號(收到的OpenID) |
FromUserName | 是 | 開發者微訊號 |
CreateTime | 是 | 訊息建立時間(整數) |
MsgType | 是 | transfer_customer_service |
訊息轉送到指定客服
#如果您有多位客服人員同時登入了客服並且開啟了自動接入在進行接待,每個客戶的訊息轉發給客服時,多客服系統會將客戶分配給其中一個客服人員。如果您希望將某個客戶的訊息轉給指定的客服來接待,可以在傳回transfer_customer_service訊息時附上TransInfo資訊指定一個客服帳號。需要注意,如果指定的客服沒有接入能力(不在線、沒有開啟自動接入或自動接入已滿),該用戶會被直接接入到指定客服,不再通知其它客服,不會被其他客服接待。建議在指定客服時,先查詢客服的接取能力(取得線上客服接待資訊介面),指定到有能力接取的客服,確保客戶能及時得到服務。
範例程式碼
<xml> <ToUserName><![CDATA[touser]]></ToUserName> <FromUserName><![CDATA[fromuser]]></FromUserName> <CreateTime>1399197672</CreateTime> <MsgType><![CDATA[transfer_customer_service]]></MsgType> <TransInfo> <KfAccount><![CDATA[test1@test]]></KfAccount> </TransInfo> </xml>
參數說明
參數 | 是否必須 | 描述 |
---|---|---|
ToUserName | #是 | 接收方帳號(收到的OpenID) |
FromUserName | 是 | 開發者微訊號 |
CreateTime | 是 | 訊息建立時間(整數) |
MsgType | 是 | transfer_customer_service |
KfAccount | #是 | 指定會話存取的客服帳號 |