用微信公众号控制ESP8266的LED,进一步使用微信当遥控器(避免写APP或者IOS或者小程序),控制一切设备。
官网教程微信硬件平台
成果演示B站投稿,欢迎三连
功能架构图


1 公众号注册
1.申请认证公众号&开通设备功能1.1公众号申请:https://mp.weixin.qq.com
个人订阅号
功能有限,不能有设备管理模块功能,本教程系列使用的是订阅号,做一个测试足够了。
企业服务号
注册必须要有公司信息,法人等组织代码,个人用不了。 某宝上可以买个临时用下测试。
可以拥有设备管理功能,简单来说可以生产100个设备(例如大气传感器),每个用户可以对应自己的设备
2.搭建自己的服务器
2.0购买云服务器
服务器选择有很多,国内的腾讯云、阿里云、百度云等等,阿里云算是国内一家独大的了,但都价格较贵吧,最好用学生认证买,会便宜很多。
2.1 服务器搭建
第一种方案 腾讯云服务器搭, 必须报备后才能使用80端口网页服务功能,其实报备也很快。
第二种方案 就是找个外国的服务器,没有报备的限制。
2.2开放服务器端口
和微信服务器交互,我们需要80或443端口,服务器端口默认需要开启,才能被外界访问。
第一层,登陆网页服务器管理界面添加安全组
腾讯云如何添加安全组开放端口 参考教程 自己搜
3 搭建Web服务器(apache + php + mysql)
centos6系统下,搭建Web服务器(apache + php + mysql)
3.0 安装apache
安装yum install httpd
启动service httpd start
暂停service httpd stop
重启service httpd restart
检查开机启动情况chkconfig --list httpd
默认情况下是全部关闭的,尽量设置开机启动,以防主机意外关机
设置开机启动命令chkconfig httpd on
再次检查启动情况,看到2,3,4,5为启动
关闭开机启动命令chkconfig httpd off
到此Apache安装完成,在自己浏览器中输入主机IP和端口号能正常打开
(不能打开重启下服务器)
Apache的默认网站根目录
/var/www/html

配置文件路径
/etc/httpd/conf/httpd.conf

3.1 安装php
yum install php
yum install php-mysql php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc
yum install php-mysql
以上命令为安装php及其支持的组件
测试是否安装成功
在这个文件夹下,创建一个info.php文件
vi /var/www/html/info.php
(不喜欢vi命令编辑的,可以把文件拖到windos上修改,后再复制过去)

<html>
<body>
<h1>It's work!</h1>
<?php
echo 'HELLO WORLD';
phpinfo();
?>
</body>
</html>
重启Apache服务器
在浏览器地址栏访问:http://自己的服务器IP/info.php

3.2安装mysql
安装
首先查看主机是否已经安装
rpm -qa|grep mysql
注意:可能检查中安装有php-mysql XXXXX 和 mysql-libXXXX,这是刚刚第二步安装的php的组件,不必理会
已经安装的话就执行删除命令
yum remove mysql
rm -f /etc/my.cnf
然后继续安装
使用命令
yum list | grep mysql
来查看yum上提供的mysql数据库可下载的版本
安装命令
yum install -y mysql-server mysql mysql-devel
等待一段时间安装成功
配置
接下来是对mysql的配置(注意:命令中是”mysqld”,不是mysql)
初始化:
service mysqld start
重启:
service mysqld restart
配置开机自动启动:
chkconfig mysqld on
为mysql的root账户设置密码:
mysqladmin -u root password '*********'
改密码后要重启Mysql服务器
登录命令
mysql -u root -p
配置Apache使其支持PHP
教程https://blog.csdn.net/qq_25371579/article/details/78476186
需要在httpd.conf中添加以下代码,修改后重启Apache服务

把这个文件拖到windons上,修改

添加
LoadModule php5_module modules/libphp5.so
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
然后文件重新复制回去,修改后重启Apache服务

3.3装MySql图形管理界面phpMyAdmin
从官网上下载下来(注意版本号,看是否支持本机的MySql和PHP),直接放在网站根目录下,在浏览器中输入相应的地址就可以访问,登陆后即可管理
https://blog.csdn.net/programmer_wei/article/details/45888835
1. #安装phpmyadmin
2. yum -y install phpmyadmin
3. yum install php-mcrypt
phpmyadmin默认只能使用http://localhost/phpmyadmin来访问,可以修改/etc/httpd/conf.d/phpmyadmin.conf中对应部分为
1. <Directory "/usr/share/phpmyadmin">
2. Order Deny,Allow
3. # Deny from all
4. Allow from All
5. </Directory>
phpMyAdmin 的默认安装目录是/usr/share/phpMyAdmin,同时会在 Apache 的配置文件目录中自动创建虚拟主机配置文件/etc/httpd/conf.d/phpMyAdmin.conf(区分大小写)。
vi /etc/httpd/conf.d/phpmyadmin.conf
#Alias /phpMyAdmin /usr/share/phpMyAdmin
#Alias /phpmyadmin /usr/share/phpMyAdmin
里面的
Require ip 127.0.0.1
Require ip ::1
改成 Require all granted
为该目录创建符号连接到 phpMyAdmin 安装目录(/usr/share/phpMyAdmin):
ln -sf /usr/share/phpMyAdmin /var/www/html/phpmyadmin
[root@localhost ~]# service httpd restart
测试,在网页里输入自己的服务器的IP,自动跳转php测试样例
http://localhost/phpmyadmin

4 配置微信SDK
4.1 下载SDK 以及 arduino代码
链接:https://pan.baidu.com/s/1aBqb_dLQ3bWbFmaaXk3xvQ
提取码:29vy

4.2 将SDK放在服务器下
注意路径,后面配置微信公众号需要用到,不能出错。
/var/www/html/WeChat

5 配置微信公众号
5.1 个人申请订阅号做的测试
公众号申请:https://mp.weixin.qq.com

订阅号是不用交钱的,就目前我们控制LED订阅号是足够了的
5.2 订阅号公众号设置
公众号申请好之后登陆,然后进行开发者设置。


5.3 说明:
服务器路径一定要填写对,是微信SDK文件下的的index.php
/var/www/html/WeChat
对应填写 : 服务器IP+/WeChat/index.php

不是/var/www/html/下面的index.php(安装网页服务器的测试网页)

根据实际的sdk路径填写地址,看上图填写完成之后就点击提交,不出意外就显示提交成功
6 测试
打开微信,关注自己的公众号
网友评论