Merge branch '2.3.x' of dev.sourcefabric.org:airtime into 2.3.x
This commit is contained in:
commit
254dbafd1b
|
@ -17,15 +17,12 @@ require_once "Timezone.php";
|
||||||
require_once __DIR__.'/forms/helpers/ValidationTypes.php';
|
require_once __DIR__.'/forms/helpers/ValidationTypes.php';
|
||||||
require_once __DIR__.'/controllers/plugins/RabbitMqPlugin.php';
|
require_once __DIR__.'/controllers/plugins/RabbitMqPlugin.php';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
date_default_timezone_set('UTC');
|
date_default_timezone_set('UTC');
|
||||||
require_once (APPLICATION_PATH."/logging/Logging.php");
|
require_once (APPLICATION_PATH."/logging/Logging.php");
|
||||||
Logging::setLogPath('/var/log/airtime/zendphp.log');
|
Logging::setLogPath('/var/log/airtime/zendphp.log');
|
||||||
date_default_timezone_set(Application_Model_Preference::GetTimezone());
|
date_default_timezone_set(Application_Model_Preference::GetTimezone());
|
||||||
|
|
||||||
Config::setAirtimeVersion();
|
Config::setAirtimeVersion();
|
||||||
$CC_CONFIG = Config::getConfig();
|
|
||||||
require_once __DIR__."/configs/navigation.php";
|
require_once __DIR__."/configs/navigation.php";
|
||||||
|
|
||||||
Zend_Validate::setDefaultNamespaces("Zend");
|
Zend_Validate::setDefaultNamespaces("Zend");
|
||||||
|
|
|
@ -48,13 +48,7 @@ class UserController extends Zend_Controller_Action
|
||||||
|
|
||||||
if ($form->isValid($formData)) {
|
if ($form->isValid($formData)) {
|
||||||
|
|
||||||
if (isset($CC_CONFIG['demo']) && $CC_CONFIG['demo'] == 1
|
if ($form->validateLogin($formData)) {
|
||||||
&& $formData['login'] == 'admin'
|
|
||||||
&& $formData['user_id'] != 0) {
|
|
||||||
$this->view->form = $form;
|
|
||||||
$this->view->successMessage = "<div class='errors'>"._("Specific action is not allowed in demo version!")."</div>";
|
|
||||||
die(json_encode(array("valid"=>"false", "html"=>$this->view->render('user/add-user.phtml'))));
|
|
||||||
} elseif ($form->validateLogin($formData)) {
|
|
||||||
$user = new Application_Model_User($formData['user_id']);
|
$user = new Application_Model_User($formData['user_id']);
|
||||||
if (empty($formData['user_id'])) {
|
if (empty($formData['user_id'])) {
|
||||||
$user->setLogin($formData['login']);
|
$user->setLogin($formData['login']);
|
||||||
|
@ -131,12 +125,7 @@ class UserController extends Zend_Controller_Action
|
||||||
if ($request->isPost()) {
|
if ($request->isPost()) {
|
||||||
$formData = $request->getPost();
|
$formData = $request->getPost();
|
||||||
|
|
||||||
if (isset($CC_CONFIG['demo']) && $CC_CONFIG['demo'] == 1
|
if ($form->isValid($formData) &&
|
||||||
&& $formData['cu_login'] == 'admin') {
|
|
||||||
$this->view->form = $form;
|
|
||||||
$this->view->successMessage = "<div class='errors'>"._("Specific action is not allowed in demo version!")."</div>";
|
|
||||||
die(json_encode(array("html"=>$this->view->render('user/edit-user.phtml'))));
|
|
||||||
} else if ($form->isValid($formData) &&
|
|
||||||
$form->validateLogin($formData['cu_login'], $formData['cu_user_id'])) {
|
$form->validateLogin($formData['cu_login'], $formData['cu_user_id'])) {
|
||||||
$user = new Application_Model_User($formData['cu_user_id']);
|
$user = new Application_Model_User($formData['cu_user_id']);
|
||||||
$user->setFirstName($formData['cu_first_name']);
|
$user->setFirstName($formData['cu_first_name']);
|
||||||
|
|
|
@ -7,6 +7,7 @@ from os.path import normpath
|
||||||
import json
|
import json
|
||||||
import os
|
import os
|
||||||
import copy
|
import copy
|
||||||
|
import time
|
||||||
|
|
||||||
from media.monitor.exceptions import BadSongFile, InvalidMetadataElement
|
from media.monitor.exceptions import BadSongFile, InvalidMetadataElement
|
||||||
from media.monitor.metadata import Metadata
|
from media.monitor.metadata import Metadata
|
||||||
|
|
|
@ -12,8 +12,6 @@ ls_param="/usr/lib/airtime/pypo/bin/liquidsoap_scripts/ls_script.liq"
|
||||||
exec 2>&1
|
exec 2>&1
|
||||||
export PYTHONPATH=${api_client_path}
|
export PYTHONPATH=${api_client_path}
|
||||||
|
|
||||||
rm -f /etc/airtime/liquidsoap.cfg
|
|
||||||
|
|
||||||
cd /usr/lib/airtime/pypo/bin/liquidsoap_scripts
|
cd /usr/lib/airtime/pypo/bin/liquidsoap_scripts
|
||||||
python generate_liquidsoap_cfg.py
|
python generate_liquidsoap_cfg.py
|
||||||
|
|
||||||
|
|
|
@ -24,21 +24,25 @@ start () {
|
||||||
stop () {
|
stop () {
|
||||||
monit unmonitor airtime-liquidsoap >/dev/null 2>&1
|
monit unmonitor airtime-liquidsoap >/dev/null 2>&1
|
||||||
#send term signal after 10 seconds
|
#send term signal after 10 seconds
|
||||||
timeout 10 /usr/lib/airtime/airtime_virtualenv/bin/python /usr/lib/airtime/pypo/bin/liquidsoap_scripts/liquidsoap_prepare_terminate.py
|
timeout -k 5 10 /usr/lib/airtime/airtime_virtualenv/bin/python \
|
||||||
|
/usr/lib/airtime/pypo/bin/liquidsoap_scripts/liquidsoap_prepare_terminate.py
|
||||||
# Send TERM after 5 seconds, wait at most 30 seconds.
|
# Send TERM after 5 seconds, wait at most 30 seconds.
|
||||||
start-stop-daemon --stop --oknodo --retry=TERM/10/KILL/5 --quiet --pidfile $PIDFILE
|
start-stop-daemon --stop --oknodo --retry=TERM/10/KILL/5 --quiet --pidfile $PIDFILE
|
||||||
rm -f $PIDFILE
|
rm -f $PIDFILE
|
||||||
|
sleep 3
|
||||||
}
|
}
|
||||||
|
|
||||||
start_no_monit() {
|
start_no_monit() {
|
||||||
chown pypo:pypo /var/log/airtime/pypo
|
chown pypo:pypo /var/log/airtime/pypo
|
||||||
chown pypo:pypo /var/log/airtime/pypo-liquidsoap
|
chown pypo:pypo /var/log/airtime/pypo-liquidsoap
|
||||||
|
chown pypo:pypo /etc/airtime/liquidsoap.cfg
|
||||||
|
|
||||||
touch /var/run/airtime-liquidsoap.pid
|
rm -f $PIDFILE
|
||||||
chown pypo:pypo /var/run/airtime-liquidsoap.pid
|
touch $PIDFILE
|
||||||
|
chown pypo:pypo $PIDFILE
|
||||||
|
|
||||||
start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \
|
start-stop-daemon --start --quiet --chuid $USERID:$GROUPID \
|
||||||
--pidfile /var/run/airtime-liquidsoap.pid --nicelevel -15 --startas $DAEMON
|
--pidfile $PIDFILE --nicelevel -15 --startas $DAEMON
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -62,8 +66,8 @@ case "${1:-''}" in
|
||||||
;;
|
;;
|
||||||
|
|
||||||
'status')
|
'status')
|
||||||
if [ -f "/var/run/airtime-liquidsoap.pid" ]; then
|
if [ -f "$PIDFILE" ]; then
|
||||||
pid=`cat /var/run/airtime-liquidsoap.pid`
|
pid=`cat $PIDFILE`
|
||||||
if [ -d "/proc/$pid" ]; then
|
if [ -d "/proc/$pid" ]; then
|
||||||
echo "Liquidsoap is running"
|
echo "Liquidsoap is running"
|
||||||
exit 0
|
exit 0
|
||||||
|
|
|
@ -41,13 +41,17 @@ class SilanAnalyzer(Thread):
|
||||||
full_path = f['fp']
|
full_path = f['fp']
|
||||||
# silence detect(set default queue in and out)
|
# silence detect(set default queue in and out)
|
||||||
try:
|
try:
|
||||||
command = ['nice', '-n', '19', 'silan', '-b', '-f', 'JSON', full_path]
|
|
||||||
proc = subprocess.Popen(command, stdout=subprocess.PIPE)
|
|
||||||
out = proc.communicate()[0].strip('\r\n')
|
|
||||||
info = json.loads(out)
|
|
||||||
data = {}
|
data = {}
|
||||||
data['cuein'] = str('{0:f}'.format(info['sound'][0][0]))
|
command = ['nice', '-n', '19', 'silan', '-b', '-f', 'JSON', full_path]
|
||||||
data['cueout'] = str('{0:f}'.format(info['sound'][-1][1]))
|
try:
|
||||||
|
proc = subprocess.Popen(command, stdout=subprocess.PIPE)
|
||||||
|
out = proc.communicate()[0].strip('\r\n')
|
||||||
|
info = json.loads(out)
|
||||||
|
data['cuein'] = str('{0:f}'.format(info['sound'][0][0]))
|
||||||
|
data['cueout'] = str('{0:f}'.format(info['sound'][-1][1]))
|
||||||
|
except Exception, e:
|
||||||
|
self.logger.error(str(command))
|
||||||
|
self.logger.error(e)
|
||||||
processed_data.append((f['id'], data))
|
processed_data.append((f['id'], data))
|
||||||
total += 1
|
total += 1
|
||||||
if total % 5 == 0:
|
if total % 5 == 0:
|
||||||
|
|
Loading…
Reference in New Issue