微信小程序雲開發之羣發訂閱消息

在上篇文章中,我講到了訂閱消息的發送。但隨着業務的跟進,現在的需求是要羣發訂閱消息。

這?不難!

首先,你要搞懂一點,羣發訂閱消息就是將需要發送的用戶openID集合起來,然後一一使用推送模板發送消息。這個時候你可能會想到循環。但是用循環實在是太多坑。

解決這個問題,要麼在雲函數端寫邏輯,多次發送;要麼在小程序端寫邏輯多次調用雲函數。這兩種方法都是可以的。

我採用了第二種,在小程序端多次調用雲函數。

看主要代碼吧:

第一步,我先獲取數據庫用戶的openid,接着通過Promise.all來處理調用雲函數。res.data是獲取到的數據庫信息,是一個數組。想要獲取裏面的openID,直接通過item.openid即可。

db.collection('admin').get({
           success:res=>{
               Promise.all(res.data.map(item=>{
                 wx.cloud.callFunction({   //循環調用雲函數
                  name:"report",
                  data:{
                      nickName:userInfo.nickName,
                      _id:this.data._id,
                      reportText:this.data.items[this.data.num].name,
                      reportTime:HS,
                      openid:item.openid
                  },
                  success:res=>{
                    console.log(res)
                  }
                }) 
               }))      
              }
            })

訂閱消息的代碼在上篇文章:微信小程序雲開發之訂閱消息的推送

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章