lnbits-legend/lnbits/extensions/jukebox/__init__.py

34 lines
886 B
Python
Raw Normal View History

2021-10-10 23:57:15 +01:00
import asyncio
from fastapi import APIRouter, FastAPI
from fastapi.staticfiles import StaticFiles
from starlette.routing import Mount
2021-10-10 16:23:39 +01:00
from lnbits.db import Database
2021-10-10 23:57:15 +01:00
from lnbits.helpers import template_renderer
from lnbits.tasks import catch_everything_and_restart
2021-10-10 16:23:39 +01:00
db = Database("ext_jukebox")
2021-10-10 23:57:15 +01:00
jukebox_static_files = [
{
"path": "/jukebox/static",
"app": StaticFiles(directory="lnbits/extensions/jukebox/static"),
"name": "jukebox_static",
}
]
jukebox_ext: APIRouter = APIRouter(prefix="/jukebox", tags=["jukebox"])
def jukebox_renderer():
2021-10-17 18:33:29 +01:00
return template_renderer(["lnbits/extensions/jukebox/templates"])
2021-10-10 23:57:15 +01:00
2021-10-10 16:23:39 +01:00
from .views_api import * # noqa
from .views import * # noqa
2021-10-10 23:57:15 +01:00
from .tasks import wait_for_paid_invoices
2021-10-10 16:23:39 +01:00
2021-10-10 23:57:15 +01:00
def jukebox_start():
loop = asyncio.get_event_loop()
loop.create_task(catch_everything_and_restart(wait_for_paid_invoices))