diff --git a/endpoints/transcriptions.py b/endpoints/transcriptions.py
index f05bfc2..2105564 100644
--- a/endpoints/transcriptions.py
+++ b/endpoints/transcriptions.py
@@ -18,8 +18,8 @@ class ValidShowEpisodeLineRequest(BaseModel):
- **e**: episode id
"""
- s: str
- e: str
+ s: int
+ e: int
class Transcriptions(FastAPI):
"""Transcription Endpoints"""
@@ -77,7 +77,7 @@ class Transcriptions(FastAPI):
case _:
return {
'err': True,
- 'errorText': 'Unknown endpoint.'
+ 'errorText': 'Unknown error.'
}
async with sqlite3.connect(database=db_path, timeout=1) as _db:
async with _db.execute(db_query) as _cursor:
@@ -95,6 +95,37 @@ class Transcriptions(FastAPI):
"""/transcriptions/get_episode_lines/
Get lines for a particular episode
"""
- return {
- 'hi': True
- }
\ No newline at end of file
+ show_id = data.s
+ episode_id = data.e
+
+ match show_id:
+ case 0:
+ db_path = os.path.join("/", "var", "lib", "singerdbs", "sp.db")
+ db_query = """SELECT ("S" || Season || "E" || Episode || " " || Title), Character, Line FROM SP_DAT WHERE ID = ?"""
+ case 1:
+ db_path = os.path.join("/", "var", "lib", "singerdbs", "futur.db")
+ db_query = """SELECT ("S" || EP_S || "E" || EP_EP || " " || EP_TITLE || "
Opener: " || EP_OPENER || ""), EP_LINE_SPEAKER, EP_LINE FROM clean_dialog WHERE EP_ID = ? ORDER BY LINE_ID ASC"""
+ case 2:
+ db_path = os.path.join("/", "var", "lib", "singerdbs", "parks.db")
+ db_query = """SELECT ("S" || EP_S || "E" || EP_EP || " " || EP_TITLE), EP_LINE_SPEAKER, EP_LINE FROM clean_dialog WHERE EP_ID = ? ORDER BY id ASC"""
+
+ case _:
+ return {
+ 'err': True,
+ 'errorText': 'Unknown error'
+ }
+
+ async with sqlite3.connect(database=db_path, timeout=1) as _db:
+ params = (episode_id,)
+ async with _db.execute(db_query, params) as _cursor:
+ result = await _cursor.fetchall()
+ return {
+ "episode_id": episode_id,
+ "lines": [
+ {
+ 'ep_friendly': item[0].strip(),
+ 'speaker': item[1].strip(),
+ 'line': item[2].strip()
+ } for item in result]
+ }
+
\ No newline at end of file