不想起床关灯 篇四:DC1 远程控制之路 - ha 与 小爱开放平台筑桥记

2019-09-18 16:32:39 12点赞 140收藏 25评论

小编注:此篇文章来自#原创新人#活动,成功参与活动将获得额外100金币奖励。详细活动规则,请猛戳此链接!

    如前篇所述,我们这一篇开始写ha与小爱开放平台之间的交互,我大致描述一下,有什么遗漏大家再一起讨论。

前期准备

  1.  需要一台装有homeassistant的设备A(我的是K3路由器

  2.  需要一台中转服务器S1,安装nginx,frps(frp的配置我这里不再赘述),miai.

  3.  在设备A安装frpc.并将ha的服务端口转发至中转服务器S1,服务器地址$s1ip

  4.  需要申请小爱平台开发者账号,并创建一个自定义技能

  5.  需要一个已备案的域名 your_domain,并申请ssl证书

  6.  一台小爱音响,并进入开发者模式


    (如果你家的宽带有外网,其实可以用小爱开放的函数计算这种方式来连接你的设备A,这样就可以省略中转服务器s1和ssl证书,有兴趣可以一起讨论一下)

数据流

    将ha与小爱开放平台交互,我想到的方案是:

ha与小爱连接的拓扑图ha与小爱连接的拓扑图


配置

配置 ha外网访问的网址,并将$you_domin,$s1ip换成你具体的域名或地址

 #cat ha_your_domain.conf 

server {

        listen 80;

        server_name ha.$your_domain;

        location / {

                proxy_pass http://$s1ip:8123/;

                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

                proxy_set_header X-Real-IP $remote_addr;

                proxy_set_header Host $http_host;

        }


    location /api/websocket {

        #端口写的和frpc.ini中一致

        proxy_pass http://$s1ip:8123/api/websocket;

        proxy_read_timeout 60s;

        proxy_set_header Host $host;

        proxy_set_header X-Real_IP $remote_addr;

        proxy_set_header X-Forwarded-for $remote_addr;

        proxy_http_version 1.1;

        proxy_set_header Upgrade $http_upgrade;

        proxy_set_header Connection 'Upgrade';

    }

 }

配置与开发者平台交互的服务网站

     #cat ai_your_domain.conf 

这里18123是miai的监听端口

upstream ai.$your_domain {

        server 127.0.0.1:18123 fail_timeout=0;

}

server {

    listen 80;

    listen [::]:80;

    listen 443 ssl http2;

    server_name  ai.$your_domain;

    root /var/www/vhosts/ai;

    access_log /var/www/vhosts/ai/access_log main;

    error_log /var/www/vhosts/ai/error.log;


    ssl_certificate   /etc/ssl/ai/1_$your_domain _bundle.crt;

    ssl_certificate_key  /etc/ssl/ai/2_$your_domain .key;

    client_max_body_size 4G;

    keepalive_timeout 600;

    # send all requests to the `/validate` endpoint for authorization

    # auth_request /validate;


    error_page 401 = @error401;

    location @error401 {

        return 302 https://ai.$your_domain/;

    }


    location / {

      # forward authorized requests to your service protectedapp.yourdomain.com

      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

      proxy_set_header Host $http_host;

      proxy_pass http://127.0.0.1:18123;

    }

    if ($scheme != "https") {

                return 301 https://$host$request_uri;

    } 

    location ~ /.well-known {

        allow all;

    }

}


安装miai. 我在github @liyumeng 的项目地址的基础上,融合另外一个项目@killingjacky xiaoai_hass_bridge 与ha的交互。修改了HA的交互方法,大家可以直接clone我修改好的项目,欢迎大家fork,或者star我

#git clone https://github.com/j1111011/MiAI.git

#cd MiAI

修改配置文件,先在HA界面生成一个长效访问令牌,

点击用户-创建令牌点击用户-创建令牌

修改mi_config.py,将ha的 端口、地址、技能名称、以及支持的操作、还有长效访问令牌修改成你对应的。

vi swagger_server/controllers/mi_config.py

mi_config配置说明mi_config配置说明

运行miai

python3 runserver.py


在小爱开放平台创建技能

    我mi_config里配置的是“妈妈”,并将地址填入相应问题,如下图:

小爱开放平台配置链接小爱开放平台配置链接

让小爱音响进入开发者模式

    进入开发者模式之后,现在你可以对小爱说,进入妈妈 (这是进入了技能,小爱比较坑,要通过唤醒词进入技能,也可以配置NLP。)。然后打开灯。至此我DC1对应的开关就通电了。

    mi_config 支持多种操作,以及多个目标,包括只读的,还有开关,大家有兴趣的可以一起研究一下。至此,我睡觉就不用起来关灯了。

结语


  "小爱同学~“

 “我在~”

“让妈妈关闭灯”




   

展开 收起

LOOCK 鹿客 LSC-C01 智能猫眼

LOOCK 鹿客 LSC-C01 智能猫眼

1399元起

MI 小米 小米体脂称 2

MI 小米 小米体脂称 2

95.04元起

MI 小米 小米体重秤 2

MI 小米 小米体重秤 2

59元起

纽曼插卡复读机U2锂电版蓝色 磁带U盘TF卡复读学习机中小学生英语教学用转录机 可充电录音随身听MP3播放机

纽曼插卡复读机U2锂电版蓝色 磁带U盘TF卡复读学习机中小学生英语教学用转录机 可充电录音随身听MP3播放机

129元起

纽曼CD学习机L680复读机DVD随身听英语同步教学用视频VCD光盘播放机学生便携式录音机U盘TF音箱锂电版蓝

纽曼CD学习机L680复读机DVD随身听英语同步教学用视频VCD光盘播放机学生便携式录音机U盘TF音箱锂电版蓝

549元起

MI 小米 升级版 米家多功能网关

MI 小米 升级版 米家多功能网关

135元起

EZVIZ 萤石 C3W(护卫舰) 1080P智能摄像头

EZVIZ 萤石 C3W(护卫舰) 1080P智能摄像头

237.46元起

纽曼(Newsmy)DVD-L350状元版 CD随身听 VCD播放器 英语学习机 复读机 DVD插卡U盘播放机 迷你音响蓝色

纽曼(Newsmy)DVD-L350状元版 CD随身听 VCD播放器 英语学习机 复读机 DVD插卡U盘播放机 迷你音响蓝色

349元起

TP-LINK 普联 TL-IPC42A-4 智能摄像机 1080P

TP-LINK 普联 TL-IPC42A-4 智能摄像机 1080P

165元起

帝尔DIER MP3复读机D32白色16G滚轮选段AB复读智能断句复读学生英语小语种听力训练/外放声音大/课堂录音功能

帝尔DIER MP3复读机D32白色16G滚轮选段AB复读智能断句复读学生英语小语种听力训练/外放声音大/课堂录音功能

348元起

帝尔DIER MP3复读机D24蓝色16G 抓词翻译生词/智能断句分句复读/A-B变速复读学生复读机英语学习小语种录音笔

帝尔DIER MP3复读机D24蓝色16G 抓词翻译生词/智能断句分句复读/A-B变速复读学生复读机英语学习小语种录音笔

368元起

西门子(SIEMENS) 智能空气检测仪 甲醛+PM2.5温湿度检测器 晴空蓝套装 WIFI和蓝牙连接

西门子(SIEMENS) 智能空气检测仪 甲醛+PM2.5温湿度检测器 晴空蓝套装 WIFI和蓝牙连接

728元起

帝尔DIER MP3复读机D16蓝色16G 智能断句复读A-B循环变速复读学英语利器国学机故事机胎教机充电复读机录音笔

帝尔DIER MP3复读机D16蓝色16G 智能断句复读A-B循环变速复读学英语利器国学机故事机胎教机充电复读机录音笔

248元起

熊猫(PANDA)F-236 复读机 磁带机 u盘 英语MP3 单放机 录音机 收音机 USB 播放机 自营(蓝色)

熊猫(PANDA)F-236 复读机 磁带机 u盘 英语MP3 单放机 录音机 收音机 USB 播放机 自营(蓝色)

164元起

MIJIA 米家 小米智能家庭套装礼品装

MIJIA 米家 小米智能家庭套装礼品装

329元起

帝尔DIER MP3复读机D24粉色16G 抓词翻译生词/智能断句分句复读/A-B变速复读学生复读机英语学习小语种录音笔

帝尔DIER MP3复读机D24粉色16G 抓词翻译生词/智能断句分句复读/A-B变速复读学生复读机英语学习小语种录音笔

383元起
25评论

发表评论请 登录
  • 最新
  • 最热
评论举报

请选择举报理由

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
140
扫一下,分享更方便,购买更轻松