CC-1894: Warn users about time zone differences or clock drift problems on the server

-An error msg now appears in pypo log when pypo and server timezones do not match
This commit is contained in:
martin 2011-03-23 13:43:11 -04:00
parent c4b632e8ad
commit d982419b16
2 changed files with 14 additions and 2 deletions

View File

@ -716,6 +716,7 @@ class Schedule {
$result['stream_metadata'] = array();
$result['stream_metadata']['format'] = Application_Model_Preference::GetStreamLabelFormat();
$result['stream_metadata']['station_name'] = Application_Model_Preference::GetStationName();
$result['server_timezone'] = date_default_timezone_get();
return $result;
}

View File

@ -69,13 +69,22 @@ class PypoFetch(Thread):
consumer.register_callback(handle_message)
consumer.consume()
logger.info("PypoFetch: init complete");
logger.info("PypoFetch: init complete")
def set_export_source(self, export_source):
self.export_source = export_source
self.cache_dir = config["cache_dir"] + self.export_source + '/'
def check_matching_timezones(self, server_timezone):
logger = logging.getLogger('fetch')
f = open('/etc/timezone', 'r')
pypo_timezone = f.readline().strip(' \t\n\r')
f.close()
if server_timezone != pypo_timezone:
logger.error("Server and pypo timezones do not match. Audio playback may not start when expected!")
logger.error("Server timezone: %s", server_timezone)
logger.error("Pypo timezone: %s", pypo_timezone)
"""
Process the schedule
@ -88,7 +97,9 @@ class PypoFetch(Thread):
def process_schedule(self, schedule_data, export_source):
logger = logging.getLogger('fetch')
self.schedule = schedule_data["playlists"]
self.check_matching_timezones(schedule_data["server_timezone"])
# Push stream metadata to liquidsoap
# TODO: THIS LIQUIDSOAP STUFF NEEDS TO BE MOVED TO PYPO-PUSH!!!
stream_metadata = schedule_data['stream_metadata']