Страница 3 из 29

Re: Модуль RHVoice

Добавлено: Вт май 10, 2016 6:10 pm
Dark_Veter
Видимо какая-то другая команда должна быть. В debian 8 я еще не разобрался как это делается. А как вы запускаете majordomo? :)

Re: Модуль RHVoice

Добавлено: Вт май 10, 2016 6:23 pm
portos
О как!!!
Ну все понятно я запустил вариант 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

Re: Модуль RHVoice

Добавлено: Вт май 10, 2016 6:25 pm
Dark_Veter
Хм, тогда пока не могу придумать как перезапустить :) Если только вручную убить все процессы, которые к majordomo относятся, а потом запустить вручную

Re: Модуль RHVoice

Добавлено: Вт май 10, 2016 6:32 pm
portos
Ну допустим если даже из таблице убрать @reboot /usr/bin/php /var/www/cycle.php и стартонуть ручную то проблему это не решит. Но для проверки так и зделаем.

Re: Модуль RHVoice

Добавлено: Вт май 10, 2016 7:07 pm
portos
Ну да в ручную запускаю /usr/bin/php /var/www/cycle.php по root и все работает через cron нет :(
Пробовать значит вариант 2 будем.

Re: Модуль RHVoice

Добавлено: Ср май 11, 2016 4:10 pm
portos
Dark_Veter
А как вы запустили Основной цикл Вариант 2 под debian ?
веди Upstart init daemon job configuration вроде как он не дружит с ним ?

Re: Модуль RHVoice

Добавлено: Ср май 11, 2016 4:29 pm
Dark_Veter
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 используется)

Re: Модуль RHVoice

Добавлено: Ср май 11, 2016 5:36 pm
portos
Ага с горем на пару с этим мануалом заработало http://majordomo.smartliving.ru/forum/v ... it=systemd
Но ток после systemctl restart majordomo-cycle.service

Re: Модуль RHVoice

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

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

safe_exec('echo "'.$ph.'" | RHVoice -p Elena', 1, $level);  
Не знаю в чем причина, ни Фестиваль, ни RHVoice из модулей не работают.

Re: Модуль RHVoice

Добавлено: Чт май 12, 2016 10:10 am
Dark_Veter
Судя по команде у Вас старая версия RHVoice, попробуйте поставить последнюю версию по инструкции в начале темы, или использовать speech dispatcher с вашей версией. Так же наблюдается проблема вызова safe_exec после первого запуска, лечится ручным перезапуском majordomo.