【轉】微信小程序推送消息

原文:https://blog.csdn.net/qq_28581175/article/details/124720749

前言

微信小程序推送消息給指定用戶


一、推送消息:小程序“訂閱消息”功能

1.原“模板消息”已經被棄用,所以需要使用微信小程序官方提供的最新消息推送接口
2.爲什麼不能使用“客服消息”接口:客服消息,顧名思義,就是你以客服的身份給你的用戶解答問題唄,如果你的用戶長時間沒有說過話了,其實就相當於離線了,你的消息發過去也沒有什麼意義,所以微信會給出了45015這麼個錯誤。所以,解決這個問題的方向就是,換個推送消息接口。
3.【推薦】使用小程序“訂閱消息”功能,達到推送消息的目的,並以“服務通知”的形式接收消息
在這裏插入圖片描述

二、開發步驟

微信小程序官方參考地址:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/subscribe-message.html#訂閱消息語音提醒

1.小程序調用wx.requestSubscribeMessage,進行消息訂閱用戶授權

微信小程序官方參考地址:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/subscribe-message/wx.requestSubscribeMessage.html
訂閱消息模板配置:https://mp.weixin.qq.com/wxamp/newtmpl/mytmpl?start=0&limit=10&token=1241600784&lang=zh_CN

代碼如下(示例):

wx.requestSubscribeMessage({
   tmplIds: ['訂閱消息模板ID'],
    success (res) {
      console.log(res);
    }
  })
123456

2.小程序調用wx.login,獲取code

代碼如下(示例):

// 登錄
wx.login({
   success: res => {
     // 發送 res.code 到後端換取 openId, sessionKey, unionId
     // 後端訪問請求獲取用戶openId
     console.log(res.code);
   },
   fail: res => {
     // 登錄失敗
     console.log("登錄失敗!");
   }
 })
123456789101112

用戶openid:同一用戶,訪問不同的小程序,得到的openid都是不一樣的,即openid與小程序有關
用戶unionId:同一用戶,對同一個微信開放平臺下的不同應用(同一個微信開放平臺帳號下的移動應用、網站應用和公衆帳號(包括小程序)),UnionID是相同的。可通過 UnionID 來區分用戶的唯一性。官方參考地址:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/union-id.html
在進行用戶信息校驗時,【推薦】使用unionId作爲用戶唯一標識

3.後端訪問請求,獲取用戶openId

微信小程序官方參考地址:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/login/auth.code2Session.html

使用Postman模擬訪問請求(示例):
在這裏插入圖片描述

4.後端訪問請求,獲取小程序全局唯一後臺接口調用憑據access_token

微信小程序官方參考地址:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/access-token/auth.getAccessToken.html

使用Postman模擬訪問請求(示例):
在這裏插入圖片描述

5.後端訪問請求,推送訂閱消息

微信小程序官方參考地址:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/subscribe-message/subscribeMessage.send.html

使用Postman模擬訪問請求(示例):
在這裏插入圖片描述
訂閱消息模板:在這裏插入圖片描述

6.推送訂閱消息結束,用戶成功接收消息

在這裏插入圖片描述


總結

  1. 微信小程序推薦使用“訂閱消息”功能,推送消息

  2. 前期準備:

    微信小程序管理平臺

    • 開通小程序“訂閱消息”功能
    • 配置訂閱消息“模板”
      • 訂閱消息模板分爲“一次性訂閱”和“長期訂閱”兩種模板。
      • 一次性訂閱模板只能授權一次發送一次。
      • 長期訂閱模板可以授權一次,一直髮送,沒有次數限制。
      • 長期訂閱模板和小程序配置的類目有關,有的類目下沒有長期訂閱模板。目前長期性訂閱消息僅向政務民生、醫療、交通、金融、教育等線下公共服務開放。
      • 如果沒有找到符合需求的訂閱模板,可以自定義創建新的訂閱模板
  3. 開發步驟:

    • 用戶授權“訂閱消息”
    • 調用wx.login,獲取code
    • 獲取用戶openid
    • 獲取小程序全局唯一後臺接口調用憑據access_token
    • 推送訂閱消息
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章