關於推送uni-push

MvloveYouForever發表於2024-03-29
  • 推送目標依據為:push_clientid直接執行推送。
  • 推送目標依據為:device_id,查opendb-device表,獲得push_clientid執行推送
  • 推送目標依據為:users_iduni-id-device表(如果需要驗證platform就聯查opendb-device表),獲得push_clientid執行推送
  • 推送目標依據為:user_taguni-id-users表,獲得users_iduni-id-device表(如果需要驗證platform就聯查opendb-device表),獲得push_clientid執行推送

獲取客戶端推送表示:

// uni-app客戶端獲取push客戶端標記
uni.getPushClientId({
    success: (res) => {
        let push_clientid = res.cid
        console.log('客戶端推送標識:',push_clientid)
    },
    fail(err) {
        console.log(err)
    }
})

完整客戶端程式碼:

uniCloud.onRefreshToken(function(event) {
                uni.getPushClientId({
                    success: (res) => {
                        let push_clientid = res.cid
                        update_mes_clientId({
                            push_clientid
                        });
                    },
                    fail(err) {
                        console.log(err)
                    }
                })
            })

服務端推送訊息:

await uniPush.sendMessage({
        "user_id": "xxx",  // string 活陣列 ,與user_tag 任選其一
                 "user_tag":"" // 可以是數字可以是string   
        "title": "通知欄顯示的標題",    
        "content": "通知欄顯示的內容",
        "payload": {
            "text":"體驗一下uni-push2.0"
        }
    })