A dotnet 8 (LTS) Azure Function to handle BYOND version changelogs via Discord webhooks.
It works by checking the BYOND update file every hour, checking if an update has been pushed, then parsing the changelog into a discord webhook before sending to a configured list of webhooks.
Easier cron scheduling and its set and forget, I dont have to worry about uptime.
Despite being an Azure function, the project will still run locally. You will need a dotnet 8 capable IDE (Visual Studio recommended), but other than that you just launch it and have it run, though I do advise the following change to make testing a lot faster.
Before:
[Function("CheckByondVersions")]
public async Task Run([TimerTrigger("0 0 * * * *")] TimerInfo trigger)
After:
[Function("CheckByondVersions")]
public async Task Run([TimerTrigger("0 0 * * * *", RunOnStartup = true)] TimerInfo trigger)
This will make the function execute on startup, meaning you dont have to reconfigure the cron expression.
The configuration will automatically be created inside a bcaf_data
directory.
The project code style is not C# norms, its Java styling. If this offends you please acquire a box of tissues.
This can be deployed on any Azure functions plan on both Windows and Linux, however you need to add an Azure files
share mapped to bcaf_data
in order to preserve data and have a config.
The project is licensed under MIT. You can find a copy in LICENSE.MD
.
A huge thanks to @alexkar598 for laying the ground work with the following node project: https://github.com/alexkar598/byondver