0

我有一个扩展显示了一个小的弹出窗口,它基本上是一个链接到我的网站的iframe。通过点击扩展按钮,用户可以随时访问一些选定的信息。在铬扩展中实现按钮

我们还有一个使用pusher.com构建的通知系统,如果用户帐户中发生重要事件,它会发出通知。我们有基本的推杆代码如下

var encoded_user_id = "jmxk5y3y"; //static user id for demo purpose 
var pusher = new Pusher('222222222222222222'); 
var channel = pusher.subscribe(encoded_user_id); 

channel.bind('notifications_count_update', function(data){ 
    //set the notification count in DOM 
}); 

所以上面的绑定上编码的用户ID,它成为的通信手段,并能正常工作的网站内显示的通知进行。

我缺少的是一种将上述推送代码集成到Chrome扩展中的方法,这样新的通知号码就可以在扩展的按钮上显示为“徽章文本”。并且由于所有的扩展都是显示一个iframe,所以我不能在帧中访问会话信息(用户标识)以用于收听消息。

我应该如何着手解决这个问题?

+1

[“externally_connectable”+ sendMessage](https://developer.chrome.com/extensions/messaging#external-webpage)? – wOxxOm

+0

哇。这看起来像什么东西,可以解决我的问题, 谢谢,我现在就试试吧... – dylanfa88

+0

我看了一下解决方案,看来我可以用它来发送通知到扩展当用户在我的网站上。但是,即使用户不在网站上,用户也可以收到通知。 我应该如何去实施? – dylanfa88

回答

1

有一个Pusher Product Hunt Chrome Extension显示徽章式的通知。

查看background.js了解更多详情。

+0

感谢您的回答,我有机会查看扩展程序,它涉及订阅推送新消息的全球渠道。 尽管安静与我正在寻找的类似,但它实际上并没有解决我的问题,因为我需要将消息传递到特定的通道,在我的情况下是编码的用户ID,以便只有该用户才能收到通知。 – dylanfa88

+0

所以真正的问题是你如何从Chrome扩展的特定网站访问会话信息?然后,您使用此会话信息作为Pusher频道的名称? – leggetter