[Модуль] RHVoice TTS (rhvoice)

Разработка дополнительных модулей, подключение различных приложений.

Модератор: immortal

Dark_Veter
Сообщения: 295
Зарегистрирован: Вт апр 23, 2013 5:16 pm
Откуда: Брянск
Благодарил (а): 18 раз
Поблагодарили: 94 раза

Re: Модуль RHVoice

Сообщение Dark_Veter » Вт май 10, 2016 6:10 pm

Видимо какая-то другая команда должна быть. В debian 8 я еще не разобрался как это делается. А как вы запускаете majordomo? :)
Debian GNU/Linux 7.9 (wheezy), версия 0.9.0b, Connect
portos
Сообщения: 29
Зарегистрирован: Пт апр 15, 2016 4:04 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Модуль RHVoice

Сообщение portos » Вт май 10, 2016 6:23 pm

О как!!!
Ну все понятно я запустил вариант 1

Код: Выделить всё

Основной цикл Вариант 1 (например для RPI, Ubuntu)

Запуск основного цикла добавляем в Cron, для пользователя majordomo (заменить на своего, под которым запущена система) 
crontab -e -u majordomo

Или для ROOT 
sudo nano /etc/crontab -e

добавляем строки 
@reboot /usr/bin/php /var/www/cycle.php

сохраняем, перезапускаем апач
ваш пример для варианта 2
Dark_Veter
Сообщения: 295
Зарегистрирован: Вт апр 23, 2013 5:16 pm
Откуда: Брянск
Благодарил (а): 18 раз
Поблагодарили: 94 раза

Re: Модуль RHVoice

Сообщение Dark_Veter » Вт май 10, 2016 6:25 pm

Хм, тогда пока не могу придумать как перезапустить :) Если только вручную убить все процессы, которые к majordomo относятся, а потом запустить вручную
Debian GNU/Linux 7.9 (wheezy), версия 0.9.0b, Connect
portos
Сообщения: 29
Зарегистрирован: Пт апр 15, 2016 4:04 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Модуль RHVoice

Сообщение portos » Вт май 10, 2016 6:32 pm

Ну допустим если даже из таблице убрать @reboot /usr/bin/php /var/www/cycle.php и стартонуть ручную то проблему это не решит. Но для проверки так и зделаем.
portos
Сообщения: 29
Зарегистрирован: Пт апр 15, 2016 4:04 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Модуль RHVoice

Сообщение portos » Вт май 10, 2016 7:07 pm

Ну да в ручную запускаю /usr/bin/php /var/www/cycle.php по root и все работает через cron нет :(
Пробовать значит вариант 2 будем.
portos
Сообщения: 29
Зарегистрирован: Пт апр 15, 2016 4:04 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Модуль RHVoice

Сообщение portos » Ср май 11, 2016 4:10 pm

Dark_Veter
А как вы запустили Основной цикл Вариант 2 под debian ?
веди Upstart init daemon job configuration вроде как он не дружит с ним ?
Dark_Veter
Сообщения: 295
Зарегистрирован: Вт апр 23, 2013 5:16 pm
Откуда: Брянск
Благодарил (а): 18 раз
Поблагодарили: 94 раза

Re: Модуль RHVoice

Сообщение Dark_Veter » Ср май 11, 2016 4:29 pm

portos писал(а):Dark_Veter
А как вы запустили Основной цикл Вариант 2 под debian ?
веди Upstart init daemon job configuration вроде как он не дружит с ним ?
У себя на debian 7.9 сделал так:
В /etc/inid.d/majordomo

Код: Выделить всё

#!/bin/sh
### BEGIN INIT INFO
# Provides: SamrtLiving
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO

NAME="majordomo"
#PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin"
APPDIR="/media/d5c56356-c68d-4a48-8976-203b9de5448e/smarthome/"
APPBIN="/usr/bin/php"
APPARGS="/media/d5c56356-c68d-4a48-8976-203b9de5448e/smarthome/cycle.php"
USER="www-data"
GROUP="www-data"

# Include functions 
set -e
. /lib/lsb/init-functions

start() {
  printf "Starting '$NAME'... "
  start-stop-daemon --start --chuid "$USER:$GROUP" --background --make-pidfile --pidfile /var/run/$NAME.pid --chdir "$APPDIR" --exec "$APPBIN" -- $APPARGS || true
  printf "done\n"
}

#We need this function to ensure the whole process tree will be killed
killtree() {
    local _pid=$1
    local _sig=${2-TERM}
    for _child in $(ps -o pid --no-headers --ppid ${_pid}); do
        killtree ${_child} ${_sig}
    done
    kill -${_sig} ${_pid}
}

stop() {
  printf "Stopping '$NAME'... "
  [ -z `cat /var/run/$NAME.pid 2>/dev/null` ] || \
  while test -d /proc/$(cat /var/run/$NAME.pid); do
    killtree $(cat /var/run/$NAME.pid) 15
    sleep 0.5
  done 
  [ -z `cat /var/run/$NAME.pid 2>/dev/null` ] || rm /var/run/$NAME.pid
  printf "done\n"
}

status() {
  status_of_proc -p /var/run/$NAME.pid "" $NAME && exit 0 || exit $?
}

case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  restart)
    stop
    start
    ;;
  status)
    status
    ;;
  *)
    echo "Usage: $NAME {start|stop|restart|status}" >&2
    exit 1
    ;;
esac

exit 0
Но насколько я знаю, в debian с версии 8 все делается по другому, поэтому не факт, что так заработает. Где-то тут на форуме видел вариант для systemd (который в debian 8 используется)
Debian GNU/Linux 7.9 (wheezy), версия 0.9.0b, Connect
portos
Сообщения: 29
Зарегистрирован: Пт апр 15, 2016 4:04 pm
Благодарил (а): 1 раз
Поблагодарили: 1 раз

Re: Модуль RHVoice

Сообщение portos » Ср май 11, 2016 5:36 pm

Ага с горем на пару с этим мануалом заработало http://majordomo.smartliving.ru/forum/v ... it=systemd
Но ток после systemctl restart majordomo-cycle.service
Anton_kulibin
Сообщения: 354
Зарегистрирован: Вт окт 09, 2012 8:05 am
Откуда: Луза Кировская обл. Россия
Благодарил (а): 20 раз
Поблагодарили: 34 раза

Re: Модуль RHVoice

Сообщение Anton_kulibin » Чт май 12, 2016 8:55 am

Странно как то с модулем. Поставил его. Не работает. До установки модуля, RHVoice работал из настроек After SAY (code). Решил пересобрать RHVoice. Из консоли работает из МДМ нет. Плюнул, закинул код в "After SAY (code)" и все снова заработало.

Код: Выделить всё

safe_exec('echo "'.$ph.'" | RHVoice -p Elena', 1, $level);  
Не знаю в чем причина, ни Фестиваль, ни RHVoice из модулей не работают.
Linux версия. Ubuntu Server 16.04+2xArduinoMega+Eth_GW_Mysensors_10node+WeatherStation+Xiaomi
CONNECT
Dark_Veter
Сообщения: 295
Зарегистрирован: Вт апр 23, 2013 5:16 pm
Откуда: Брянск
Благодарил (а): 18 раз
Поблагодарили: 94 раза

Re: Модуль RHVoice

Сообщение Dark_Veter » Чт май 12, 2016 10:10 am

Судя по команде у Вас старая версия RHVoice, попробуйте поставить последнюю версию по инструкции в начале темы, или использовать speech dispatcher с вашей версией. Так же наблюдается проблема вызова safe_exec после первого запуска, лечится ручным перезапуском majordomo.
Debian GNU/Linux 7.9 (wheezy), версия 0.9.0b, Connect
Ответить