← All source files

V18 / 8d896b8a86e5

Program.cs

Services/MessageBridge/Program.cs

Unchanged from the preceding version
CS
using Lilith.MessageBridge;

string root = Environment.GetEnvironmentVariable("LILITH_MESSAGES_DATA") ?? Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData), "Lilith", "MessageBridge");
using var store = new BridgeStore(root);
switch (args.FirstOrDefault())
{
    case "dummy-add" when args.Length == 2: await store.AddDummyAsync(args[1]); Console.WriteLine("Created local dummy channel: " + args[1]); break;
    case "dummy-arrive" when args.Length == 5: Console.WriteLine(await store.ArriveAsync(args[1], args[2], args[3], args[4])); break;
    case "serve":
        string token = Environment.GetEnvironmentVariable("LILITH_MESSAGES_API_TOKEN") ?? "";
        int port = int.TryParse(Environment.GetEnvironmentVariable("LILITH_MESSAGES_PORT"), out int p) ? p : 5184;
        await using (var app = LocalBridgeApi.Create(store, token, port)) await app.RunAsync();
        break;
    default: Console.WriteLine("MessageBridge dummy-add NICKNAME | dummy-arrive NICKNAME ROOM SENDER TEXT | serve. Local dummy data only; Discord is not connected."); break;
}