如何对推送通知进行分组

2023-12-25

我正在向我的 Android 手机发送推送通知。我希望对这些通知进行分组,这样我的通知列表就不会被淹没。

根据文档,来自同一“源”的消息被分组,但在我的手机上,消息总是显示为未分组。

我从 Google Apps 脚本调用推送 API,并尝试在调用推送 API 时设置 source_device_iden、source_user_iden 和 notification_tag。这些似乎都没有任何区别。

如何在手机上对推送消息进行分组?

Google Apps 脚本代码

function pushNoteToPhone(title, body) {
   var digest = "Basic "+Utilities.base64Encode(PUSH_BULLET_TOKEN+":");
   var options = {
    "method" : "post", 
    "payload" : {
      "device_iden" : MYPHONE_ID,
      "type" : "note",
      "title" : title,
      "body" : body,
      "source_device_iden" : <device id>,
      "notification_tag": "tag1",
    }, 
    "headers" : {
      "Authorization": digest
    }
  };

  var push_bullet_url = "https://api.pushbullet.com/v2/pushes";
  UrlFetchApp.fetch(push_bullet_url, options);
}

最简单的方法(诚然,它应该更容易)是创建一个 OAuth 客户端,然后使用该 oauth 客户端的访问令牌进行发送。这样,推送就会显得全部来自该客户而不是您。这就是 IFTTT 和 Zapier 在 Pushbullet 上的工作方式。

以下是设置 oauth 客户端的方法:https://docs.pushbullet.com/#oauth https://docs.pushbullet.com/#oauth

要获取访问令牌,您可以在创建客户端页面上使用“oauth test url”,一旦您批准访问,您最终将在 URL 中获得访问令牌。使用该访问令牌而不是普通的访问令牌,推送将显示为来自客户端而不是您。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何对推送通知进行分组 的相关文章

  • 在 Google Apps 脚本中,如何为我实现的服务设置 HTTP 响应代码?

    假设我有一个返回 XML 文档的 服务 function doGet var result
  • 使用 google.script.run 从 html 调用库函数

    我使用 Google App Script 实现库 并且使用 google script run 从库中调用函数时遇到一些困难 这是我的图书馆的代码 Code gs function ShowSideBar var html HtmlSer
  • 谷歌表格在一行上的不同单元格范围上添加时间戳

    我一直试图在与该行上两个不同单元格范围相对应的行上放置两个时间戳 我已成功使用此脚本对行上的任何更改 第 5 列之后 添加时间戳 我想要的是 如果单元格范围 F 到 L 发生任何更改 则在 E 列中放置一个时间戳 然后 如果从 N 列到 Z
  • 获取 Google Apps 脚本中新创建的文件夹的 ID

    作为 Google Apps 脚本项目的一部分 我尝试将活动电子表格和几个上传的文件移动到在共享目录中创建的新文件夹中 我已经能够使用以下命令创建新文件夹 DriveApp getFolderById parentFolder create
  • 从 Google 电子表格中的列填充 HTML 下拉菜单

    我是 gs 的新手 所以这应该不难 我有一个 Google 电子表格 其中一列中有值 假设 A 列 我使用 gs 创建了一个自定义菜单 用户将在其中选择一个选项 单击其中一个选项 新组件 将出现一个弹出窗口 其中包含一个下拉菜单 用户应从其
  • 用于清除多个范围的 Google 脚本。

    我有许多电子表格 每周填写一次 并在新的一周开始时关闭 我编写了一个脚本来遍历并清除许多不同工作表中的各种范围 请参阅下面的代码 我的问题是有没有更好的方法来做到这一点 而不是必须一次清除一个部分的范围并拥有一百万个clearContent
  • 将时间戳转换为一个数组

    在应用程序脚本 谷歌表中运行 我从 API 获取时间戳并返回此结果 1 6370611672429312E18 1 63706107263277082E18 我执行此代码并且工作正常 但问题不在数组中 我每次都需要它在数组中 const t
  • 脚本在 SpreadsheetApp.openById 上失败 - 需要权限

    我有一个 onOpen 函数 可以在电子表格中创建自定义菜单 它已经工作了一年多 但几天前它停止工作了 当我查看执行记录时 我得到 执行失败 您无权调用 SpreadsheetApp openById 所需权限 https www goog
  • 如何使用 Google Apps 脚本添加指向电子表格单元格的链接

    可以通过用户界面向 Google 电子表格中的单元格添加 链接 我想使用 Google Apps 脚本执行相同的操作 我本以为 Range 类上有一种方法可以实现这一点 但看不到 有谁知道如何做到这一点 截至 2020 年 6 月 可以选择
  • 选择列的最后一个值

    我有一个电子表格 G 列中有一些值 有些单元格之间是空的 我需要将该列中的最后一个值获取到另一个单元格中 就像是 LAST G2 G9999 除了那个LAST不是一个函数 类似的答案卡里加里的回答 https stackoverflow c
  • 用于向日历活动提交表单的 Google 脚本

    学校老师使用我的个人 Google 帐户创建表单并将日历发布到我的班级网站 努力让孩子 无法访问 Google Apps 尽可能快速 轻松地安排补考使用这种形式 https docs google com forms d 1 TvsZ3Wl
  • 如何使用脚本获取 Google 文档中的修订历史记录?

    如何使用脚本获取 Google 文档中的修订历史记录 我该怎么做 一些想法 您可能需要启用 Drive SDK 您可以在 资源 gt 高级 Google 服务 菜单中执行此操作 然后执行类似以下操作 var revisions Drive
  • 使用 Google App Script 从一个电子表格跳转到另一个电子表格

    我有一个脚本 仅当我位于运行代码的当前工作表中时才有效 在 A1 中 我有一个复选框 其作用是刷新 api 请求 因此 我下面的代码单击复选框并获取新数据 所以我的代码的目的基本上是单击 A1 中的复选框 但是 运行此代码只会激活复选框 但
  • Google Apps 脚本:如何水平对齐 inlineImage

    我有以下代码 它是一个更大程序的一部分 我正在尝试将图像从我的 Google 驱动器插入到 Google 文档中 并调整其大小并居中 到目前为止 我能够让程序插入图像并调整其大小 但我不知道如何使 inlineImage 居中 我是使用谷歌
  • 如何从 Google 电子表格中删除项目?

    我通过在脚本编辑器上选择 文件 gt 制作副本 错误地制作了 Google Apps 脚本项目的副本 从那时起 每次我在该项目所属的电子表格屏幕上单击 工具 gt 脚本编辑器 时 我看到显示两个项目 原始项目和复制项目 的屏幕 我需要选择一
  • 如果您有多个表单向单个电子表格发送响应,Google 如何知道提交表单时要执行哪个 onsubmit 触发器

    我需要有人澄清 据我了解 多个表单可以将其回复发送到新 Google 表格中的单个电子表格 因此 我创建了两个 Google 表单 并让他们都将回复发送到新的 Google 电子表格 然后我在电子表格 而不是表单 中创建了两个脚本 每个脚本
  • Google Web Apps - 获取用户电子邮件但以所有者身份运行脚本

    我最近迷上了谷歌网络应用程序 但我遇到了一些进退两难的问题 我正在尝试构建一个对非常特定的用户开放的应用程序 并且他们正在查看的数据根据 其访问组进行过滤 在谷歌表格中 我列出了用户电子邮件及其各自的访问组 A 列 电子邮件 B 列 访问组
  • 复制带有内嵌图像的表格

    我正在尝试将 GDoc 的内容复制到另一个 GDoc 中 这对于所有不同的元素类型都非常有效 包括一个表 枚举DocumentApp ElementType TABLE 但是 如果表包含内联图像 EnumDocumentApp Elemen
  • Google Apps 脚本中的地图对象支持

    Google Apps 脚本是否支持Map https developer mozilla org en docs Web JavaScript Reference Global Objects Map object 当我尝试使用它时 我得
  • Firebase GAS webapp Google 弹出窗口消失

    我正在尝试升级我的 firebase GAS web 应用程序 之前我有一个弹出窗口 可以让用户使用 Google 登录 我不确定我做错了什么 但我已经升级到新的 firebase 现在正在尝试使用新的代码格式进行相同的登录 发生的情况是

随机推荐

  • 我真的需要执行 mysql_close()

    我真的需要执行 mysql close 吗 为什么或者为什么不 即使我不执行 mysql close 是否有触发器在 mysql connect 之后关闭链接 根据文档 http php net manual en function mys
  • 为什么 CMake 语法到处都有多余的括号?

    CMake s if像这样 if condition else if else endif With else if the 测试单独的条件 Why else 不仅仅是else Why endif 并不是endif Cmake的功能如下 f
  • 监控 Spark 执行和存储内存利用率

    我知道有多种方法可以监视 Spark 应用程序的存储内存利用率 但有人知道监视执行内存利用率的方法吗 我也在寻找一种监视 用户内存 的方法 即不用于执行也不用于存储的内存 查看 Spark 的内存管理文档https spark apache
  • jQuery 断言支持/防御性编程?

    jQuery 中是否有内置支持进行基本断言检查 主要是 返回元素的预期数量 之类的内容 例如 我可能有一个像这样的简单声明 btnSignup click function return validateForm 现在有很多理由 btnSi
  • 使用 Selenium Scraper (Python) 时消除 % 符号

    下面是一个 Selenium 网络抓取工具 它循环访问该网站页面的不同选项卡 选择 导出数据 按钮 下载数据 添加yearid列 然后将数据加载到MySQL表中 import sys import pandas as pd import o
  • AngularJS 错误 - [$compile:multidir] 多个指令错误

    我使用这些包 来自 Angular ui 包的 Angularjs 模态 http angular ui github io bootstrap modal http angular ui github io bootstrap modal
  • 数据库设计主键、ID 与字符串

    我目前正在计划开发一个音乐流应用程序 我想知道什么作为服务器上表中的主键会更好 ID int 或唯一字符串 方法一 歌曲表 SongID int 标题 string 艺术家 string 长度 int 专辑 string 流派表Genre
  • 仅允许输入数值 Datagridview 特定列

    有什么方法可以自定义 datagridview 列以仅接受数值 此外 如果用户按数字以外的任何其他字符 则不得在当前单元格上键入任何内容 有什么方法可以解决此问题 private void gvAppSummary EditingContr
  • 在 TFS2015 update2 vNext 构建配置中发送请求时发生错误

    配置 TFS vNext 构建代理时出现错误 连接到服务器时出错 发送请求时发生错误 的请求 我在事件日志或其他任何地方找不到任何其他错误消息 请帮忙 更新1 SSL https tfs 不起作用 但是简单的 http 起作用了 更新 2
  • 一个巨大的 CSS - 还是许多小的 CSS?

    希望是简单的问题 我们有一个超过 3000 行的样式表 因此在渲染页面时存在明显的延迟 问题是 是使用一个覆盖所有内容的大型样式表更好 还是使用许多覆盖页面不同部分的小样式表更好 例如 一个用于布局 一个用于下拉菜单 一个用于颜色等 这只是
  • OCaml 语言的 IDE

    除了 Camelia 之外 还有其他值得信赖的 OCaml IDE 吗 如果存在的话 我更喜欢基于 Eclipse 的 IDE 编辑 十年后 2022 VS Code OCaml 平台 https marketplace visualstu
  • 通过 CPU/GPU 的占位符获取不同的值

    当我运行下面的代码时 我认为我得到了错误的结果 OVER GPU import tensorflow as tf sess tf Session a tf placeholder tf float32 b tf placeholder tf
  • 如何在 CakePHP 中强制刷新图像和 css 文件?

    我有以下问题 我正在 CakePHP 中编码 而且我是新手 我经常需要更改网站上的一些图像或 css 文件 在网站上我总是看到旧的内容 除非我手动按键盘上的 F5 我必须在每个使用该网站的工作场所执行此操作 这很令人恼火 尤其是因为我不知道
  • 更改子进程中的环境变量 - bash

    嗨我有以下示例 a sh 脚本设置了我可以在 b sh 子 脚本中看到的环境变量 但是如果我更改它 我仍然在 a sh 中保留旧值 a sh bin bash export A 1 b sh echo parent A b sh bin b
  • 存储WPF图像资源

    对于需要 10 20 个小图标和图像用于说明目的的 WPF 应用程序 将它们作为嵌入式资源存储在程序集中是正确的方法吗 如果是这样 如何在 XAML 中指定图像控件应从嵌入资源加载图像 如果您将在多个地方使用该图像 那么值得将图像数据仅加载
  • 比较 Highcharts 组合图表中工具提示内的两个数据点

    我有一个共享单个 Y 轴的组合条线图 条形图和折线图的数据点始终共享相同的 Y 值 我希望能够计算工具提示中两个 X 值之间的差异 这是我正在使用的图表 组合图 http jsfiddle net 7RQU4 让它工作 诀窍在于工具提示的共
  • 如何编写 ZF2 路由器脚本以允许默认操作上的参数

    我试图解决 ZF2 中路由语句的一些特性 相册模块示例建议如下 router gt array routes gt array album gt array type gt segment options gt array route gt
  • 如何消除 Windows.Forms 自定义控件滚动时的闪烁?

    我想用 C 创建一个自定义控件 但每次我必须完全重绘控件时 即使我使用双缓冲 首先绘制到图像 然后位图传输 它也会闪烁 当我必须完全重绘时如何消除闪烁 您可以尝试在 InitializeComponent 调用之后将以下内容放入构造函数中
  • 如何使用 Knex.js 从列中检索唯一值?

    I use Knex js http knexjs org 与 Postgres 数据库通信 我的表中有一些行 其中有一列名为 state 代表美国的一个州 如何从此列中检索所有唯一值 您可能正在寻找不同的节点 https knexjs o
  • 如何对推送通知进行分组

    我正在向我的 Android 手机发送推送通知 我希望对这些通知进行分组 这样我的通知列表就不会被淹没 根据文档 来自同一 源 的消息被分组 但在我的手机上 消息总是显示为未分组 我从 Google Apps 脚本调用推送 API 并尝试在