export async function sendNotification(title: string, body: string, link?: string | null) { console.dir({ sendNotification: { title, body, link } }); if ( ! ( process.env.notification_mock == "true" ) ) { const response = await fetch(`${ process.env.apprise_https == "true" ? "https" : "http"}://${process.env.apprise_host ? process.env.apprise_host : "apprise"}:${process.env.apprise_port ? String(process.env.apprise_port) : "80" }/notify"`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ urls: [ `ntfys://${process.env.ntfy_username}:${process.env.ntfy_password}@${process.env.ntfy_host}/${process.env.ntfy_topic}${ link ? `?click=${link}`: "?click=https://77th-jsoc.com/#/events" }`, `discord://${process.env.dc_webhook}?avatar_url=${process.env.dc_avatar_url}&botname=${process.env.dc_botname}` ].join(","), title: title, body: body, format: "markdown" }) }); const responseBody = await response.json(); return responseBody; } else { console.dir({ sendNotification: "mocking" }) } }