Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from nebula import *
- class Plugin(APIPlugin):
- def main(self, **kwargs):
- try:
- id_channel = int(kwargs.get("id_channel"))
- channel_config = config["playout_channels"][id_channel]
- except:
- log_traceback()
- return NebulaResponse(400, "No such channel")
- try:
- start_time = datestr2ts(kwargs.get("date"), *channel_config["day_start"])
- except Exception:
- log_traceback()
- return NebulaResponse(400, "Wrong date specified")
- event_keys = ["start", "title", "subtitle", "description"]
- asset_keys = ["title", "subtitle", "description", "genre", "id_folder", "intention", "editorial_format"]
- result = []
- for event in get_rundown(id_channel, start_time, start_time+(3600*24)):
- edata = {}
- for k in event_keys:
- if event[k]:
- edata[k] = event[k]
- edata["items"] = []
- for item in event.items:
- idata = {
- "title" : item["title"],
- "scheduled_time" : item["rundown_scheduled"],
- "broadcast_time" : item["rundown_broadcast"],
- }
- if item.asset:
- idata["asset"] = {k : item.asset[k] for k in asset_keys if item.asset[k]}
- edata["items"].append(idata)
- result.append(edata)
- return NebulaResponse(200, data=result)
Add Comment
Please, Sign In to add comment