微信小程序雲函數處理客服消息


 

上傳配置 temp-cloud-callback-config.json 已經廢棄 后續會推出新的方式    --此路不通了 [20190620更]

需開發者工具版本:現在最新版本是RC v1.02.1905151

基礎庫:2.7.0

開通了雲開發的小程序可以使用雲函數接收消息推送,目前僅支持客服消息推送。

接入步驟如下:

1、開發者工具中填寫配置並上傳

2、雲函數中處理消息

第一步:開發者工具中填寫配置並上傳

在項目根目錄下新建消息推送配置文件 temp-cloud-callback-config.json 並在填寫完成后右鍵該文件選擇上傳配置。

配置文件格式如下(以客服消息推送配置為例):

{
  "enable": true,
  "callbacks": [
    {
      "msgType": 1,
      "functionName": "雲函數名",
      "env": "環境ID"
    }
  ]
}

 

字段說明:

  • enable: 只有為 true 時雲函數消息推送才會啟用,否則所有雲函數消息推送都不會生效
  •  callbacks: 接收推送的所有雲函數配置
  •  callbacks.msgType: 消息的 msgType,客服消息的 msgType 為 1
  • callbacks.functionName: 接收消息推送的雲函數名稱
  • callbacks.env: 雲函數所在環境

寫好后,右鍵該文件,選擇上傳配置。

 

第二步:雲函數中處理消息

雲函數被觸發時,其 event 參數即是接口所定義的 JSON 結構的對象(統一 JSON 格式,不支持 XML 格式)。

以客服消息為例,接收到客服消息推送時,event 結構如下:

{
  "FromUserName": "ohl4L0Rnhq7vmmbT_DaNQa4ePaz0",
  "ToUserName": "wx3d289323f5900f8e",
  "Content": "測試",
  "CreateTime": 1555684067,
  "MsgId": "49d72d67b16d115e7935ac386f2f0fa41535298877_1555684067",
  "MsgType": "text"
}

 

此時可調用客服消息發送接口回復消息,一個簡單的接收到消息后統一回復 “收到” 的示例如下:

// 雲函數入口文件 const cloud = require('wx-server-sdk')
cloud.init()

// 雲函數入口函數
exports.main = async (event, context) => {
  const wxContext = cloud.getWXContext()
  await cloud.openapi.customerServiceMessage.send({
    touser: wxContext.OPENID,
    msgtype: 'text',
    text: {
      content: '收到',
    },
  })
  return 'success'
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM