AliOS Things 3.0应用笔记:摄像头配网 + 钉钉群通知 + 天气显示
給AliOS Things一顆STAR
目錄
- 運(yùn)行流程
- 效果展示
-
操作流程
- 環(huán)境配置
- 源碼結(jié)構(gòu)
- 配置
- 燒錄運(yùn)行
-
源碼講解
- QR掃碼部分
- GUI部分
- https client部分
運(yùn)行流程
本示例有如下3個(gè)功能:
操作流程
環(huán)境配置
使用vscode打開(kāi)developerkit_app 源碼。
源碼目錄結(jié)構(gòu)
. ├── Config.in ├── README.md ├── aos.mk ├── gui # gui顯示,包括進(jìn)度條、天氣界面等 ├── http # https client應(yīng)用,包括上報(bào)消息到釘釘群,獲取天氣數(shù)據(jù)等 ├── k_app_config.h ├── main.c # 主入口函數(shù) └── qr_decode # 攝像頭掃碼識(shí)別配置
更改AOS_SDK_PATH路徑
- 編輯?.aos:
更改?/Users/xxw/workspace/github/AliOS-Things?為你的AliOS-Things源碼路徑。
- 編輯?Config.in:
更改?/Users/xxw/workspace/github/AliOS-Things?為你的AliOS-Things源碼路徑。
更改釘釘群機(jī)器人的token
更改http/http_request.c中的DINGTALK_TOKEN為你的釘釘群token,點(diǎn)擊這里了解詳細(xì)說(shuō)明:
/* dingtalk token */ #define DINGTALK_TOKEN "<YOUR-DINGTALK-TOKEN>"更改天氣api的appcode
更改http/http_request.c中的WEATHER_APPCODE為你的appcode,點(diǎn)擊這里了解詳細(xì)說(shuō)明:
/* weather api appcode */ #define WEATHER_APPCODE "<YOUR-WEATHER-APPCODE>"源碼講解
?
QR掃碼部分
本demo使用developerkit開(kāi)發(fā)板的攝像頭,通過(guò)攝像頭掃二維碼獲取到wifi信息,然后連接到二維碼。配網(wǎng)二維碼中的wifi信息格式為:yunqiwifi&<ssid>&<passwd>,比如wifi名稱(chēng)為aiot,密碼為12345678,那配網(wǎng)二維碼中的wifi信息為:yunqiwifi&aiot&12345678。
當(dāng)然也可以用網(wǎng)上的二維碼生成網(wǎng)站自己生成二維碼:https://cli.im/?。
GUI部分
本demo基于littlevGL繪制了簡(jiǎn)單的UI交互界面,使用了littlevGL如下組件:
- Label
- Bar
- Font
- Image
其中字體圖標(biāo)和中文字體在Iconfont中生成,也可以到FontEditor里面編輯字體,得到的ttf文件通過(guò)littlevGL提供的Font Converter在線工具轉(zhuǎn)化為C文件。
https client部分
本示例使用到了AliOS Things 3.0提供的httpc組件,httpc組件支持多種RESTful的API調(diào)用,包括GET、POST、PUT、HEAD等,也支持https安全協(xié)議。
1. 釘釘群機(jī)器人:
本示例使用到了釘釘群自定義機(jī)器人的webhook功能,當(dāng)設(shè)備上線后,會(huì)主動(dòng)發(fā)送消息到釘釘群中,原理就是通過(guò)https client發(fā)送POST數(shù)據(jù)到機(jī)器人webhook中,就能夠在釘釘群中顯示相應(yīng)POST的數(shù)據(jù),該數(shù)據(jù)也支持markdown格式。
了解釘釘群自定義機(jī)器人如何運(yùn)作的可以參考:自定義機(jī)器人。
2. 天氣API:
本示例使用到了阿里云API云市場(chǎng)的天氣API:全國(guó)天氣預(yù)報(bào)查詢(xún)、實(shí)時(shí)天氣、24小時(shí)天氣、景區(qū)天氣、預(yù)報(bào)7天/15天【支持高并發(fā)】【低延遲】,可以免費(fèi)調(diào)用。請(qǐng)購(gòu)買(mǎi)該應(yīng)用(0元免費(fèi)購(gòu)買(mǎi)),然后獲取到相應(yīng)的訪問(wèn)appcode:
。
如何獲取CA根證書(shū)
本示例里面使用的https接口都是安全加密的接口,需要配置CA root證書(shū)才能夠正常訪問(wèn)這些接口,如何獲取https網(wǎng)站的ca證書(shū)請(qǐng)參考:導(dǎo)出https網(wǎng)站證書(shū)。
原文鏈接
本文為云棲社區(qū)原創(chuàng)內(nèi)容,未經(jīng)允許不得轉(zhuǎn)載。
總結(jié)
以上是生活随笔為你收集整理的AliOS Things 3.0应用笔记:摄像头配网 + 钉钉群通知 + 天气显示的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 58 集团大规模 Storm 任务平滑迁
- 下一篇: 重磅!容器集群监控利器 阿里云Prome