『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: flashsoft

[新奇玩法] 【20190614,修复日志路径】让小爱支持控制任意自制.....

  [复制链接]

9

主题

358

帖子

3113

积分

论坛元老

Rank: 8Rank: 8

积分
3113
金钱
2755
HASS币
0
发表于 2018-11-9 23:29:54 | 显示全部楼层
sangood 发表于 2018-11-8 09:17
有时候,因为wifi网络连接慢,把启动顺序调到 99 应该可以解决了。
/etc/init.d/mico_enable 96 改成99
...

请问一下这个的意思是?
回复

使用道具 举报

9

主题

534

帖子

4528

积分

元老级技术达人

积分
4528
金钱
3984
HASS币
60
发表于 2018-11-10 10:01:42 | 显示全部楼层
jozhi 发表于 2018-11-9 23:29
请问一下这个的意思是?

vi /etc/init.d/mico_enable

#!/bin/sh /etc/rc.common
START=99 #改这里为 START=99 再重新 disable enable

start() {
  sh '/root/mico.sh' > /dev/null 2>&1 &
}

stop() {
  kill `ps|grep 'sh /root/mico.sh'|grep -v grep|awk '{print $1}'`
}

START=99 #改这里为 START=99 再重新 disable enable
回复

使用道具 举报

0

主题

16

帖子

94

积分

注册会员

Rank: 2

积分
94
金钱
78
HASS币
0
发表于 2018-11-12 19:42:51 | 显示全部楼层
请问楼主小爱同学mini可实现这一功能吗?
回复

使用道具 举报

6

主题

154

帖子

3324

积分

论坛元老

Rank: 8Rank: 8

积分
3324
金钱
3170
HASS币
10
发表于 2018-11-13 09:18:22 | 显示全部楼层
本帖最后由 Jerrylee 于 2018-11-13 16:08 编辑

新版本 Websocket 貌似会有相容问题
测试了两组 Hass.io / 小爱,node-red-contrib-home-assistant-websocket 升级到 0.2.1 后都会报 unauthorized

回复

使用道具 举报

11

主题

271

帖子

3099

积分

论坛元老

Rank: 8Rank: 8

积分
3099
金钱
2828
HASS币
10
发表于 2018-11-27 00:54:45 | 显示全部楼层
F大 您好!
我运行了/etc/init.d/mico_enable start后出现
/root/mico.sh: line 158: usleep: not found
还能显示出来RES拦截词和asr拦截词
node-red里也能成功缓存到设备列表
可我喊“室内空气质量”,就是找不到设备
把debug接到转发主入口也看不到信息


可能是哪里出了问题呢?
回复

使用道具 举报

2

主题

171

帖子

1175

积分

金牌会员

Rank: 6Rank: 6

积分
1175
金钱
1004
HASS币
10
发表于 2018-11-27 07:38:03 | 显示全部楼层
roc227 发表于 2018-11-27 00:54
F大 您好!
我运行了/etc/init.d/mico_enable start后出现
/root/mico.sh: line 158: usleep: not found

替F大說明一下..   請參考..

使用綠板PCB改造的同學請注意.   請修改F大原代碼下半部份(mico.sh), 標示紅色字體的代碼,  才能保證長時間運行正常.

(綠板PCB由於系統版本差異, 不支持 "usleep xx" 命令, 所以要把它改成 "sleep 0", 就行了,
如果直接去掉該命令, 則連續運行2-3天後會發現動作越來越卡.....)

------------------------------------------------------------------------------------------------------------------
# @TODO: doamin是scenes的情况下,暂停播放,记录播放状态并暂停以及继续播放时有问题的
      # 为了保证不影响暂停效果,所以调整不同的停止播放方式
      if [ "${miai_domain}" != "scenes" ];then
        echo "== 其他模式 | ${miai_domain}"
        # 若干循环,直到resume成功一次直接跳出
        seq 1 200 | while read line;do
          code=`ubus call mediaplayer player_play_operation {\"action\":\"resume\"}|awk -F 'code":' '{print $2}'`
          if [[ "${code}" -eq "0" ]];then
            echo "== 停止成功"
            break
          fi
          sleep 0
        done
      else
        echo "== 场景模式 | ${miai_domain}"
        seq 1 10 | while read line;do
          ubus call mediaplayer player_play_operation {\"action\":\"stop\"} > /dev/null 2>&1
          sleep 0
        done
      fi

      # 记录播放状态并暂停,方便在HA服务器处理逻辑的时候不会插播音乐,0为未播放,1为播放中,2为暂停
      play_status=`ubus -t 1 call mediaplayer player_get_play_status | awk -F 'status' '{print $2}' | cut -c 5`
      if [ "${miai_domain}" != "scenes" ];then
        ubus call mediaplayer player_play_operation {\"action\":\"pause\"} > /dev/null 2>&1
      fi

      # @todo:
      # 转发asr和res给服务端接口,远端可以处理控制逻辑完成后返回需要播报的TTS文本
      # 2秒连接超时,4秒传输超时
      tts=`curl --insecure –connect-timeout 2 -m 2 -s -u "${nodered_auth}" --data-urlencode "asr=${asr_content}" --data-urlencode "res=${res_content}" "${nodered_url}/miai"`
      echo "== 请求完成"

      # 如果远端返回内容不为空则用TTS播报之
      if [[ -n "${tts}" ]];then
        echo "== 播报TTS | TTS内容: ${tts}"
        ubus call mibrain text_to_speech "{\"text\":\"${tts}\",\"save\":0}" > /dev/null 2>&1
        # 最长20秒TTS播报时间,20秒内如果播报完成跳出
        seq 1 20 | while read line;do
          media_type=`ubus -t 1 call mediaplayer player_get_play_status|awk -F 'media_type' '{print $2}'|cut -c 5`
          if [ "${media_type}" == "" ] || [ "${media_type}" -ne "1" ];then
            echo "== 播报TTS结束"
            break
          fi
          sleep 1
        done
      fi

      # 如果之前音乐是播放的则接着播放
      if [[ "${play_status}" -eq "1" ]];then
        echo "== 继续播放音乐"
        # 这里延迟一秒是因为前面处理如果太快,可能引起恢复播放不成功
        sleep 1
        if [ "${miai_domain}" != "scenes" ];then
          ubus call mediaplayer player_play_operation {\"action\":\"play\"} > /dev/null 2>&1
        fi
      fi
    fi

    log_res=`curl --insecure –connect-timeout 2 -m 2 -s -u "${nodered_auth}" --data-urlencode "asr=${asr_content}" --data-urlencode "res=${res_content}" "${nodered_url}/miai/set/log"`
    echo "== 投日志 | ${log_res}"
  fi

  # 以某频度去更新拦截词
  if [[ "${keywords_update_timeout}" -gt "0" ]];then
    now=`date +%s`
    step=`expr ${now} - ${last_time}`
    # 根据设定时间间隔获取更新词
    if [[ "$step" -gt "${keywords_update_timeout}" ]];then
        asr_keywords=`curl --insecure –connect-timeout 2 -m 2 -s -u "${nodered_auth}" "${nodered_url}/miai/get/asr"`
        res_keywords=`curl --insecure –connect-timeout 2 -m 2 -s -u "${nodered_auth}" "${nodered_url}/miai/get/res"`
        echo "== 更新关键词 | asr关键词内容: ${asr_keywords} | res关键词内容: ${res_keywords}"
        last_time=`date +%s`
    fi
  fi
  sleep 0
done

回复

使用道具 举报

11

主题

271

帖子

3099

积分

论坛元老

Rank: 8Rank: 8

积分
3099
金钱
2828
HASS币
10
发表于 2018-11-28 15:06:55 | 显示全部楼层
liuje 发表于 2018-11-27 07:38
替F大說明一下..   請參考..

使用綠板PCB改造的同學請注意.   請修改F大原代碼下半部份(mico.sh), 標示 ...

大神,我用WinSCP连不进去啊,nano也找不到文件
回复

使用道具 举报

2

主题

171

帖子

1175

积分

金牌会员

Rank: 6Rank: 6

积分
1175
金钱
1004
HASS币
10
发表于 2018-11-28 15:24:50 | 显示全部楼层
roc227 发表于 2018-11-28 15:06
大神,我用WinSCP连不进去啊,nano也找不到文件

顯然你沒有好好研究過這兩篇文章 ...

【1014更新】小爱音箱系统破解实现更多功能(重大进展)
https://bbs.hassbian.com/thread-4961-1-1.html

【1027更新,无需拦截词】让小爱支持控制任意自制设备
https://bbs.hassbian.com/thread-5110-1-1.html

小愛出廠默認是關閉SSH連接的,  你用WinSCP試一輩子也連不進去.   關鍵提示..  "從TX/RX串口先登入"
再參考上面兩篇,  或我的這篇,  從串口登入那邊, 發送命令, 打開SSH功能.
之後才有可能利用WinSCP登入的.....

還有,  小愛的系統內本來就沒有 "nano" 編輯器,  登入後, 也只能用 "vi" 來編輯腳本的.
回复

使用道具 举报

11

主题

271

帖子

3099

积分

论坛元老

Rank: 8Rank: 8

积分
3099
金钱
2828
HASS币
10
发表于 2018-11-28 18:07:45 | 显示全部楼层
liuje 发表于 2018-11-28 15:24
顯然你沒有好好研究過這兩篇文章 ...

【1014更新】小爱音箱系统破解实现更多功能(重大进展)

我是黑板
没开过SSH不可能走到“运行 /etc/init.d/mico_enable start”这一步
把winSCP连接协议换了一下就连上了,多谢
回复

使用道具 举报

7

主题

86

帖子

603

积分

高级会员

Rank: 4

积分
603
金钱
517
HASS币
0
发表于 2018-11-28 18:12:46 | 显示全部楼层
大神利害!!!!NB啊!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-16 23:30 , Processed in 0.207734 second(s), 30 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表