打印
[开源硬件]

【DIY】ESP8266气象站-微信订阅号后台 - 软件篇

[复制链接]
1910|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
straka|  楼主 | 2018-7-14 23:05 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
每天户外运动,想有个能自动查询天气的方式,然而单位地方比较偏,周边没有能每天更新气象的地方,最近的有天气预报的地方也是三十多公里外的城区了。那就DIY一个呗。
某宝上找了找有各种模块,最近又学习了python,很快就有了思路。先做个硬件定时采集气象数据发送到服务端,服务端收到数据记录下以供查找中。结合微信的公众号接口,响应公众号查询请求。
硬件部分参考另一篇博文【气象信息采集装置http://www.straka.cn/?p=193&preview=true
服务端
微信订阅号对服务器端有约束,必须是80端口,收发均封装成XML格式,微信官网提供了xml解析封装的示例代码,直接使用就可以。
服务器端由python搭建,引用web模块监听80端口,同时服务端监听另一个端口,气象采集端将采集到的气象数据发送至该端口,服务端接收后按格式处理好并记录。
用户在订阅号后台发送消息后,微信服务器会封装成xml消息转发至python服务端,服务端对80端口传入的xml请求解析并获取请求用户等信息,并提取最近一次采集到的气象数据,根据请求封装成规定的xml格式返回微信后台,由微信后台发送至用户端。
除天气查询外的其他功能都是通过python服务端直接处理并响应。






整个下来涉及的程序并不多也不难,只是作为初学python的练手 , 顺便实现了点小功能方便生活,所以里面还有很多不完善的地方,距离实用还有些距离,比如性能、容错性、可用性、安全性等等。仅供大家参考。


相关帖子

沙发
straka|  楼主 | 2018-7-26 21:16 | 只看该作者
额,这个帖子本来是配合另一篇 【【DIY】ESP8266无线气象站-硬件篇】  https://bbs.21ic.com/icview-2530240-1-1.html 发表,结果种种原因,发帖一直在审核中,直到人工介入才得以重见天日,只好自己顶一下了。。

使用特权

评论回复
板凳
小小电子爱好者| | 2018-7-27 12:45 | 只看该作者
自己硬件接入自己的公众号  该怎么做

使用特权

评论回复
地板
straka|  楼主 | 2018-7-27 13:03 | 只看该作者
小小电子爱好者 发表于 2018-7-27 12:45
自己硬件接入自己的公众号  该怎么做

需要有台公网服务器上跑个服务程序监听80端口,用来和公众号对接,将硬件上报的数据发给公众号

使用特权

评论回复
5
小小电子爱好者| | 2018-7-27 13:05 | 只看该作者
straka 发表于 2018-7-27 13:03
需要有台公网服务器上跑个服务程序监听80端口,用来和公众号对接,将硬件上报的数据发给公众号 ...

涨知识    谢谢楼主

使用特权

评论回复
6
straka|  楼主 | 2018-7-27 13:11 | 只看该作者

不客气

使用特权

评论回复
7
caijie001| | 2018-7-27 22:26 | 只看该作者
cool

使用特权

评论回复
8
straka|  楼主 | 2018-8-22 10:41 | 只看该作者
论坛编辑功能问题还蛮多嘛,粘贴的链接、上传图片都会有各种问题。。。吐槽

使用特权

评论回复
9
21小跑堂| | 2018-8-23 16:26 | 只看该作者
straka 发表于 2018-8-22 10:41
论坛编辑功能问题还蛮多嘛,粘贴的链接、上传图片都会有各种问题。。。吐槽 ...

具体的问题可以反馈给我们哦,我们会努力完善功能哒~

使用特权

评论回复
10
ccswdwy| | 2018-8-30 13:14 | 只看该作者
您好我是无线电杂志的小编,我们觉得您的创意十分的好,如果您想在杂志上分享您的创意,方便的时候请联系我。我的QQ是260534978,手机微信是15510676333.
期待着您的好消息,感谢支持!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:一枚软件狗,欢迎访问我的博客: www.straka.cn

17

主题

46

帖子

2

粉丝