标签: web-push

服务工作者不提示注册 - net :: ERR_FILE_EXISTS

我浏览了其他主题 - 没有具体的答案.

我为通知实施了一个服务工作者

http://docs.pushwoosh.com/docs/chrome-web-push
Run Code Online (Sandbox Code Playgroud)

我检查了所有内容 - 所有脚本都在root中,密钥很好实现.但是,我没有被提示允许通知.

控制台输出读取:

GET https://mydomain/service-worker.js net::ERR_FILE_EXISTS
Run Code Online (Sandbox Code Playgroud)

注意:我有正确的URL(只是在这里更改).

是什么导致服务工作者错误?我该如何解决?

google-chrome push-notification service-worker web-push push-api

6
推荐指数
1
解决办法
1019
查看次数

如何测试pushsubscriptionchange事件处理代码?

pushsubscriptionchange当推送通知服务器希望客户端重新订阅时,浏览器会触发该事件.如何手动触发此事件进行测试?

web-push progressive-web-apps

6
推荐指数
2
解决办法
1993
查看次数

推送通知未通过服务工作人员传递

我们于2015年7月在我们的网站上部署了chrome服务工作者,拥有超过380,000个活跃用户,其中90%以上是移动设备.但是我们遇到了服务工作者的问题.当用户的缓存被清除或许多移动应用程序(如手机上的cleanmaster和其他实用程序应用程序)清除用户移动设备上的缓存时.在这种情况下,我们无法访问该用户的设备令牌.因此,即使有谷歌向我们发送消息ID的380K活跃用户,我们也只获得50K的展示次数,这是一个非常低的比率.我们的推送通知订阅是在单独的子域上实现的,因为我们无法使整个站点成为https.

我有2个查询:

  1. 我们很想知道Google是否正在设置规范系统(GCM中的移动应用程序),即使用户的缓存通过这些应用程序清除,他也可以获得推送通知.我们的用户一次又一次地抱怨说,即使在订阅之后,他们也没有得到推动,当我们深入了解并解决这个问题时.
  2. 还有一种方法可以确保我们找回这些用户吗?

mobile google-chrome push-notification service-worker web-push

6
推荐指数
1
解决办法
997
查看次数

OneSignal使用web-push-sdk通过网页订阅用户

有没有办法在一个信号web-push-sdk手动添加用户和取消订阅?

我在我的subscribeOneSignal()功能中试过这个,但没有发生任何事情.

OneSignal.push(function() {
    OneSignal.registerForPushNotifications();
});
Run Code Online (Sandbox Code Playgroud)

我有简单的html页面,其中有两个按钮,一个是"订阅",另一个是"取消订阅",现在当用户点击"订阅"按钮时,他应该添加一个信号,当他点击"取消订阅"按钮时,他不应该收到通知.

<!DOCTYPE html>
<html>
<head>
    <link rel="manifest" href="/manifest.json">
    <script src="https://cdn.onesignal.com/sdks/OneSignalSDK.js" async></script>
    <script>
        var OneSignal = window.OneSignal || [];
        OneSignal.push(["init", {
            appId: "345345-asdf-345",
            autoRegister: false,
            notifyButton: {
                enable: true
            }
        }]);

        function subscribeOneSignal(){
             OneSignal.push(function() {
              OneSignal.registerForPushNotifications();
            });
            OneSignal.push(function() {
              OneSignal.registerForPushNotifications({
                modalPrompt: true
              });
            });
        }
        function unSubscribeOneSignal(){
             //unsubscribe functionality goes here
        }
    </script>
</head>
<body>
<p>OneSingle Testing</p>
<br>
<button onclick="subscribeOneSignal()">Subscribe </button>
<button onclick="unSubscribeOneSignal()">Unsubscribe </button>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

javascript web-push onesignal

6
推荐指数
1
解决办法
1万
查看次数

浏览器推送通知错误“AbortError:注册失败 - 推送服务不可用”

我创建了一个系统,通过 Firefox 和 Chrome 使用浏览器推送通知与网站访问者进行更多互动。

我正在查看我的 Google Analytics 事件,了解订阅失败的原因,最大的原因是“推送服务不可用”。

我已经四处寻找原因,试图找出这意味着什么以及为什么会这样,但我找不到任何关于它的信息。

这是直接来自 GA 的错误:

AbortError: Registration failed - push service not available
Run Code Online (Sandbox Code Playgroud)

先感谢您!

firefox notifications google-analytics google-chrome web-push

6
推荐指数
1
解决办法
2080
查看次数

请求用户允许启用网络推送通知的正确方法是什么?

我目前正在学习服务工作者,特别是订阅用户推送通知。我已经完成了Web 推送通知 指南将推送通知添加到 Google 发布的 Web 应用程序 代码实验室- 但我看到了两种不同的请求用户许可的方式。

该指南要求使用这样的Notification通知 API 接口,然后根据以下返回值进行调用:subscribe().requestPermission()

function askPermission() {
  return new Promise(function(resolve, reject) {
    const permissionResult = Notification.requestPermission(function(result) {
      resolve(result);
    });

    if (permissionResult) {
      permissionResult.then(resolve, reject);
    }
  })
  .then(function(permissionResult) {
    if (permissionResult !== 'granted') {
      throw new Error('We weren\'t granted permission.');
    }
  });
}
Run Code Online (Sandbox Code Playgroud)

代码实验室仅通过.subscribe()直接在 Service Worker 注册上调用(这将弹出通知提示)来进行询问,PushManager 如下所示

function subscribeUser() {
  const applicationServerKey = urlB64ToUint8Array(applicationServerPublicKey);
  swRegistration.pushManager.subscribe({
    userVisibleOnly: true,
    applicationServerKey: applicationServerKey …
Run Code Online (Sandbox Code Playgroud)

javascript push-notification web-notifications service-worker web-push

6
推荐指数
1
解决办法
5060
查看次数

角度服务工作者 - 处理推送通知点击

如何处理角度服务工作者中的推送通知单击.SWPush没有任何方法.

我已经尝试引用一个侦听"notificationclick"事件处理程序的js,但是在点击通知按钮时它从未被触发过.

任何指针都会有所帮助!

web-push angular angular5 angular-service-worker

6
推荐指数
2
解决办法
1526
查看次数

Firefox Push API - AbortError:检索推送订阅时出错

我使用的是 46.0a1 版本的 Firefox Nightly(OS X 只有 42v,而 Push API 需要 43v)。

我收到此错误:

DOMException [AbortError: "Error retrieving push subscription"
code: 20
nsresult: 0x80530014]
Run Code Online (Sandbox Code Playgroud)

这是抛出此错误的片段:

navigator.serviceWorker.ready.then(function (serviceWorkerRegistration) {

    serviceWorkerRegistration.pushManager.subscribe()
        .then(function (subscription) {
            endpoint = subscription.endpoint;
            console.log('subscription endpoint: ', subscription.endpoint);
            subscribeOnServer();
        })
        .catch(function (e) {

            // here that error is raised

            errorNotification.innerHTML = 'Unable to subscribe to push';
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

在 Chrome 中,这个地方不会抛出任何东西,我通过正确的端点获得订阅。

web-push firefox-nightly push-api

5
推荐指数
1
解决办法
2053
查看次数

有没有办法在 .net 中进行 WebPush 有效负载加密?

我设法通过类似的方法将空推送通知发送到 chrome 和 firefox,尽管我试图使我的通知更详细,但是我找不到使用 .net 作为后端的详细 webpush 通知的示例。

我的 Firefox 示例如下:

Shared Function sendPushFox(ByVal value As String) As String
    Dim toret As String = ""
    Dim query As String = "SELECT subscribeid FROM custom_user_data WHERE NOT subscribeid = ' ';"
    Dim connection As New MySqlConnection(Utils.connectionString) : connection.Open()
    Dim command As MySqlCommand = New MySqlCommand(query, connection)
    Dim reader As MySqlDataReader = command.ExecuteReader()
    Dim regList As New List(Of String)
    Do While reader.Read
        regList.Add(reader.GetString(0))
    Loop
    Dim query2 As String = "SELECT p256dh FROM …
Run Code Online (Sandbox Code Playgroud)

.net c# vb.net push-notification web-push

5
推荐指数
1
解决办法
1433
查看次数

如何对受信任的 Web 活动使用推送通知

我已经使用 TWA 和本教程成功地为我的网站创建了一个 apk。

https://developers.google.com/web/updates/2019/02/using-twa

但我不知道我应该如何为我的 apk 添加推送通知。有两种方法: 1. Web-push 2-android push。他们都有单独的SDK。

问题是,如果我使用 web-push,chrome 怎么知道它不应该去网站,而应该去 app.

而且我也有使用 android sdk 进行推送通知的问题。push 的教程说你应该在主要活动的 onCreate 事件中放置一些代码。我的项目(用 twa 教程制作)没有活动。

android push-notification web-push trusted-web-activity

5
推荐指数
1
解决办法
3388
查看次数