Merge branch '2.1.x' into devel
This commit is contained in:
commit
f029124447
7
CREDITS
7
CREDITS
|
@ -1,3 +1,10 @@
|
||||||
|
=======
|
||||||
|
CREDITS
|
||||||
|
=======
|
||||||
|
Version 2.1.2
|
||||||
|
-------------
|
||||||
|
Same as previous version.
|
||||||
|
|
||||||
=======
|
=======
|
||||||
CREDITS
|
CREDITS
|
||||||
=======
|
=======
|
||||||
|
|
2
VERSION
2
VERSION
|
@ -1,2 +1,2 @@
|
||||||
PRODUCT_ID=Airtime
|
PRODUCT_ID=Airtime
|
||||||
PRODUCT_RELEASE=2.1.1
|
PRODUCT_RELEASE=2.1.2
|
||||||
|
|
|
@ -20,58 +20,77 @@ class Application_Model_LiveLog
|
||||||
if ($rows != null) {
|
if ($rows != null) {
|
||||||
$last_row = self::UpdateLastLogEndTime(array_pop($rows));
|
$last_row = self::UpdateLastLogEndTime(array_pop($rows));
|
||||||
array_push($rows, $last_row);
|
array_push($rows, $last_row);
|
||||||
|
$skip = false;
|
||||||
|
} else {
|
||||||
|
$sql = "SELECT * FROM CC_LIVE_LOG"
|
||||||
|
." WHERE state = 'L'"
|
||||||
|
." ORDER BY id";
|
||||||
|
$rows = $con->query($sql)->fetchAll();
|
||||||
|
|
||||||
|
if ($rows != null) {
|
||||||
|
$last_row = self::UpdateLastLogEndTime(array_pop($rows));
|
||||||
|
array_push($rows, $last_row);
|
||||||
|
foreach ($rows as $row) {
|
||||||
|
$sql_delete = "DELETE FROM CC_LIVE_LOG"
|
||||||
|
." WHERE id = '{$row['id']}'";
|
||||||
|
$con->exec($sql_delete);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$skip = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
$hours = 0;
|
$hours = 0;
|
||||||
$minutes = 0;
|
$minutes = 0;
|
||||||
$seconds = 0;
|
$seconds = 0;
|
||||||
|
|
||||||
foreach ($rows as $row) {
|
if (!$skip) {
|
||||||
$end = new DateTime($row['end_time']);
|
foreach ($rows as $row) {
|
||||||
$start = new DateTime($row['start_time']);
|
$end = new DateTime($row['end_time']);
|
||||||
$duration = $start->diff($end);
|
$start = new DateTime($row['start_time']);
|
||||||
$duration = $duration->format("%H:%i:%s");
|
$duration = $start->diff($end);
|
||||||
$intervals = explode(":", $duration);
|
$duration = $duration->format("%H:%i:%s");
|
||||||
for ($i = 0; $i < sizeof($intervals); $i++) {
|
$intervals = explode(":", $duration);
|
||||||
if (!isset($intervals[$i])) {
|
for ($i = 0; $i < sizeof($intervals); $i++) {
|
||||||
$intervals[$i] = 0;
|
if (!isset($intervals[$i])) {
|
||||||
|
$intervals[$i] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Trim milliseconds (DateInterval does not support)
|
||||||
|
$sec = explode(".", $intervals[2]);
|
||||||
|
if (isset($sec[0])) {
|
||||||
|
$intervals[2] = $sec[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
$seconds += $intervals[2];
|
||||||
|
if ($seconds / 60 >= 1) {
|
||||||
|
$minutes += 1;
|
||||||
|
$seconds -= 60;
|
||||||
|
}
|
||||||
|
|
||||||
|
$minutes += $intervals[1];
|
||||||
|
if ($minutes / 60 >= 1) {
|
||||||
|
$hours += 1;
|
||||||
|
$minutes -= 60;
|
||||||
|
}
|
||||||
|
|
||||||
|
$hours += $intervals[0];
|
||||||
|
|
||||||
|
if (!$p_keepData) {
|
||||||
|
// Delete data we just used to start a new log history
|
||||||
|
$sql_delete = "DELETE FROM CC_LIVE_LOG"
|
||||||
|
." WHERE id = '{$row['id']}'";
|
||||||
|
$con->exec($sql_delete);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//Trim milliseconds
|
||||||
// Trim milliseconds (DateInterval does not support)
|
$seconds = explode(".", $seconds);
|
||||||
$sec = explode(".", $intervals[2]);
|
if (isset($seconds[0])) {
|
||||||
if (isset($sec[0])) {
|
$minutes = (double)(($hours*60)+$minutes . "." . $seconds[0]);
|
||||||
$intervals[2] = $sec[0];
|
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
$seconds += $intervals[2];
|
$minutes = (double)(($hours*60)+$minutes);
|
||||||
if ($seconds / 60 >= 1) {
|
|
||||||
$minutes += 1;
|
|
||||||
$seconds -= 60;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
$minutes += $intervals[1];
|
|
||||||
if ($minutes / 60 >= 1) {
|
|
||||||
$hours += 1;
|
|
||||||
$minutes -= 60;
|
|
||||||
}
|
|
||||||
|
|
||||||
$hours += $intervals[0];
|
|
||||||
|
|
||||||
if (!$p_keepData) {
|
|
||||||
// Delete data we just used to start a new log history
|
|
||||||
$sql_delete = "DELETE FROM CC_LIVE_LOG"
|
|
||||||
." WHERE id = '{$row['id']}'";
|
|
||||||
$con->exec($sql_delete);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//Trim milliseconds
|
|
||||||
$seconds = explode(".", $seconds);
|
|
||||||
if (isset($seconds[0])) {
|
|
||||||
$minutes = (double)(($hours*60)+$minutes . "." . $seconds[0]);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$minutes = (double)(($hours*60)+$minutes);
|
|
||||||
}
|
}
|
||||||
return $minutes;
|
return $minutes;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
|
@ -99,121 +118,141 @@ class Application_Model_LiveLog
|
||||||
if ($rows != null) {
|
if ($rows != null) {
|
||||||
$last_row = self::UpdateLastLogEndTime(array_pop($rows));
|
$last_row = self::UpdateLastLogEndTime(array_pop($rows));
|
||||||
array_push($rows, $last_row);
|
array_push($rows, $last_row);
|
||||||
|
$skip = false;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$sql = "SELECT * FROM CC_LIVE_LOG"
|
||||||
|
." WHERE state = 'S'"
|
||||||
|
." ORDER BY id";
|
||||||
|
$rows = $con->query($sql)->fetchAll();
|
||||||
|
|
||||||
|
if ($rows != null) {
|
||||||
|
$last_row = self::UpdateLastLogEndTime(array_pop($rows));
|
||||||
|
array_push($rows, $last_row);
|
||||||
|
foreach ($rows as $row) {
|
||||||
|
$sql_delete = "DELETE FROM CC_LIVE_LOG"
|
||||||
|
." WHERE id = '{$row['id']}'";
|
||||||
|
$con->exec($sql_delete);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$skip = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
$hours = 0;
|
$hours = 0;
|
||||||
$minutes = 0;
|
$minutes = 0;
|
||||||
$seconds = 0;
|
$seconds = 0;
|
||||||
|
|
||||||
/* Get all shows and tracks from cc_schedule that played
|
if (!$skip) {
|
||||||
* during a scheduled state
|
/* Get all shows and tracks from cc_schedule that played
|
||||||
*/
|
* during a scheduled state
|
||||||
foreach ($rows as $row) {
|
*/
|
||||||
$sql_get_tracks = "SELECT * FROM cc_schedule"
|
foreach ($rows as $row) {
|
||||||
." WHERE starts >= '{$row['start_time']}'"
|
$sql_get_tracks = "SELECT * FROM cc_schedule"
|
||||||
." AND starts < '{$row['end_time']}'"
|
." WHERE starts >= '{$row['start_time']}'"
|
||||||
." AND file_id IS NOT NULL"
|
." AND starts < '{$row['end_time']}'"
|
||||||
." AND media_item_played IS TRUE";
|
." AND file_id IS NOT NULL"
|
||||||
$tracks = $con->query($sql_get_tracks)->fetchAll();
|
." AND media_item_played IS TRUE";
|
||||||
foreach ($tracks as $track) {
|
$tracks = $con->query($sql_get_tracks)->fetchAll();
|
||||||
if ($track['ends'] > $row['end_time']) {
|
foreach ($tracks as $track) {
|
||||||
$scheduled_ends = new DateTime($row['end_time']);
|
if ($track['ends'] > $row['end_time']) {
|
||||||
$track_ends = new DateTime($track['ends']);
|
$scheduled_ends = new DateTime($row['end_time']);
|
||||||
$extra_time = $scheduled_ends->diff($track_ends);
|
$track_ends = new DateTime($track['ends']);
|
||||||
|
$extra_time = $scheduled_ends->diff($track_ends);
|
||||||
|
|
||||||
/* Get difference between clip_length
|
/* Get difference between clip_length
|
||||||
* and the extra time. We need to subtract
|
* and the extra time. We need to subtract
|
||||||
* this difference from the track's
|
* this difference from the track's
|
||||||
* clip length.
|
* clip length.
|
||||||
*/
|
*/
|
||||||
$clip_length = $track['clip_length'];
|
$clip_length = $track['clip_length'];
|
||||||
//Convert clip_length into seconds
|
//Convert clip_length into seconds
|
||||||
$clip_length_intervals = explode(":", $clip_length);
|
$clip_length_intervals = explode(":", $clip_length);
|
||||||
for ($i = 0; $i < sizeof($clip_length_intervals); $i++) {
|
for ($i = 0; $i < sizeof($clip_length_intervals); $i++) {
|
||||||
if (!isset($clip_length_intervals[$i])) {
|
if (!isset($clip_length_intervals[$i])) {
|
||||||
$clip_length_intervals[$i] = 0;
|
$clip_length_intervals[$i] = 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
$clip_length_seconds = $clip_length_intervals[0]*3600 + $clip_length_intervals[1]*60 + $clip_length_intervals[2];
|
||||||
$clip_length_seconds = $clip_length_intervals[0]*3600 + $clip_length_intervals[1]*60 + $clip_length_intervals[2];
|
|
||||||
|
$extra_time = $extra_time->format("%H:%i:%s");
|
||||||
$extra_time = $extra_time->format("%H:%i:%s");
|
//Convert extra_time into seconds;
|
||||||
//Convert extra_time into seconds;
|
$extra_time_intervals = explode(":", $extra_time);
|
||||||
$extra_time_intervals = explode(":", $extra_time);
|
for ($i = 0; $i < sizeof($extra_time_intervals); $i++) {
|
||||||
for ($i = 0; $i < sizeof($extra_time_intervals); $i++) {
|
if (!isset($extra_time_intervals[$i])) {
|
||||||
if (!isset($extra_time_intervals[$i])) {
|
$extra_time_intervals[$i] = 0;
|
||||||
$extra_time_intervals[$i] = 0;
|
}
|
||||||
}
|
}
|
||||||
}
|
$extra_time_seconds = $extra_time_intervals[0]*3600 + $extra_time_intervals[1]*60 + $extra_time_intervals[2];
|
||||||
$extra_time_seconds = $extra_time_intervals[0]*3600 + $extra_time_intervals[1]*60 + $extra_time_intervals[2];
|
|
||||||
|
|
||||||
$clip_length_seconds -= $extra_time_seconds;
|
$clip_length_seconds -= $extra_time_seconds;
|
||||||
|
|
||||||
//Convert new clip_length into "H-i-s" format
|
//Convert new clip_length into "H-i-s" format
|
||||||
$clip_length_arr = array();
|
$clip_length_arr = array();
|
||||||
if ($clip_length_seconds / 3600 >= 1) {
|
if ($clip_length_seconds / 3600 >= 1) {
|
||||||
array_push($clip_length_arr, str_pad(floor($clip_length_seconds / 3600), 2, "0", STR_PAD_LEFT));
|
array_push($clip_length_arr, str_pad(floor($clip_length_seconds / 3600), 2, "0", STR_PAD_LEFT));
|
||||||
$clip_length_seconds -= floor($clip_length_seconds / 3600);
|
$clip_length_seconds -= floor($clip_length_seconds / 3600);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
array_push($clip_length_arr, "00");
|
||||||
|
}
|
||||||
|
if ($clip_length_seconds / 60 >= 1) {
|
||||||
|
array_push($clip_length_arr, str_pad(floor($clip_length_seconds / 60), 2, "0", STR_PAD_LEFT));
|
||||||
|
$clip_length_seconds -= floor($clip_length_seconds / 60);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
array_push($clip_length_arr, "00");
|
||||||
|
}
|
||||||
|
|
||||||
|
array_push($clip_length_arr, str_pad($clip_length_seconds, 2, "0", STR_PAD_LEFT));
|
||||||
|
$clip_length = implode(":", $clip_length_arr);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
array_push($clip_length_arr, "00");
|
$clip_length = $track['clip_length'];
|
||||||
}
|
|
||||||
if ($clip_length_seconds / 60 >= 1) {
|
|
||||||
array_push($clip_length_arr, str_pad(floor($clip_length_seconds / 60), 2, "0", STR_PAD_LEFT));
|
|
||||||
$clip_length_seconds -= floor($clip_length_seconds / 60);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
array_push($clip_length_arr, "00");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
array_push($clip_length_arr, str_pad($clip_length_seconds, 2, "0", STR_PAD_LEFT));
|
$intervals = explode(":", $clip_length);
|
||||||
$clip_length = implode(":", $clip_length_arr);
|
for ($i = 0; $i < sizeof($intervals); $i++) {
|
||||||
}
|
if (!isset($intervals[$i])) {
|
||||||
else {
|
$intervals[$i] = 0;
|
||||||
$clip_length = $track['clip_length'];
|
}
|
||||||
}
|
|
||||||
|
|
||||||
$intervals = explode(":", $clip_length);
|
|
||||||
for ($i = 0; $i < sizeof($intervals); $i++) {
|
|
||||||
if (!isset($intervals[$i])) {
|
|
||||||
$intervals[$i] = 0;
|
|
||||||
}
|
}
|
||||||
}
|
// Trim milliseconds (DateInteral does not support)
|
||||||
// Trim milliseconds (DateInteral does not support)
|
$sec = explode(".", $intervals[2]);
|
||||||
$sec = explode(".", $intervals[2]);
|
if (isset($sec[0])) {
|
||||||
if (isset($sec[0])) {
|
$intervals[2] = $sec[0];
|
||||||
$intervals[2] = $sec[0];
|
}
|
||||||
|
|
||||||
|
$seconds += $intervals[2];
|
||||||
|
if ($seconds / 60 >= 1) {
|
||||||
|
$minutes += 1;
|
||||||
|
$seconds -= 60;
|
||||||
|
}
|
||||||
|
|
||||||
|
$minutes += $intervals[1];
|
||||||
|
if ($minutes / 60 >= 1) {
|
||||||
|
$hours += 1;
|
||||||
|
$minutes -= 60;
|
||||||
|
}
|
||||||
|
|
||||||
|
$hours += $intervals[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
$seconds += $intervals[2];
|
if (!$p_keepData) {
|
||||||
if ($seconds / 60 >= 1) {
|
//Delete row because we do not need data anymore
|
||||||
$minutes += 1;
|
$sql_delete = "DELETE FROM CC_LIVE_LOG"
|
||||||
$seconds -= 60;
|
." WHERE id = '{$row['id']}'";
|
||||||
|
$con->exec($sql_delete);
|
||||||
}
|
}
|
||||||
|
|
||||||
$minutes += $intervals[1];
|
|
||||||
if ($minutes / 60 >= 1) {
|
|
||||||
$hours += 1;
|
|
||||||
$minutes -= 60;
|
|
||||||
}
|
|
||||||
|
|
||||||
$hours += $intervals[0];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$p_keepData) {
|
|
||||||
//Delete row because we do not need data anymore
|
$seconds = explode(".", $seconds);
|
||||||
$sql_delete = "DELETE FROM CC_LIVE_LOG"
|
if (isset($seconds[0])) {
|
||||||
." WHERE id = '{$row['id']}'";
|
$minutes = (double)(($hours*60)+$minutes . "." . $seconds[0]);
|
||||||
$con->exec($sql_delete);
|
}
|
||||||
|
else {
|
||||||
|
$minutes = (double)(($hours*60)+$minutes);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
$seconds = explode(".", $seconds);
|
|
||||||
if (isset($seconds[0])) {
|
|
||||||
$minutes = (double)(($hours*60)+$minutes . "." . $seconds[0]);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$minutes = (double)(($hours*60)+$minutes);
|
|
||||||
}
|
}
|
||||||
return $minutes;
|
return $minutes;
|
||||||
} catch (Exception $e) {
|
} catch (Exception $e) {
|
||||||
|
|
|
@ -889,7 +889,7 @@ Logging::log("getting media! - 2");
|
||||||
$command = sprintf("/usr/bin/airtime-liquidsoap -c 'output.dummy(audio_to_stereo(single(\"%s\")))' 2>&1", $audio_file);
|
$command = sprintf("/usr/bin/airtime-liquidsoap -c 'output.dummy(audio_to_stereo(single(\"%s\")))' 2>&1", $audio_file);
|
||||||
|
|
||||||
exec($command, $output, $rv);
|
exec($command, $output, $rv);
|
||||||
if ($rv != 0 || count($output) != 0) {
|
if ($rv != 0 || $output[0] == 'TagLib: MPEG::Properties::read() -- Could not find a valid last MPEG frame in the stream.') {
|
||||||
$result = array("code" => 110, "message" => "This file appears to be corrupted and will not be added to media library.");
|
$result = array("code" => 110, "message" => "This file appears to be corrupted and will not be added to media library.");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
|
2.1.2 - June 18th, 2012
|
||||||
|
* Bug Fixes
|
||||||
|
* Fixed problem where playout engine may not retrieve program schedule after extended periods of user inactivity.
|
||||||
|
|
||||||
2.1.1 - June 12th, 2012
|
2.1.1 - June 12th, 2012
|
||||||
* Changes
|
* Changes
|
||||||
* Add Media page will now display error message and reject uploaded file if it is corrupt
|
* Add Media page will now display error message and reject uploaded file if it is corrupt
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
<?php
|
<?php
|
||||||
|
|
||||||
define('AIRTIME_VERSION', '2.1.1');
|
define('AIRTIME_VERSION', '2.1.2');
|
||||||
|
|
|
@ -108,5 +108,9 @@ if (strcmp($version, "2.1.1") < 0){
|
||||||
passthru("php --php-ini $SCRIPTPATH/../airtime-php.ini $SCRIPTPATH/../upgrades/airtime-2.1.1/airtime-upgrade.php");
|
passthru("php --php-ini $SCRIPTPATH/../airtime-php.ini $SCRIPTPATH/../upgrades/airtime-2.1.1/airtime-upgrade.php");
|
||||||
pause();
|
pause();
|
||||||
}
|
}
|
||||||
|
if (strcmp($version, "2.1.2") < 0){
|
||||||
|
passthru("php --php-ini $SCRIPTPATH/../airtime-php.ini $SCRIPTPATH/../upgrades/airtime-2.1.2/airtime-upgrade.php");
|
||||||
|
pause();
|
||||||
|
}
|
||||||
|
|
||||||
echo "******************************* Upgrade Complete *******************************".PHP_EOL;
|
echo "******************************* Upgrade Complete *******************************".PHP_EOL;
|
||||||
|
|
|
@ -7,11 +7,11 @@ class AirtimeDatabaseUpgrade{
|
||||||
|
|
||||||
public static function start($p_dbValues){
|
public static function start($p_dbValues){
|
||||||
echo "* Updating Database".PHP_EOL;
|
echo "* Updating Database".PHP_EOL;
|
||||||
self::task0($p_dbValues);
|
self::runUpgradeScript($p_dbValues);
|
||||||
echo " * Complete".PHP_EOL;
|
echo " * Complete".PHP_EOL;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static function task0($p_dbValues){
|
private static function runUpgradeScript($p_dbValues){
|
||||||
|
|
||||||
$username = $p_dbValues['database']['dbuser'];
|
$username = $p_dbValues['database']['dbuser'];
|
||||||
$password = $p_dbValues['database']['dbpass'];
|
$password = $p_dbValues['database']['dbpass'];
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
/* All functions other than start() should be marked as
|
||||||
|
* private.
|
||||||
|
*/
|
||||||
|
class AirtimeDatabaseUpgrade{
|
||||||
|
|
||||||
|
public static function start($p_dbValues){
|
||||||
|
echo "* Updating Database".PHP_EOL;
|
||||||
|
self::task0($p_dbValues);
|
||||||
|
echo " * Complete".PHP_EOL;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function task0($p_dbValues){
|
||||||
|
|
||||||
|
$username = $p_dbValues['database']['dbuser'];
|
||||||
|
$password = $p_dbValues['database']['dbpass'];
|
||||||
|
$host = $p_dbValues['database']['host'];
|
||||||
|
$database = $p_dbValues['database']['dbname'];
|
||||||
|
$dir = __DIR__;
|
||||||
|
|
||||||
|
passthru("export PGPASSWORD=$password && psql -h $host -U $username -q -f $dir/data/upgrade.sql $database 2>&1 | grep -v \"will create implicit index\"");
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
require_once 'DbUpgrade.php';
|
||||||
|
|
||||||
|
$filename = "/etc/airtime/airtime.conf";
|
||||||
|
$values = parse_ini_file($filename, true);
|
||||||
|
|
||||||
|
AirtimeDatabaseUpgrade::start($values);
|
|
@ -0,0 +1,2 @@
|
||||||
|
DELETE FROM cc_pref WHERE keystr = 'system_version';
|
||||||
|
INSERT INTO cc_pref (keystr, valstr) VALUES ('system_version', '2.1.2');
|
|
@ -20,7 +20,7 @@ from configobj import ConfigObj
|
||||||
import string
|
import string
|
||||||
import hashlib
|
import hashlib
|
||||||
|
|
||||||
AIRTIME_VERSION = "2.1.1"
|
AIRTIME_VERSION = "2.1.2"
|
||||||
|
|
||||||
def api_client_factory(config, logger=None):
|
def api_client_factory(config, logger=None):
|
||||||
if logger != None:
|
if logger != None:
|
||||||
|
|
|
@ -404,7 +404,7 @@ class PypoFetch(Thread):
|
||||||
- runs the cleanup routine, to get rid of unused cached files
|
- runs the cleanup routine, to get rid of unused cached files
|
||||||
"""
|
"""
|
||||||
def process_schedule(self, schedule_data):
|
def process_schedule(self, schedule_data):
|
||||||
self.last_update_schedule_timestamp = time.time()
|
self.last_update_schedule_timestamp = time.time()
|
||||||
self.logger.debug(schedule_data)
|
self.logger.debug(schedule_data)
|
||||||
media = schedule_data["media"]
|
media = schedule_data["media"]
|
||||||
media_filtered = {}
|
media_filtered = {}
|
||||||
|
|
Loading…
Reference in New Issue