AliOS Things 3.0应用笔记:摄像头配网 + 钉钉群通知 + 天气显示

简介: 摄像头配网 + 钉钉群通知 + 天气显示
+关注继续查看

image.png

给AliOS Things一颗STAR(前往GitHub关注我们)


目录

运行流程

本示例有如下3个功能:

  1. 摄像头配网。
  2. 推送消息到钉钉群。
  3. 显示当天天气。

undefined

效果展示

操作流程

环境配置

  1. AliOS Things环境安装,参考:AliOS-Things-Environment-Setup
  2. AliOS Things 3.0应用开发环境搭建,参考AliOS Things 3.0 应用开发指南
  3. 准备developerkit开发板。
  4. 下载应用开发源码:developerkit_app.zip

使用vscode打开developerkit_app 源码。

源码目录结构

.
├── Config.in
├── README.md
├── aos.mk
├── gui               # gui显示,包括进度条、天气界面等
├── http              # https client应用,包括上报消息到钉钉群,获取天气数据等
├── k_app_config.h
├── main.c            # 主入口函数
└── qr_decode         # 摄像头扫码识别

配置

更改AOS_SDK_PATH路径
  • 编辑 .aos:
AOS_SDK_PATH=/Users/xxw/workspace/github/AliOS-Things
DEPENDENCIES=
MD5SUM_HEADER=a1a4b53ab917fb4a6cb08289b6007fe0

更改 /Users/xxw/workspace/github/AliOS-Things 为你的AliOS-Things源码路径。

windows用户的路径示例为:C:/workspace/github/AliOS-Things,注意路径中用的是斜杠/,不是反斜杠\

  • 编辑 Config.in:
......
config AOS_SDK_PATH
    string
    default "/Users/xxw/workspace/github/AliOS-Things"
......

更改 /Users/xxw/workspace/github/AliOS-Things 为你的AliOS-Things源码路径。

更改钉钉群机器人的token

更改http/http_request.c中的DINGTALK_TOKEN为你的钉钉群token,点击这里了解详细说明:

/* dingtalk token */
#define DINGTALK_TOKEN "<YOUR-DINGTALK-TOKEN>"
更改天气api的appcode

更改http/http_request.c中的WEATHER_APPCODE为你的appcode,点击这里了解详细说明:

/* weather api appcode */
#define WEATHER_APPCODE "<YOUR-WEATHER-APPCODE>"

烧录运行

下载烧录并运行,按照配网演示流程即可显示天气界面。其中配网二维码如下:

|240x240|center

源码讲解

QR扫码部分

本demo使用developerkit开发板的摄像头,通过摄像头扫二维码获取到wifi信息,然后连接到二维码。配网二维码中的wifi信息格式为:yunqiwifi&<ssid>&<passwd>,比如wifi名称为aiot,密码为12345678,那配网二维码中的wifi信息为:yunqiwifi&aiot&12345678

当然也可以用网上的二维码生成网站自己生成二维码:https://cli.im/

GUI部分

本demo基于littlevGL绘制了简单的UI交互界面,使用了littlevGL如下组件:

其中字体图标和中文字体在Iconfont中生成,也可以到FontEditor里面编辑字体,得到的ttf文件通过littlevGL提供的Font Converter在线工具转化为C文件。

https client部分

本示例使用到了AliOS Things 3.0提供的httpc组件,httpc组件支持多种RESTful的API调用,包括GET、POST、PUT、HEAD等,也支持https安全协议。

1. 钉钉群机器人:

本示例使用到了钉钉群自定义机器人的webhook功能,当设备上线后,会主动发送消息到钉钉群中,原理就是通过https client发送POST数据到机器人webhook中,就能够在钉钉群中显示相应POST的数据,该数据也支持markdown格式。

了解钉钉群自定义机器人如何运作的可以参考:自定义机器人

2. 天气API:

本示例使用到了阿里云API云市场的天气API:全国天气预报查询、实时天气、24小时天气、景区天气、预报7天/15天【支持高并发】【低延迟】,可以免费调用。请购买该应用(0元免费购买),然后获取到相应的访问appcode:

undefined

如何获取CA根证书

本示例里面使用的https接口都是安全加密的接口,需要配置CA root证书才能够正常访问这些接口,如何获取https网站的ca证书请参考:导出https网站证书

相关文章
|
2月前
|
移动开发 JSON API
C#-钉钉开发H5应用-事件订阅
C#-钉钉开发H5应用-事件订阅
106 0
|
2月前
|
小程序 开发者
钉钉应用上架流程
钉钉应用上架流程
233 3
|
3月前
|
小程序 BI vr&ar
酷!钉钉新应用,聊着天就把工作都做了
酷!钉钉新应用,聊着天就把工作都做了
106 0
|
4月前
|
小程序 搜索推荐 Cloud Native
数智洞察 | 让应用“活”起来的钉钉,这次够酷吗?
编者按: 以“科技向实,万物生长”为主题的线上发布会上,钉钉推出了一款全新应用模式:酷应用。它将普通应用的多种功能拆解后用在不同的场景中,成为一种全新的应用形态。这篇文章带大家深入了解到底什么是“酷应用”,以及钉钉为何要做这样的应用形式。 全文约4697字,建议阅读时间10分钟。
124 0
|
4月前
|
安全 搜索推荐 数据安全/隐私保护
云钉一体:阿里云 IDaaS 加入钉钉 iPaaS 联盟,安全连通人和应用
在2022杭州·云栖大会上,钉钉宣布组建 iPaaS 联盟,阿里云应用身份服务IDaaS成为iPaaS 平台首款身份服务类产品,与钉钉共同助力钉上企业应用的互通互联,打破身份数据孤岛,降低企业研发成本,提高协作效率,助力企业数字化转型升级。
152 0
|
5月前
|
人工智能 安全 大数据
钉钉7.0:500万个低代码应用,1500款SAAS
钉钉7.0:500万个低代码应用,1500款SAAS
264 0
|
7月前
|
定位技术 开发者
《钉钉酷应用开发手册》电子版地址
本册电子书旨在助力开发者快速开发一款基于群的酷应用。从读懂酷应用开始,到构建产品设计思路,然后进阶到具体的开发方法,并提供了低代码的开发方式,帮助开发者构建完整的学习地图。
63 0
《钉钉酷应用开发手册》电子版地址
|
7月前
|
开发者
《钉钉应用开发者速成手册》电子版地址
钉钉开发者认证官方课程,钉钉开放平台零基础入门,从框架原理到开发调试,7天手把手带你掌握钉钉典型应用开发!
76 0
《钉钉应用开发者速成手册》电子版地址
|
8月前
|
8月前
|
监控 Java 中间件
拦截应用 error日志并发送到钉钉群|Java 开发实战
现在应用都需要对日志进行监控或者报警,现在普遍的做法是采用EKL收集日志,然后再由Grafana进行内容展示和及告警策略等,那如果项目架构比较简单(单体应用),又不想搞那么多中间件依赖怎么办,这里有一种简单的方式可以实现~
拦截应用 error日志并发送到钉钉群|Java 开发实战
相关产品
物联网平台
物联网络管理平台
物联网边缘计算
推荐文章
更多