refactor(playout): rename event kinds enums
This commit is contained in:
parent
78c74f47ca
commit
cd0d9b6f4a
|
@ -3,8 +3,8 @@ from enum import Enum
|
||||||
|
|
||||||
class EventKind(str, Enum):
|
class EventKind(str, Enum):
|
||||||
FILE = "file"
|
FILE = "file"
|
||||||
EVENT = "event"
|
ACTION = "event"
|
||||||
STREAM_BUFFER_START = "stream_buffer_start"
|
WEB_STREAM_BUFFER_START = "stream_buffer_start"
|
||||||
STREAM_OUTPUT_START = "stream_output_start"
|
WEB_STREAM_OUTPUT_START = "stream_output_start"
|
||||||
STREAM_BUFFER_END = "stream_buffer_end"
|
WEB_STREAM_BUFFER_END = "stream_buffer_end"
|
||||||
STREAM_OUTPUT_END = "stream_output_end"
|
WEB_STREAM_OUTPUT_END = "stream_output_end"
|
||||||
|
|
|
@ -28,11 +28,11 @@ class PypoLiquidsoap:
|
||||||
def play(self, media_item):
|
def play(self, media_item):
|
||||||
if media_item["type"] == EventKind.FILE:
|
if media_item["type"] == EventKind.FILE:
|
||||||
self.handle_file_type(media_item)
|
self.handle_file_type(media_item)
|
||||||
elif media_item["type"] == EventKind.EVENT:
|
elif media_item["type"] == EventKind.ACTION:
|
||||||
self.handle_event_type(media_item)
|
self.handle_event_type(media_item)
|
||||||
elif media_item["type"] == EventKind.STREAM_BUFFER_START:
|
elif media_item["type"] == EventKind.WEB_STREAM_BUFFER_START:
|
||||||
self.telnet_liquidsoap.start_web_stream_buffer(media_item)
|
self.telnet_liquidsoap.start_web_stream_buffer(media_item)
|
||||||
elif media_item["type"] == EventKind.STREAM_OUTPUT_START:
|
elif media_item["type"] == EventKind.WEB_STREAM_OUTPUT_START:
|
||||||
if (
|
if (
|
||||||
media_item["row_id"]
|
media_item["row_id"]
|
||||||
!= self.telnet_liquidsoap.current_prebuffering_stream_id
|
!= self.telnet_liquidsoap.current_prebuffering_stream_id
|
||||||
|
@ -41,9 +41,9 @@ class PypoLiquidsoap:
|
||||||
# so that the prebuffering stage could take effect. Let's do the prebuffering now.
|
# so that the prebuffering stage could take effect. Let's do the prebuffering now.
|
||||||
self.telnet_liquidsoap.start_web_stream_buffer(media_item)
|
self.telnet_liquidsoap.start_web_stream_buffer(media_item)
|
||||||
self.telnet_liquidsoap.start_web_stream(media_item)
|
self.telnet_liquidsoap.start_web_stream(media_item)
|
||||||
elif media_item["type"] == EventKind.STREAM_BUFFER_END:
|
elif media_item["type"] == EventKind.WEB_STREAM_BUFFER_END:
|
||||||
self.telnet_liquidsoap.stop_web_stream_buffer()
|
self.telnet_liquidsoap.stop_web_stream_buffer()
|
||||||
elif media_item["type"] == EventKind.STREAM_OUTPUT_END:
|
elif media_item["type"] == EventKind.WEB_STREAM_OUTPUT_END:
|
||||||
self.telnet_liquidsoap.stop_web_stream_output()
|
self.telnet_liquidsoap.stop_web_stream_output()
|
||||||
else:
|
else:
|
||||||
raise UnknownMediaItemType(str(media_item))
|
raise UnknownMediaItemType(str(media_item))
|
||||||
|
@ -126,7 +126,9 @@ class PypoLiquidsoap:
|
||||||
]
|
]
|
||||||
|
|
||||||
scheduled_now_webstream = [
|
scheduled_now_webstream = [
|
||||||
x for x in scheduled_now if x["type"] in (EventKind.STREAM_OUTPUT_START)
|
x
|
||||||
|
for x in scheduled_now
|
||||||
|
if x["type"] in (EventKind.WEB_STREAM_OUTPUT_START)
|
||||||
]
|
]
|
||||||
|
|
||||||
schedule_ids = {x["row_id"] for x in scheduled_now_files}
|
schedule_ids = {x["row_id"] for x in scheduled_now_files}
|
||||||
|
|
|
@ -91,7 +91,7 @@ def generate_live_events(
|
||||||
# If enabled, fade the input source out
|
# If enabled, fade the input source out
|
||||||
if switch_off_event_key != kick_out_event_key:
|
if switch_off_event_key != kick_out_event_key:
|
||||||
switch_off_event = {
|
switch_off_event = {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "switch_off",
|
"event_type": "switch_off",
|
||||||
"start": switch_off_event_key,
|
"start": switch_off_event_key,
|
||||||
"end": switch_off_event_key,
|
"end": switch_off_event_key,
|
||||||
|
@ -100,7 +100,7 @@ def generate_live_events(
|
||||||
|
|
||||||
# Then kick the source out
|
# Then kick the source out
|
||||||
kick_out_event = {
|
kick_out_event = {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "kick_out",
|
"event_type": "kick_out",
|
||||||
"start": kick_out_event_key,
|
"start": kick_out_event_key,
|
||||||
"end": kick_out_event_key,
|
"end": kick_out_event_key,
|
||||||
|
@ -158,7 +158,7 @@ def generate_webstream_events(
|
||||||
schedule_end_event_key = datetime_to_event_key(schedule["ends_at"])
|
schedule_end_event_key = datetime_to_event_key(schedule["ends_at"])
|
||||||
|
|
||||||
stream_buffer_start_event = {
|
stream_buffer_start_event = {
|
||||||
"type": EventKind.STREAM_BUFFER_START,
|
"type": EventKind.WEB_STREAM_BUFFER_START,
|
||||||
"row_id": schedule["id"],
|
"row_id": schedule["id"],
|
||||||
"start": datetime_to_event_key(schedule["starts_at"] - timedelta(seconds=5)),
|
"start": datetime_to_event_key(schedule["starts_at"] - timedelta(seconds=5)),
|
||||||
"end": datetime_to_event_key(schedule["starts_at"] - timedelta(seconds=5)),
|
"end": datetime_to_event_key(schedule["starts_at"] - timedelta(seconds=5)),
|
||||||
|
@ -168,7 +168,7 @@ def generate_webstream_events(
|
||||||
insert_event(events, schedule_start_event_key, stream_buffer_start_event)
|
insert_event(events, schedule_start_event_key, stream_buffer_start_event)
|
||||||
|
|
||||||
stream_output_start_event = {
|
stream_output_start_event = {
|
||||||
"type": EventKind.STREAM_OUTPUT_START,
|
"type": EventKind.WEB_STREAM_OUTPUT_START,
|
||||||
"row_id": schedule["id"],
|
"row_id": schedule["id"],
|
||||||
"start": schedule_start_event_key,
|
"start": schedule_start_event_key,
|
||||||
"end": schedule_end_event_key,
|
"end": schedule_end_event_key,
|
||||||
|
@ -182,7 +182,7 @@ def generate_webstream_events(
|
||||||
# NOTE: stream_*_end were previously triggered 1 second before
|
# NOTE: stream_*_end were previously triggered 1 second before
|
||||||
# the schedule end.
|
# the schedule end.
|
||||||
stream_buffer_end_event = {
|
stream_buffer_end_event = {
|
||||||
"type": EventKind.STREAM_BUFFER_END,
|
"type": EventKind.WEB_STREAM_BUFFER_END,
|
||||||
"row_id": schedule["id"],
|
"row_id": schedule["id"],
|
||||||
"start": schedule_end_event_key,
|
"start": schedule_end_event_key,
|
||||||
"end": schedule_end_event_key,
|
"end": schedule_end_event_key,
|
||||||
|
@ -192,7 +192,7 @@ def generate_webstream_events(
|
||||||
insert_event(events, schedule_end_event_key, stream_buffer_end_event)
|
insert_event(events, schedule_end_event_key, stream_buffer_end_event)
|
||||||
|
|
||||||
stream_output_end_event = {
|
stream_output_end_event = {
|
||||||
"type": EventKind.STREAM_OUTPUT_END,
|
"type": EventKind.WEB_STREAM_OUTPUT_END,
|
||||||
"row_id": schedule["id"],
|
"row_id": schedule["id"],
|
||||||
"start": schedule_end_event_key,
|
"start": schedule_end_event_key,
|
||||||
"end": schedule_end_event_key,
|
"end": schedule_end_event_key,
|
||||||
|
|
|
@ -275,7 +275,7 @@ def test_generate_live_events():
|
||||||
generate_live_events(result, show_instance_3, 0.0)
|
generate_live_events(result, show_instance_3, 0.0)
|
||||||
assert result == {
|
assert result == {
|
||||||
"2022-09-05-13-00-00": {
|
"2022-09-05-13-00-00": {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "kick_out",
|
"event_type": "kick_out",
|
||||||
"start": "2022-09-05-13-00-00",
|
"start": "2022-09-05-13-00-00",
|
||||||
"end": "2022-09-05-13-00-00",
|
"end": "2022-09-05-13-00-00",
|
||||||
|
@ -286,13 +286,13 @@ def test_generate_live_events():
|
||||||
generate_live_events(result, show_instance_3, 2.0)
|
generate_live_events(result, show_instance_3, 2.0)
|
||||||
assert result == {
|
assert result == {
|
||||||
"2022-09-05-12-59-58": {
|
"2022-09-05-12-59-58": {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "switch_off",
|
"event_type": "switch_off",
|
||||||
"start": "2022-09-05-12-59-58",
|
"start": "2022-09-05-12-59-58",
|
||||||
"end": "2022-09-05-12-59-58",
|
"end": "2022-09-05-12-59-58",
|
||||||
},
|
},
|
||||||
"2022-09-05-13-00-00": {
|
"2022-09-05-13-00-00": {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "kick_out",
|
"event_type": "kick_out",
|
||||||
"start": "2022-09-05-13-00-00",
|
"start": "2022-09-05-13-00-00",
|
||||||
"end": "2022-09-05-13-00-00",
|
"end": "2022-09-05-13-00-00",
|
||||||
|
@ -340,7 +340,7 @@ def test_generate_webstream_events():
|
||||||
generate_webstream_events(result, schedule_5, WEBSTREAM_1, SHOW_3)
|
generate_webstream_events(result, schedule_5, WEBSTREAM_1, SHOW_3)
|
||||||
assert result == {
|
assert result == {
|
||||||
"2022-09-05-12-10-00": {
|
"2022-09-05-12-10-00": {
|
||||||
"type": EventKind.STREAM_BUFFER_START,
|
"type": EventKind.WEB_STREAM_BUFFER_START,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-09-55",
|
"start": "2022-09-05-12-09-55",
|
||||||
"end": "2022-09-05-12-09-55",
|
"end": "2022-09-05-12-09-55",
|
||||||
|
@ -348,7 +348,7 @@ def test_generate_webstream_events():
|
||||||
"id": 1,
|
"id": 1,
|
||||||
},
|
},
|
||||||
"2022-09-05-12-10-00_0": {
|
"2022-09-05-12-10-00_0": {
|
||||||
"type": EventKind.STREAM_OUTPUT_START,
|
"type": EventKind.WEB_STREAM_OUTPUT_START,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-10-00",
|
"start": "2022-09-05-12-10-00",
|
||||||
"end": "2022-09-05-12-40-00",
|
"end": "2022-09-05-12-40-00",
|
||||||
|
@ -357,7 +357,7 @@ def test_generate_webstream_events():
|
||||||
"show_name": "Show 3",
|
"show_name": "Show 3",
|
||||||
},
|
},
|
||||||
"2022-09-05-12-40-00": {
|
"2022-09-05-12-40-00": {
|
||||||
"type": EventKind.STREAM_BUFFER_END,
|
"type": EventKind.WEB_STREAM_BUFFER_END,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-40-00",
|
"start": "2022-09-05-12-40-00",
|
||||||
"end": "2022-09-05-12-40-00",
|
"end": "2022-09-05-12-40-00",
|
||||||
|
@ -365,7 +365,7 @@ def test_generate_webstream_events():
|
||||||
"id": 1,
|
"id": 1,
|
||||||
},
|
},
|
||||||
"2022-09-05-12-40-00_0": {
|
"2022-09-05-12-40-00_0": {
|
||||||
"type": EventKind.STREAM_OUTPUT_END,
|
"type": EventKind.WEB_STREAM_OUTPUT_END,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-40-00",
|
"start": "2022-09-05-12-40-00",
|
||||||
"end": "2022-09-05-12-40-00",
|
"end": "2022-09-05-12-40-00",
|
||||||
|
@ -494,7 +494,7 @@ def test_get_schedule(schedule, requests_mock, api_client: ApiClient):
|
||||||
"filesize": 10000,
|
"filesize": 10000,
|
||||||
},
|
},
|
||||||
"2022-09-05-12-10-00": {
|
"2022-09-05-12-10-00": {
|
||||||
"type": EventKind.STREAM_BUFFER_START,
|
"type": EventKind.WEB_STREAM_BUFFER_START,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-09-55",
|
"start": "2022-09-05-12-09-55",
|
||||||
"end": "2022-09-05-12-09-55",
|
"end": "2022-09-05-12-09-55",
|
||||||
|
@ -502,7 +502,7 @@ def test_get_schedule(schedule, requests_mock, api_client: ApiClient):
|
||||||
"id": 1,
|
"id": 1,
|
||||||
},
|
},
|
||||||
"2022-09-05-12-10-00_0": {
|
"2022-09-05-12-10-00_0": {
|
||||||
"type": EventKind.STREAM_OUTPUT_START,
|
"type": EventKind.WEB_STREAM_OUTPUT_START,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-10-00",
|
"start": "2022-09-05-12-10-00",
|
||||||
"end": "2022-09-05-12-40-00",
|
"end": "2022-09-05-12-40-00",
|
||||||
|
@ -511,7 +511,7 @@ def test_get_schedule(schedule, requests_mock, api_client: ApiClient):
|
||||||
"show_name": "Show 3",
|
"show_name": "Show 3",
|
||||||
},
|
},
|
||||||
"2022-09-05-12-40-00": {
|
"2022-09-05-12-40-00": {
|
||||||
"type": EventKind.STREAM_BUFFER_END,
|
"type": EventKind.WEB_STREAM_BUFFER_END,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-40-00",
|
"start": "2022-09-05-12-40-00",
|
||||||
"end": "2022-09-05-12-40-00",
|
"end": "2022-09-05-12-40-00",
|
||||||
|
@ -519,7 +519,7 @@ def test_get_schedule(schedule, requests_mock, api_client: ApiClient):
|
||||||
"id": 1,
|
"id": 1,
|
||||||
},
|
},
|
||||||
"2022-09-05-12-40-00_0": {
|
"2022-09-05-12-40-00_0": {
|
||||||
"type": EventKind.STREAM_OUTPUT_END,
|
"type": EventKind.WEB_STREAM_OUTPUT_END,
|
||||||
"row_id": 5,
|
"row_id": 5,
|
||||||
"start": "2022-09-05-12-40-00",
|
"start": "2022-09-05-12-40-00",
|
||||||
"end": "2022-09-05-12-40-00",
|
"end": "2022-09-05-12-40-00",
|
||||||
|
@ -587,13 +587,13 @@ def test_get_schedule(schedule, requests_mock, api_client: ApiClient):
|
||||||
"filesize": 10000,
|
"filesize": 10000,
|
||||||
},
|
},
|
||||||
"2022-09-05-12-59-58": {
|
"2022-09-05-12-59-58": {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "switch_off",
|
"event_type": "switch_off",
|
||||||
"start": "2022-09-05-12-59-58",
|
"start": "2022-09-05-12-59-58",
|
||||||
"end": "2022-09-05-12-59-58",
|
"end": "2022-09-05-12-59-58",
|
||||||
},
|
},
|
||||||
"2022-09-05-13-00-00": {
|
"2022-09-05-13-00-00": {
|
||||||
"type": EventKind.EVENT,
|
"type": EventKind.ACTION,
|
||||||
"event_type": "kick_out",
|
"event_type": "kick_out",
|
||||||
"start": "2022-09-05-13-00-00",
|
"start": "2022-09-05-13-00-00",
|
||||||
"end": "2022-09-05-13-00-00",
|
"end": "2022-09-05-13-00-00",
|
||||||
|
|
Loading…
Reference in New Issue