В логах majordomo:
_error.log
СпойлерПоказать
15:38:44 0.47348000 Error registered (type: cycle_hang):
cycle_wscache
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_wscache')
#1 {main}
15:38:44 0.40934000 Error registered (type: cycle_hang):
cycle_websockets
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_websocket...')
#1 {main}
15:38:44 0.38080800 Error registered (type: cycle_hang):
cycle_ping
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_ping')
#1 {main}
15:38:44 0.33907900 Error registered (type: cycle_hang):
cycle_execs
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_execs')
#1 {main}
01:03:02 0.66774800 Error registered (type: sql):
2006: MySQL server has gone away
SELECT objects.*
FROM objects
WHERE TITLE = 'ThisComputer'
Backtrace:
#0 /var/www/lib/mysqli.class.php(415): registerError('sql', '2006: MySQL ser...')
#1 /var/www/lib/mysqli.class.php(194): mysql->Error('SELECT objects....', 1)
#2 /var/www/lib/mysqli.class.php(239): mysql->Exec('SELECT objects....')
#3 /var/www/lib/sqlFunctions.class.php(95): mysql->SelectOne('SELECT objects....')
#4 /var/www/lib/objects.class.php(406): SQLSelectOne('SELECT objects....')
#5 /var/www/lib/objects.class.php(929): getObject('ThisComputer')
#6 /var/www/scripts/cycle_webvars.php(29): setGlobal('cycle_webvarsRu...', 1585692182, 1)
#7 {main}
01:03:02 0.16884700 Error registered (type: sql):
2006: MySQL server has gone away
SELECT objects.*
FROM objects
WHERE TITLE = 'ThisComputer'
Backtrace:
#0 /var/www/lib/mysqli.class.php(415): registerError('sql', '2006: MySQL ser...')
#1 /var/www/lib/mysqli.class.php(194): mysql->Error('SELECT objects....', 1)
#2 /var/www/lib/mysqli.class.php(239): mysql->Exec('SELECT objects....')
#3 /var/www/lib/sqlFunctions.class.php(95): mysql->SelectOne('SELECT objects....')
#4 /var/www/lib/objects.class.php(406): SQLSelectOne('SELECT objects....')
#5 /var/www/lib/objects.class.php(929): getObject('ThisComputer')
#6 /var/www/scripts/cycle_ping.php(29): setGlobal('cycle_pingRun', 1585692182, 1)
#7 {main}
cycle_wscache
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_wscache')
#1 {main}
15:38:44 0.40934000 Error registered (type: cycle_hang):
cycle_websockets
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_websocket...')
#1 {main}
15:38:44 0.38080800 Error registered (type: cycle_hang):
cycle_ping
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_ping')
#1 {main}
15:38:44 0.33907900 Error registered (type: cycle_hang):
cycle_execs
Backtrace:
#0 /var/www/cycle.php(385): registerError('cycle_hang', 'cycle_execs')
#1 {main}
01:03:02 0.66774800 Error registered (type: sql):
2006: MySQL server has gone away
SELECT objects.*
FROM objects
WHERE TITLE = 'ThisComputer'
Backtrace:
#0 /var/www/lib/mysqli.class.php(415): registerError('sql', '2006: MySQL ser...')
#1 /var/www/lib/mysqli.class.php(194): mysql->Error('SELECT objects....', 1)
#2 /var/www/lib/mysqli.class.php(239): mysql->Exec('SELECT objects....')
#3 /var/www/lib/sqlFunctions.class.php(95): mysql->SelectOne('SELECT objects....')
#4 /var/www/lib/objects.class.php(406): SQLSelectOne('SELECT objects....')
#5 /var/www/lib/objects.class.php(929): getObject('ThisComputer')
#6 /var/www/scripts/cycle_webvars.php(29): setGlobal('cycle_webvarsRu...', 1585692182, 1)
#7 {main}
01:03:02 0.16884700 Error registered (type: sql):
2006: MySQL server has gone away
SELECT objects.*
FROM objects
WHERE TITLE = 'ThisComputer'
Backtrace:
#0 /var/www/lib/mysqli.class.php(415): registerError('sql', '2006: MySQL ser...')
#1 /var/www/lib/mysqli.class.php(194): mysql->Error('SELECT objects....', 1)
#2 /var/www/lib/mysqli.class.php(239): mysql->Exec('SELECT objects....')
#3 /var/www/lib/sqlFunctions.class.php(95): mysql->SelectOne('SELECT objects....')
#4 /var/www/lib/objects.class.php(406): SQLSelectOne('SELECT objects....')
#5 /var/www/lib/objects.class.php(929): getObject('ThisComputer')
#6 /var/www/scripts/cycle_ping.php(29): setGlobal('cycle_pingRun', 1585692182, 1)
#7 {main}
СпойлерПоказать
22:55:58 0.05728900 Processing SAY: {"level":2,"message":"привет","member_id":0,"ignoreVoice":1,"BREAK":false}
22:00:00 0.33152300 Processing SAY: {"level":1,"message":"22 часа","member_id":0,"BREAK":false}
22:00:00 0.32993600 Processing HOURLY: {"BREAK":false}
21:41:49 0.10716600 Processing SAY: {"level":0,"message":"Статус связи восстановился на Зелёный","member_id":0,"BREAK":false}
21:00:00 0.64320200 Processing HOURLY: {"BREAK":false}
21:00:00 0.63130300 Processing SAY: {"level":1,"message":"21 час","member_id":0,"BREAK":false}
20:31:16 0.49031900 Processing SAY: {"level":0,"message":"Нет доступа в Интернет","member_id":0,"BREAK":false}
20:31:16 0.45762700 Processing SAY: {"level":0,"message":"Статус связи изменился на Жёлтый.","member_id":0,"BREAK":false}
20:00:01 0.13246300 Processing SAY: {"level":0,"message":"Режим Ночной активирован.","member_id":0,"BREAK":false}
20:00:00 0.92230700 Processing SAY: {"level":1,"message":"20 часов","member_id":0,"ignoreVoice":1,"BREAK":false}
20:00:00 0.80804000 Processing HOURLY: {"BREAK":false}
19:45:00 0.33974700 Processing SAY: {"level":2,"message":"Солнце заходит","member_id":0,"ignoreVoice":1,"BREAK":false}
19:35:28 0.51085100 Processing SAY: {"level":2,"message":"19 часов 35 минут","member_id":0,"ignoreVoice":1,"BREAK":false}
19:34:42 0.68222400 Processing SAY: {"level":2,"message":"19 часов 34 минуты","member_id":0,"ignoreVoice":1,"BREAK":false}
19:20:38 0.21366400 Processing SAY: {"level":0,"message":"Статус связи восстановился на Зелёный","member_id":0,"BREAK":false}
19:11:38 0.51622500 Processing SAY: {"level":0,"message":"19 часов 11 минут","member_id":0,"BREAK":false}
19:11:23 0.07216000 Processing SAY: {"level":30,"message":"19 часов 11 минут","member_id":0,"ignoreVoice":1,"BREAK":false}
19:11:23 0.06629800 Processing SAY_CACHED_READY: {"level":30,"tts_engine":"rhvoice","message":"19 часов 11 минут","filename":"\/var\/www\/cms\/cached\/voice\/rh_9df6e9c9ab5e25ecc461a6ca7afe5902.wav","destination":null,"event":"SAY"}
Сам разобрался) решение выложу тут вдруг у кого то будет такая же проблема будет.
Проблема была в юзере от которого запускались цыклы. Почему то от пользователя www-data небыло ни Динь-Дон ни голоса, хотя если проверять звук по отдельности (голос и воспроизведение динь-дон) в терминале Linux от этого пользователя, то звук был.
И так, что я делал:
1) убил все циклы majordomo, проверяем:
Код: Выделить всё
ps axu |grep cycle
так был только Динь-дон:
Код: Выделить всё
sudo -u root php /var/www/cycle.php
так Динь-дон и голос алисы:
Код: Выделить всё
sudo -u alice php /var/www/cycle.php
а так ничего:
Код: Выделить всё
sudo -u www-data php /var/www/cycle.php
создать скрипт запуска циклов в /usr/sbin/
Код: Выделить всё
sudo nano usr/sbin/majordomo
Код: Выделить всё
#!/bin/sh
### BEGIN INIT INFO
# Provides: SmartLiving
# 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
sleep 10
dir="/var/www"
user="alice"
cmd="php /var/www/cycle.php"
name=`basename $0`
pid_file="/var/run/$name.pid"
stdout_log="/var/log/$name.log"
stderr_log="/var/log/$name.err"
get_pid() {
cat "$pid_file"
}
is_running() {
[ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
}
case "$1" in
start)
if is_running; then
echo "Already started"
else
echo "Starting $name"
cd "$dir"
(while true; do
sudo -u "$user" $cmd
done)>> "$stdout_log" 2>> "$stderr_log" &
echo $! > "$pid_file"
if ! is_running; then
echo "Unable to start, see $stdout_log and $stderr_log"
exit 1
fi
fi
;;
stop)
if is_running; then
echo -n "Stopping $name.."
kill `get_pid`
sudo killall php
for i in {1..10}
do
if ! is_running; then
break
fi
echo -n "."
sleep 1
done
echo
if is_running; then
echo "Not stopped; may still be shutting down or shutdown may have failed"
exit 1
else
echo "Stopped"
if [ -f "$pid_file" ]; then
rm "$pid_file"
fi
fi
else
echo "Not running"
sudo killall php
fi
;;
restart)
$0 stop
if is_running; then
echo "Unable to stop, will not attempt to start"
exit 1
fi
$0 start
;;
status)
if is_running; then
echo "Running"
else
echo "Stopped"
exit 1
fi
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
настраиваем права на /usr/sbin/majordomo
Код: Выделить всё
chown root:root /usr/sbin/majordomo
chmod 755 /usr/sbin/majordomo
открываем
Код: Выделить всё
sudo nano /etc/sudoers
Код: Выделить всё
alice ALL=(ALL) NOPASSWD: /usr/sbin/majordomo
Код: Выделить всё
ln /usr/sbin/majordomo /etc/init.d/
Код: Выделить всё
sudo update-rc.d majordomo defaults
sudo /etc/init.d/majordomo start