我从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 )
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'
}
}
}
}
});
答案 0 :(得分:3)
您应该首先从代码中删除setInterval(function(){});
。这是不必要的。
其次,如果您查看EON文档中的parameter list,您会注意到message
参数。
这与punub.subscribe
中的回复完全相同,只要您在该频道收到消息,我们就会回复。