python - 想使用 PubNub 将实时更新发送到用户的网络浏览器

标签 python django heroku real-time-updates pubnub

研究使用 PubNub 向用户的网络浏览器发送实时更新。

我查看了他们的网站和 Material 。看起来他们有几个不同的选择。

我们想用它向用户正在查看的网页发送实时更新。信息很简单,例如“您刚刚收到一条消息”。我们不会尝试实现聊天程序或类似的东西。

PubNub 是一个很好的解决方案吗?如果是这样,应该使用哪个版本的服务?

我们在 Heroku 服务器上运行 Django。

非常感谢!

最佳答案

PubNub Facebook 通知

这是一个类似 Facebook 的例子 通过 PubNub 以自定义消息通知您的用户的窗口框。 您可以通过手机或浏览器向用户发送更新。 这将向您的用户显示通知;任何通知你。

使用 PubNub 允许通过 WebSockets、BOSH、Comet 和其他机制进行数据推送 在您的应用程序中使用,为您提供发送数据的能力 随时通过MASS BROADCAST个别通知

从这里开始:现场演示

Try it Now: http://pubnub-demo.s3.amazonaws.com/facebook-notification/index.html

Download Source Code: https://github.com/pubnub/javascript/tree/master/examples/facebook-notification

从这里开始轻松复制/粘贴代码。 上手非常容易,我们建议您开始 在开始之前使用上面的示例链接。

设置您的页面

首先包括 FBootstrap 资源以提供 通知窗口的外观和感觉。 将这些样式添加到您的 HTML 文件中。

<link href=bootstrap.css rel=stylesheet>
<style type=text/css> body { padding-top: 60px; } </style>

数据连接代码

接下来您需要设置一个 PubNub 数据连接,然后 添加有关在收到数据后如何处理数据的规则。

   <script src="https://pubnub.s3.amazonaws.com/pubnub-3.1.min.js"></script>
   <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-modal/2.2.6/js/bootstrap-modal.js"></script>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <script>(function(){

    // PubNub (For Data Push to User)
    var pubnub = PUBNUB.init({
        subscribe_key : 'demo',
        ssl           : false
    });

    // Setup New Data Push Connectoin via PubNub
    pubnub.subscribe({
        restore  : true,
        channel  : 'example-user-id-1234',
        callback : show_notification
    });

    // Setup Alert Window
    $('#new-alert').modal({ keyboard : true });

    // Show the Notification Window
    function show_notification(message) {
        $('#new-alert').modal('show');
    }

    // Simulate Notification
    $('#simulate-notification').bind( 'mousedown', function() {
        pubnub.publish({
            channel : 'example-user-id-1234',
            message : 'alert'
        });
        return false;
    } );

    })();</script>

Python 推送示例

接下来您需要添加此 python 代码 到您的 Django 或任何其他框架。 您可以将其添加到应用中的消息发布 代码中。 这将向您的用户发布通知。 此特定示例将导致出现通知 在 Facebook 通知页面内。

pip install pubnub

Python 源码

## PubNub Setup
import pubnub from Pubnub
pubnub = Pubnub( 'demo', 'demo', None, False )

## Push Notice to 'example-user-id-1234'
info = pubnub.publish({
    'channel' : 'example-user-id-1234',
    'message' : { 'your-data' : 'any-data-here' }
})
print(info)

关于python - 想使用 PubNub 将实时更新发送到用户的网络浏览器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11656117/

相关文章:

python - Django:在哪里存储全局静态文件和模板?

javascript - Django 模板内联 jQuery 不工作

javascript - 在 heroku 上 headless 执行 chrome 时出错

heroku - 项目无法更新 : Gateway rejected: fraud

python - 在 CGI 脚本的主目录中导入 python 模块

python - 更改已创建的 matplotlib 图形上的字体和线条粗细

python - 如何在 .vimrc 中配置,执行当前文件 python f9?

django - celery , Mechanize 和 socks 代理

python - 在 python 3 中查找过滤器对象的长度

ssl - Heroku SSL 端点的问题