光说不练假把式。上一篇介绍了Octoblu这个好玩的IoT平台,可是光放一些截图,没啥意义。好不好玩,容不容易上手,那得搞个Demo~

说实话,虽然我的账号注册了辣木久,一直没正经玩过Octoblu,直到这次从美国回来…… 以前我也没想到工作空间和物联网啥关系,直到今年见识了900+的PM 2.5……

于是,我就想,这两者有啥关系呢?既然现在能够实现随时随地的灵活工作空间,能不能结合物联网的特点,让工作空间变得自动而有趣呢?比如,像展望未来的那个视频……

那就搞搞吧~

我最初的想法,是由PM 2.5触发开会的选择,如果天气好,自动叫车去公司;如果雾霾严重,那就自动转成在线会议,用邮件和短信等通知与会人员~

怎么样,很酷吧?很人文关怀吧?

可是我发现貌似老外暂时没有现成的PM 2.5站点连接器,于是我上taobao搞了一个尘粒传感器,准备连到树莓派上,再输出到Octoblu。很明显,这两种方式都需要开发连接器……

为了尽快完成实验,我决定把PM 2.5改成温度。比如,温度高于0度,打车去开会,等于低于0度,改成在线会议~

这个可以有。

首先,注册Octoblu的账号,然后,打开https://app.octoblu.com,创建flow,我们就可以在一张图纸上,描绘我们的美好蓝图了~

一番拖拖拽拽,加上和技术团队在线聊聊天,这个功能就搞定了。

有趣吧?一起来看看我是如何在享受下午茶的间隙搞定这个Demo的。相信我,你也可以~

前文书说过,Octoblu是消息驱动的IoT自动化平台。你可以在基于浏览器的设计器中,添加“Things”,然后使用Tools等将这些东西连接起来,让消息流转起来,进行处理,推动自动化动作。

看看上图就容易理解了。为了实现基于温度的自动判断,首先我们需要一个温度的输入。例如,天气服务~

添加一个天气对象,这个对象是由Octoblu直接提供的,可以根据地点直接输出天气信息。在对应的网站上,有相应的API介绍:

可以看到,其实挺简单的。按照输入的地点,请求天气信息,当然,包括温度。如果做的考究一点,你也可以判断下雪了才改成在线会议。为了简单测试,我把条件搞成低于15°c,这样我在上海现在的气温下,立刻就能触发~ 当然,你可以选择输出是摄氏度还是华氏度。

如何得知一个对象输出了哪些消息,又如何去使用这些消息呢?一个最简单的方法,就是打开这个组件的Debug开关,这样,对象能输出那些信息,一目了然。怎样使用这些信息变得很容易。

正是这样的设计,使得创建一个IoT自动化flow,变得像一个亲子活动——你完全可以指导自己的孩子来做他/她喜欢的设计~

判断可以通过漏斗状的工具进行。将天气对象输出的信息,以消息方式进行引用,然后进行比较。在这个例子里,温度从天气对象输出的众多信息中挑选出来,因此我们可以使用`msg`.`temperature`来表示,从天气对象的msg信息中,挑选temperature这个对象。如前所述,天气对象的消息包括了温度、最低温度、最高温度、气压、湿度、风向、风速、天气等信息。完全可以发挥想象力来搞事情~

温度和判断有了,接下来我希望来触发一个在线会议,比如,GoToMeeting~

添加一个GoToMeeting对象。为了启用,需要对这个对象进行设置。对于GoTo Meeting来说,就是提供GoToMeeting的账号以创建管理在线会议。输入我的GoToMeeting账号,就可以继续设置GoToMeeting了~

必要的信息有:GoTo Meeting的动作,例如创建会议;会议主题;会议起始时间/结束时间;等等

同样,我们打开Debug,就能够看到这个对象被触发后,有着怎样的消息输出。

我能告诉你的是,这里有个坑,让我几乎花了一周时间和支持的技术人员研究~ 这个坑就是,不论我如何调整,调用GoToMeeting对象的`msg`.`joinURL`之类,始终显示null……

你能发现这里的消息输出和前一个对象有什么不一样吗?大家来找茬~哈哈~

是的,多了一个 [ 。这位在美国的支持人员在几轮在线聊天和邮件沟通后,终于告诉我,消息除了前面我们看到的格式之外,也有基于Array的……比如这个有 [ 字符的,就说明输出的消息,是一个array……

好吧……让我们把这个消息改成 {{msg[0].joinURL}}……

为了让消息看起来更加可读,我用了一个文本模板来定制邮件和短信正文:

Hi,

    Due to wather reason, please join meeting via: 
    {{msg[0].joinURL}}

    GoToMeeting:在线会议,从未如此简单!

后面顺手来个GoTo Meeting的广告,其实我是为了测试是不是支持多字节文本比如中文~

Debug信息显示,终于不是null了……费了老大劲,所谓好事多磨?

接下来,我要把邮件主题和邮件正文,拼成一个邮件,发给与会者。

这工作可以交给Octoblu的邮件对象。在网站上同样可以找到相关的API介绍。非常简单~

邮件创建成功,意味着就发出去了~ 友情提醒,一直收不到邮件的,请到垃圾邮件里翻翻……别问我为啥这么提醒(泪奔)

既然邮件通知了,顺手也做个短信提醒吧。其实我是想试试能不能发短信给国内的手机……

一样……Octoblu的短信API也是无比的简单…

大功告成,双儿,来,香一个~

首先到GoToMeeting的站点上,确认下我们的在线会议是否正确的创建出来了。

当然,还有邮件,是不是正确的收到了(此处再次纪念null问题解决10秒……)

再次提醒哦,找不到邮件的时候,除了debug和trouble-shooting,一定记得去翻翻垃圾邮件……

让我惊喜的是~ 短信也顺利收到了!

还支持中文哦~

你问我为啥不介绍如果天气好,就Uber叫车那部分?大哥……叫车要给钱的…自己试试叫车吧,哈哈哈~

还犹豫什么,现在就打开网站,注册账号,开始玩IoT吧!

本文转自HaoHu 51CTO博客,原文链接:http://blog.51cto.com/haohu/1899677,如需转载请自行联系原作者

未来已来——工作空间 WorkSpace 和物联网 IoT (2)相关推荐

  1. 未来已来——工作空间 WorkSpace 和物联网 IoT (1)

    不久前写的一篇Blog,从Citrix展望未来的视频引发的感慨,未来已来.这个感慨不是空穴来风,是因为在今年的峰会上看到不少新的进展.比如,IoT. Citrix 收购IoT平台公司Octoblu已有 ...

  2. 未来已来——工作空间WorkSpace和物联网IoT (3)

    时间过的很快,金乌玉兔的,距离上一次写IoT的冲动已经很久.IoT这么好玩,值得在繁忙的搬砖间隙好好学习一下. 于是手痒,于是继续尝试工作空间工具与IoT之间的各种好玩.这一次,我把眼光盯上了Octo ...

  3. 小米iot业务_未来十年,小米公司的 IOT (物联网)业务预计达到 40%-50%

    新京报快讯 (记者杨砺赵炜)"未来十年,小米公司的 IOT (物联网)业务预计达到 40%-50%,"6 月 23 日,小米公司董事长兼 CEO 雷军在香港的小米招股见面会,对于小 ...

  4. 未来已来!分布式数据库的“星辰大海”绝不仅限于替换!

    记得两三年前,当人们在谈论起分布式数据库等技术时,还经常在用"未来"等词语描述这一新技术的应用前景.在刚刚过去的2020年,新一代数据库龙头Snowflake成功上市,成为历史上规 ...

  5. 物联网IoT应用技术有哪些?

    物联网IoT应用技术有哪些? 心理学考研 众学简快 http://www.jkkaoyan.com 物联网设备的大量应用通常分为消费者,企业(商业)和基础设施空间. 消费者应用 越来越多的物联网设备开 ...

  6. 聊一聊智能汽车和物联网IoT设备的OTA远程升级

    根据 Allied Market Research 发布的最新报告,全球汽车OTA市场在2020年创造了25.9亿美金的市场价值,预计到2030年将达到137.1亿美元,从 2021 年到 2030 ...

  7. 物联网IOT时序数据库influxdb(2.x)

    物联网IOT时序数据库influxdb 物联网IOT时序数据库influxdb(2.x) 1.简介 2.InfluxDB相关概念 3.InfluxDB安装 3.1 本地安装 3.2 docker容器方 ...

  8. 万物联网IoE与物联网IOT有何差别?

    现今互联网的大小与规模呈现爆炸性成长,从汽车到灯泡等各种对象,也势必因为移动技术而彻底革命化.据分析师预估,到2020年将有250亿到500亿个装置连上互联网(以及互联).但光是让对象连网还不够,连网 ...

  9. 物联网IoT:如何重新定义移动应用开发

    物联网(IoT)是全球现代商业中最令人印象深刻和最有用的技术之一,它已经渗透到我们生活的很多方面,对人类生活有着巨大的影响.各种各样的物联网应用,包括人体组织.智能车辆.机器人.健康传感器.各种智能家 ...

最新文章

  1. 小程序button引导用户授权
  2. java多线程(3)Thread的静态方法
  3. 二十年后的回眸(5)——一部单车闯天下
  4. jpa取出mysql数组_java读取数据库数据,并将数据存入数组返回
  5. 图片文字识别(一):tesseract-ocr-4.00的安装与初步进行图片文字识别
  6. 这些高校表现亮眼!最新全球学术排名,频出黑马
  7. linux kill -9 杀不掉的进程
  8. python自动测试相机_Python + Appium+ IOS自动化测试
  9. 菜鸟进阶Linux高手之路——第四天(下)
  10. Smart Beta是什么?
  11. Leetcode 312 打气球 Burst Balloons C++ 史上最详细题解系列
  12. mac怎么压缩pdf文件大小?
  13. python3通过request多进程获取驾校一点通试题库
  14. 软件测试知识点和面试题--app测试篇
  15. 上海相会 | 冒志鸿与丁磊畅谈ArcBlock未来宏图
  16. uniapp打包apk文件申请高德地图key
  17. 如何在不越狱的情况下,获取app中的所有常用文件和文件夹
  18. 【目标检测数据集汇总】YOLO txt格式各种数据集
  19. 高分系列卫星介绍(GF)
  20. 在树莓派上使用微信聊天

热门文章

  1. STM32单片机初学6-SPI通信驱动IPS彩屏
  2. 为什么ASIC的频率可以达到GHz,而FPGA只能达到几百MHz?
  3. 微信小程序免费http转https
  4. linux学习笔记 linux内核6.0.2目录结构
  5. 怎么样使用TextPad工具,其实没那么复杂!
  6. html怎样使一个视频充满整个屏幕,抖音视频怎么铺满全屏
  7. 哥德巴赫猜想的证明(李扩继)
  8. oracle utl file putf,UTL_FILE学习
  9. 第3章第6节:如何在幻灯片中使用gif动画 [PowerPoint精美幻灯片实战教程]
  10. 芒果iOS开发之百度魔图面试题