1
摘要: 手机秒变IoT设备?什么?嵌入五行代码可以实现用户定位,用户在线数量统计,还能和云端消息交互?免费的MQ?谁用谁知道~

作者序

什么?嵌入五行代码可以实现用户定位,用户在线数量统计,还能和云端消息交互!

没错得益于阿里云物联网套件创建设备免费,消息收费也只有百万消息三块六(先使用后付费,不满不要钱),尤其对于学生党来说,基本是用不了这么多,也就意味着免费!(学生党福音[手动滑稽])

Talk is cheap,show me the code

public static void main(String[] args) {
        //去阿里云官网上创建一个产品,设置好地理位置属性。可以变相用做分组
        String productKey = "<your productKey>";
        //english name only
        String deviceName = "anyDeviceName";
        //自动创建设备的构造方法
        Simulator simulator = new Simulator(productKey, deviceName);
        //如果已经有了三元组(productKey, deviceName, deviceSecret)可以使用下面的构造方法
        // Simulator simulator = new Simulator("<your productKey>", "<your deviceName>", "<your deviceSecret>");
        simulator.connect(msgJson -> {
            System.out.println("received: " + msgJson);
            //可以变相当成mq使用,执行收到消息之后的逻辑

        });
        //可以放在带有定位的设备中,手机,手表等等。通过api获取经纬度上报
        UplinkMessage uplinkMessage = new UplinkMessage()
            .put("GeoLocation", new GeoLocation(122.250852f,30.193851f, 12f, 2));
            //可以根据产品定义上报额外属性
            //.put("PM25", 60)
            //.put("CO2Value", 123)
            //.put("HeatSwitch", 0)
            //.put("LightSwitch", 1);
        simulator.uplink(uplinkMessage);
    }
(咳咳,精简一下差不多能五行。)同学们看一下代码里的注释,麻雀虽小,五脏俱全呢。

整体目录结构是这样的,不久就放到github上,迫切需要的烙铁可以进钉钉群21939141艾特群主要代码

How to use

用法看起来是比较简单的,唯一需要的是三个关键key:

  1. productKey (传入到Simulator构造方法里)
  2. AppKey (配置到api.json)
  3. AppSecret(配置到api.json)

这三个key不需要编码,上阿里云申请就可以。请看分解动作:

productKey

  1. 访问阿里云物联网控制台创建一个高级版产品(高级版也不收费,功能更强大), 分类选择自定义,后续我们为他定义功能。
  2. 查看你的产品,在功能定义里添加一个地理位置功能(其他类型中搜索后任选一个)
  3. 敲黑板!! 拿出小本本记住你的ProductKey

AppKey&AppSecret

  1. 访问物联网开发者平台控制台创建一个自定义项目
  2. 进入你的项目,点击左侧菜单栏软件开发>web应用, 创建一个web应用(前端应用)
  3. 点击进入你的web应用,能看到AppKey和AppSecret
  4. 敲黑板!! 拿出小本本记住你的AppKeyAppSecret

Ready?go!

  1. 参数都设置好之后运行程序。
  2. 在空间数据可视化中创建一个二维场景,选择你之前创建的产品。
  3. 一切顺利的话你可以看到如下画面
不好意思设备名填了girlFriend - -,并设置到了海里。

当然你也可以用来统计你的客户端数量(用户数)和消息收发情况

enjoy!



本文作者:侯吉

阅读原文

本文为云栖社区原创内容,未经允许不得转载。


数据库知识分享者
27.8k 声望35.7k 粉丝

数据库知识分享