小程序消息推送怎麼實現

一、小程序消息推送怎麼關閉

小程序消息推送是小程序的一個重要功能,但在某些情況下,用戶可能需要關閉消息推送。小程序提供了簡單的設置,用戶可以在小程序內部關閉消息推送。

在小程序入口頁面,點擊右上角的設置按鈕,然後選擇“消息通知”,即可進入消息推送設置頁面。在該頁面上,用戶可以對小程序的消息推送進行關閉或開啟。

二、小程序實現公眾號消息推送

小程序與公眾號有很多相似的功能,其中就包括消息推送。小程序可以實現向公眾號用戶推送消息的功能。

實現公眾號消息推送的前提是,要進行小程序與公眾號的綁定。在小程序的開發者工具中,選擇“設置”->“第三方設置”,輸入公眾號的appId和appSecret,即可完成綁定。

在小程序中,我們可以通過以下方式實現公眾號消息推送:

wx.request({
  url: 'https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=' + access_token,
  method: 'POST',
  data: {
    touser: 'OPENID',
    template_id: 'TEMPLATE_ID',
    page: 'index',
    form_id: 'FORMID',
    data: {
      keyword1: {
        value: '恭喜你購買成功!',
        color: '#173177'
      },
      keyword2: {
        value: '巧克力',
        color: '#173177'
      },
      keyword3: {
        value: '39.8元',
        color: '#173177'
      },
      keyword4: {
        value: '2014年9月22日',
        color: '#173177'
      }
    },
    emphasis_keyword: 'keyword1.DATA'
  },
  success: function (res) {
    console.log("success");
  },
  fail: function (err) {
    console.log("fail");
  }
})

三、小程序消息推送規則

1. 消息類型

小程序可以向用戶推送兩種類型的消息:模板消息和客服消息。模板消息可以在用戶不在線時推送,客服消息需要用戶在線才能推送。

2. 推送限制

小程序消息推送需要滿足一定的限制條件,包括:

  • 一個用戶每天最多收到4條模板消息和24條客服消息。
  • 一個模板消息和客服消息都需要在7天內被推送,否則會過期而無法被推送。
  • 不同類型的消息會影響用戶的接受率。對於一些被認為比較騷擾的消息(例如推銷信息),用戶自然的策略是主動忽略或者屏蔽消息。

3. 模板消息

模板消息可以使用預設的模板、關鍵字和內容進行快速製作。小程序右側菜單中有一個“模板消息”選項,可用於管理模板消息。

以下是一個模板消息製作實例:

{
  "touser": "OPENID",
  "template_id": "TEMPLATE_ID",
  "page": "index",
  "form_id": "FORMID",
  "data": {
    "keyword1": {
      "value": "小程序模板消息",
      "color": "#173177"
    },
    "keyword2": {
      "value": "2019年9月5日 14:00",
      "color": "#173177"
    },
    "keyword3": {
      "value": "官方文檔",
      "color": "#173177"
    }
  },
  "emphasis_keyword": "keyword1.DATA"
}

四、小程序通知欄消息推送

如果用戶設置允許,小程序可以向用戶推送通知欄消息,以便用戶隨時了解小程序的最新內容。

以下是一個向用戶推送通知欄消息的實例:

wx.showModal({
  title: '提示',
  content: '確定要推送通知欄消息嗎?',
  success: function (res) {
    if (res.confirm) {
      wx.requestSubscribeMessage({
        tmplIds: ['TEMPLATE_ID_1', 'TEMPLATE_ID_2', 'TEMPLATE_ID_3'],
        success(res) {
          console.log(res)
        },
        fail(err) {
          console.log(err)
        }
      })
    } else if (res.cancel) {
      console.log('用戶點擊取消')
    }
  }
})

五、小程序能推送消息嗎

小程序可以向用戶發送消息,但需要滿足一定的規則和限制條件。在實際操作中,我們需要合理的運用小程序消息推送功能,以避免在用戶中造成過多的騷擾,同時也可以提高用戶對小程序的認知度和使用度。

代碼示例:

在頁面中添加以下button按鈕:




在js文件中添加以下代碼:

Page({
  data: {
    appId: 'wx80deeb600aa00000',
    appSecret: 'fea4e73519d828926f93c9276d000000',
    openId: '',
    formId: '',
    templateId: 'yRKwoFdQj0tJQwLXIUa8GNnqcc-Vd7b4tjIOdp_WLxk',
    lang: 'zh_CN',
    templateData: {
      keyword1: {
        value: '小程序模板消息',
        color: '#173177'
      },
      keyword2: {
        value: '2019年9月5日 14:00',
        color: '#173177'
      },
      keyword3: {
        value: '官方文檔',
        color: '#173177'
      }
    },
    subscribeData: {
      thing1: {
        value: '小程序訂閱消息',
      },
      time2: {
        value: '2019年9月8日 14:00',
      }
    }
  },
  onLoad: function (options) {
    // 獲取用戶授權
    wx.login({
      success: res => {
        wx.request({
          url: 'https://api.weixin.qq.com/sns/jscode2session?appid=' + this.data.appId + '&secret=' + this.data.appSecret + '&js_code=' + res.code + '&grant_type=authorization_code',
          success: res => {
            this.setData({
              openId: res.data.openid
            })
          }
        })
      }
    })
  },
  sendTemplateMessage: function () {
    // 發送模板消息
    wx.request({
      url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + this.data.appId + '&secret=' + this.data.appSecret,
      success: res => {
        wx.request({
          url: 'https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=' + res.data.access_token,
          method: 'POST',
          data: {
            touser: this.data.openId,
            template_id: this.data.templateId,
            form_id: this.data.formId,
            data: this.data.templateData,
            emphasis_keyword: 'keyword1.DATA'
          },
          success: res => {
            console.log(res)
          }
        })
      }
    })
  },
  sendSubscribeMessage: function () {
    // 發送訂閱消息
    wx.request({
      url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + this.data.appId + '&secret=' + this.data.appSecret,
      success: res => {
        wx.request({
          url: 'https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=' + res.data.access_token,
          method: 'POST',
          data: {
            touser: this.data.openId,
            template_id: '6udZURdLRwpdpUySYIgFNzRrV2tRzZQ9fGTjhNlV1V0',
            lang: this.data.lang,
            data: this.data.subscribeData
          },
          success: res => {
            console.log(res)
          }
        })
      }
    })
  },
  sendNotificationMessage: function () {
    // 發送通知欄消息
    wx.showModal({
      title: '提示',
      content: '確定要發送通知欄消息嗎?',
      success: res => {
        if (res.confirm) {
          wx.requestSubscribeMessage({
            tmplIds: ['8cE1mjvOB4StFUljvB1Njz-1mcubdip0eiC9k2ivQwg'],
            success: res => {
              console.log(res)
            }
          })
        } else if (res.cancel) {
          console.log('用戶點擊取消')
        }
      }
    })
  }
})

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/240590.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:22
下一篇 2024-12-12 12:22

相關推薦

  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • Python購物車程序

    Python購物車程序是一款基於Python編程語言開發的程序,可以實現購物車的相關功能,包括商品的添加、購買、刪除、統計等。 一、添加商品 添加商品是購物車程序的基礎功能之一,用…

    編程 2025-04-29
  • 爬蟲是一種程序

    爬蟲是一種程序,用於自動獲取互聯網上的信息。本文將從如下多個方面對爬蟲的意義、運行方式、應用場景和技術要點等進行詳細的闡述。 一、爬蟲的意義 1、獲取信息:爬蟲可以自動獲取互聯網上…

    編程 2025-04-29
  • Vb運行程序的三種方法

    VB是一種非常實用的編程工具,它可以被用於開發各種不同的應用程序,從簡單的計算器到更複雜的商業軟件。在VB中,有許多不同的方法可以運行程序,包括編譯器、發布程序以及命令行。在本文中…

    編程 2025-04-29
  • Python一元二次方程求解程序

    本文將詳細闡述Python一元二次方程求解程序的相關知識,為讀者提供全面的程序設計思路和操作方法。 一、方程求解 首先,我們需要了解一元二次方程的求解方法。一元二次方程可以寫作: …

    編程 2025-04-29
  • RabbitMQ和Yii2的消息隊列應用

    本文將探討RabbitMQ和Yii2之間的消息隊列應用。從概念、安裝和配置、使用實例等多個方面詳細講解,幫助讀者了解和掌握RabbitMQ和Yii2的消息隊列應用。 一、Rabbi…

    編程 2025-04-29
  • 如何使用GPU加速運行Python程序——以CSDN為中心

    GPU的強大性能是眾所周知的。而隨着深度學習和機器學習的發展,越來越多的Python開發者將GPU應用於深度學習模型的訓練過程中,提高了模型訓練效率。在本文中,我們將介紹如何使用G…

    編程 2025-04-29
  • Web程序和桌面程序的區別

    Web程序和桌面程序都是進行軟件開發的方式,但是它們之間存在很大的區別。本文將從多角度進行闡述。 一、運行方式 Web程序運行於互聯網上,用戶可以通過使用瀏覽器來訪問它。而桌面程序…

    編程 2025-04-29

發表回復

登錄後才能評論