当数据通过另一个平台发布时,Pubnub.Subscribe中的消息字段是什么

时间:2015-07-08 13:11:02

标签: javascript python pubnub

我从python API获取数据,从而通过Python将数据发布到我的pubnub通道。但是对于图表我必须依赖javascript,因此通过javascript订阅相同的频道。我的问题是,当我在收听频道时,如何获取消息字段。我最好的猜测是,我们需要创建一个单独的变量,但如何用我发布的消息填充它?

这是我的代码:

data = cclient.samples.list(meter_name ='checkpoint.pause')
pubnub = Pubnub(publish_key='xxx',subscribe_key='xxx')

def timesTamp(data):
    for each in data:
        x = each.timestamp

def counterVolume(data):
    for each in data:
        y = each.counter_volume
        pubnub.publish( channel='my_channel', message=y )

通过javascript收听:

var pubnub = PUBNUB({
                  publish_key   : 'xxx',
                  subscribe_key : 'xxx'
                          } );

pubnub.subscribe({
              channel: 'my_channel',
              message: y
              });

var channel = "c3-spline" + Math.random();
eon.chart({
            history: true,
            channel: channel,
               flow: true,
            generate: {
                  bindto: '#chart',
                          data: {
                               y: 'y',
                            labels: false
                              },
                axis : {
                       x : {
                     type : 'timeseries',
                      tick: {
                     format: '%H:%M:%S'
                }
            }
        }
    }
});

1 个答案:

答案 0 :(得分:3)

您应该首先从代码中删除setInterval(function(){});。这是不必要的。

其次,如果您查看EON文档中的parameter list,您会注意到message参数。

这与punub.subscribe中的回复完全相同,只要您在该频道收到消息,我们就会回复。