rearrange channel fn args
This commit is contained in:
parent
f4d8bc152c
commit
abf9900f63
1 changed files with 5 additions and 8 deletions
|
@ -44,7 +44,7 @@ def get_core_process_details(client, process_id):
|
||||||
return None
|
return None
|
||||||
|
|
||||||
# Helper function to process a running channel
|
# Helper function to process a running channel
|
||||||
def process_running_channel(client, database, scheduler, stream_id, stream_name, stream_description, stream_hls_url):
|
def process_running_channel(database, scheduler, stream_id, stream_name, stream_description, stream_hls_url):
|
||||||
if stream_id in database:
|
if stream_id in database:
|
||||||
# Skip learned channels
|
# Skip learned channels
|
||||||
return
|
return
|
||||||
|
@ -68,7 +68,7 @@ def process_running_channel(client, database, scheduler, stream_id, stream_name,
|
||||||
database.update({stream_id: {'name': stream_name, 'meta': stream_description, 'src': stream_hls_url}})
|
database.update({stream_id: {'name': stream_name, 'meta': stream_description, 'src': stream_hls_url}})
|
||||||
|
|
||||||
# Helper function to remove channel from the database
|
# Helper function to remove channel from the database
|
||||||
def remove_channel_from_database(stream_id, stream_name, state, database, scheduler):
|
def remove_channel_from_database(database, scheduler, stream_id, stream_name, state):
|
||||||
logger_job.info(f'{stream_id} ({stream_name}) has been removed from the database. Reason: {state.exec}')
|
logger_job.info(f'{stream_id} ({stream_name}) has been removed from the database. Reason: {state.exec}')
|
||||||
database.pop(stream_id)
|
database.pop(stream_id)
|
||||||
scheduler.remove_job(stream_id)
|
scheduler.remove_job(stream_id)
|
||||||
|
@ -106,18 +106,15 @@ def core_api_sync():
|
||||||
get_process = get_core_process_details(client, process.id)
|
get_process = get_core_process_details(client, process.id)
|
||||||
if not get_process:
|
if not get_process:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
stream_id = get_process.reference
|
stream_id = get_process.reference
|
||||||
meta = get_process.metadata
|
meta = get_process.metadata
|
||||||
state = get_process.state
|
state = get_process.state
|
||||||
except Exception as err:
|
except Exception as err:
|
||||||
logger_job.error(f'Error processing process {process.id}: {err}')
|
logger_job.error(f'Error processing {process.id}: {err}')
|
||||||
continue
|
continue
|
||||||
|
|
||||||
if meta is None or meta['restreamer-ui'].get('meta') is None:
|
if meta is None or meta['restreamer-ui'].get('meta') is None:
|
||||||
# Skip processes without metadata or meta key
|
# Skip processes without metadata or meta key
|
||||||
continue
|
continue
|
||||||
|
|
||||||
new_ids.append(stream_id)
|
new_ids.append(stream_id)
|
||||||
stream_name = meta['restreamer-ui']['meta']['name']
|
stream_name = meta['restreamer-ui']['meta']['name']
|
||||||
stream_description = meta['restreamer-ui']['meta']['description']
|
stream_description = meta['restreamer-ui']['meta']['description']
|
||||||
|
@ -125,9 +122,9 @@ def core_api_sync():
|
||||||
stream_hls_url = f'https://{api_hostname}/{stream_storage_type}/{stream_id}.m3u8'
|
stream_hls_url = f'https://{api_hostname}/{stream_storage_type}/{stream_id}.m3u8'
|
||||||
|
|
||||||
if state.exec == "running":
|
if state.exec == "running":
|
||||||
process_running_channel(client, database, scheduler, stream_id, stream_name, stream_description, stream_hls_url)
|
process_running_channel(database, scheduler, stream_id, stream_name, stream_description, stream_hls_url)
|
||||||
else:
|
else:
|
||||||
remove_channel_from_database(stream_id, stream_name, state, database, scheduler)
|
remove_channel_from_database(database, scheduler, stream_id, stream_name, state)
|
||||||
|
|
||||||
# Cleanup orphaned references
|
# Cleanup orphaned references
|
||||||
orphan_keys = [key for key in database if key not in new_ids]
|
orphan_keys = [key for key in database if key not in new_ids]
|
||||||
|
|
Loading…
Reference in a new issue