40 lines
1.9 KiB
C#
40 lines
1.9 KiB
C#
using System;
|
|
using System.Threading;
|
|
using LinqToDB.Data;
|
|
using Microsoft.AspNetCore.Hosting;
|
|
using Microsoft.Extensions.Hosting;
|
|
using RTMPDash.DataModels;
|
|
|
|
namespace RTMPDash;
|
|
|
|
public class Program {
|
|
public const string SiteName = "chaos.stream";
|
|
public const string IngressDomain = "rtmp://chaos.stream";
|
|
public const string RtmpStatsUrl = "http://127.0.0.1:8083";
|
|
public const string RootDomain = "https://chaos.stream";
|
|
public const string PlayerDomain = "https://player.chaos.stream";
|
|
public const string FragmentDomain = "https://cdn.chaos.stream";
|
|
public const string StatsDomain = "https://stats.chaos.stream";
|
|
public const string PrivacyEmail = "chaosstream-privacy@zotan.email";
|
|
public const string CopyrightEmail = "chaosstream-copyright@zotan.email";
|
|
public const string AbuseEmail = "chaosstream-abuse@zotan.email";
|
|
public const string ServiceAnnouncementUrl = "https://t.me/chaosstream";
|
|
public const string ServiceStatusUrl = "https://status.chaos.stream";
|
|
|
|
public const string ContactInfo =
|
|
"<a href=\"https://t.me/zotan\" target=\"_blank\">Telegram</a>, <a href=\"https://threema.id/S59S9U8J\" target=\"_blank\">Threema</a>, or via <a href=\"mailto:chaosstream-contact@zotan.email\" target=\"_blank\">email</a>.";
|
|
|
|
public static void Main(string[] args) {
|
|
DataConnection.DefaultSettings = new AppDb.Settings();
|
|
ThreadPool.SetMinThreads(100, 100);
|
|
Migrations.RunMigrations();
|
|
CreateHostBuilder(args).Build().Run();
|
|
}
|
|
|
|
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args).ConfigureWebHostDefaults(webBuilder => { webBuilder.UseStartup<Startup>(); });
|
|
}
|
|
|
|
public static class TimeExtensions {
|
|
public static TimeSpan StripMilliseconds(this TimeSpan time) => new(time.Days, time.Hours, time.Minutes, time.Seconds);
|
|
}
|