267.6. 例子


267.6.1. 发布事件

生成时的默认操作。以下片段将 PojoBean 生成的事件发布到频道 iot。

from("timer:mytimer")
    // generate some data as POJO.
    .bean(PojoBean.class)
    .to("pubnub:iot?publishKey=mypublishKey");

267.6.2. 触发事件 aka BLOCKS Event Handlers

有关可调用的所有无服务器功能,请参阅 https://www.pubnub.com/blocks-catalog/。地理位置查找示例

from("timer:geotimer")
    .process(exchange -> exchange.getIn().setBody(new Foo("bar", "TEXT")))
    .to("pubnub:eon-maps-geolocation-input?operation=fire&publishKey=mypubkey&subscribeKey=mysubkey");

from("pubnub:eon-map-geolocation-output?subscribeKey=mysubkey)
    // geolocation output will be logged here
    .log("${body}");

267.6.3. 订阅事件

以下片段侦听 iot 通道上的事件。如果添加使用Presens 选项,您也会收到频道 Join,Leave asf 事件。

from("pubnub:iot?subscribeKey=mySubscribeKey")
    .log("${body}")
    .to("mock:result");

267.6.4. 执行操作

now : 包含有关频道当前状态的信息,包括当前订阅该频道的唯一用户 ID 列表以及频道的总 occupancy 计数

from("direct:control")
    .to("pubnub:myChannel?publishKey=mypublishKey&subscribeKey=mySubscribeKey&operation=herenow")
    .to("mock:result");

wherenow : 包含有关 uuid 订阅的当前频道列表的信息

from("direct:control")
    .to("pubnub:myChannel?publishKey=mypublishKey&subscribeKey=mySubscribeKey&operation=wherenow&uuid=spyonme")
    .to("mock:result");

setstate :用于设置特定于订阅者 uuid 的键/值对。

from("direct:control")
    .bean(StateGenerator.class)
    .to("pubnub:myChannel?publishKey=mypublishKey&subscribeKey=mySubscribeKey&operation=setstate&uuid=myuuid");

gethistory :记录频道的历史消息。

from("direct:control")
    .to("pubnub:myChannel?publishKey=mypublishKey&subscribeKey=mySubscribeKey&operation=gethistory");

test 目录中有几个示例显示了一些 PubNub 功能。它们需要一个 PubNub 帐户,您可以在其中获取发布和订阅密钥。

PubNubSensorExample 示例已包含 PubNub 提供的订阅密钥,因此可以在没有帐户的情况下运行。该示例演示了,PubNub 组件订阅了传感器数据的无限流。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.