2021-07-15 23:19:37 +08:00
|
|
|
// ******************************
|
|
|
|
// GENERATED CODE, DO NOT EDIT MANUALLY.
|
2021-08-13 21:03:21 +08:00
|
|
|
// SEE /config_gen/README.md
|
2021-07-15 23:19:37 +08:00
|
|
|
// ******************************
|
|
|
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
using System.ComponentModel;
|
2021-12-19 21:10:34 +08:00
|
|
|
using BililiveRecorder.Core.Config;
|
2021-12-19 20:58:32 +08:00
|
|
|
using BililiveRecorder.Core.Config.V3;
|
2021-07-15 23:19:37 +08:00
|
|
|
|
|
|
|
namespace BililiveRecorder.Cli.Configure
|
|
|
|
{
|
|
|
|
public enum GlobalConfigProperties
|
|
|
|
{
|
|
|
|
[Description("[grey]Exit[/]")]
|
|
|
|
Exit,
|
|
|
|
RecordMode,
|
|
|
|
CuttingMode,
|
|
|
|
CuttingNumber,
|
2023-10-12 17:59:45 +08:00
|
|
|
CuttingByTitle,
|
2021-07-15 23:19:37 +08:00
|
|
|
RecordDanmaku,
|
|
|
|
RecordDanmakuRaw,
|
|
|
|
RecordDanmakuSuperChat,
|
|
|
|
RecordDanmakuGift,
|
|
|
|
RecordDanmakuGuard,
|
2022-08-27 18:07:09 +08:00
|
|
|
SaveStreamCover,
|
2021-08-13 21:03:21 +08:00
|
|
|
RecordingQuality,
|
2021-12-19 20:58:32 +08:00
|
|
|
FileNameRecordTemplate,
|
2022-06-25 17:31:21 +08:00
|
|
|
FlvProcessorSplitOnScriptTag,
|
2024-11-22 21:55:20 +08:00
|
|
|
FlvProcessorDisableSplitOnH264AnnexB,
|
2023-02-01 19:14:53 +08:00
|
|
|
FlvWriteMetadata,
|
2024-11-10 14:55:48 +08:00
|
|
|
TitleFilterPatterns,
|
2021-08-13 21:03:21 +08:00
|
|
|
WebHookUrls,
|
|
|
|
WebHookUrlsV2,
|
|
|
|
WpfShowTitleAndArea,
|
2022-08-25 18:43:23 +08:00
|
|
|
WpfNotifyStreamStart,
|
2021-08-13 21:03:21 +08:00
|
|
|
Cookie,
|
|
|
|
LiveApiHost,
|
|
|
|
TimingCheckInterval,
|
2022-08-25 19:23:18 +08:00
|
|
|
TimingApiTimeout,
|
2021-08-13 21:03:21 +08:00
|
|
|
TimingStreamRetry,
|
2021-11-20 14:34:35 +08:00
|
|
|
TimingStreamRetryNoQn,
|
2021-08-13 21:03:21 +08:00
|
|
|
TimingStreamConnect,
|
|
|
|
TimingDanmakuRetry,
|
|
|
|
TimingWatchdogTimeout,
|
2022-05-09 22:42:08 +08:00
|
|
|
RecordDanmakuFlushInterval,
|
2022-08-25 18:42:36 +08:00
|
|
|
DanmakuTransport,
|
2023-07-08 10:32:38 +08:00
|
|
|
DanmakuAuthenticateWithStreamerUid,
|
2022-05-09 22:42:08 +08:00
|
|
|
NetworkTransportUseSystemProxy,
|
2022-05-11 00:20:57 +08:00
|
|
|
NetworkTransportAllowedAddressFamily,
|
|
|
|
UserScript
|
2021-07-15 23:19:37 +08:00
|
|
|
}
|
|
|
|
public enum RoomConfigProperties
|
|
|
|
{
|
|
|
|
[Description("[grey]Exit[/]")]
|
|
|
|
Exit,
|
|
|
|
RoomId,
|
|
|
|
AutoRecord,
|
|
|
|
RecordMode,
|
|
|
|
CuttingMode,
|
|
|
|
CuttingNumber,
|
2023-10-12 17:59:45 +08:00
|
|
|
CuttingByTitle,
|
2021-07-15 23:19:37 +08:00
|
|
|
RecordDanmaku,
|
|
|
|
RecordDanmakuRaw,
|
|
|
|
RecordDanmakuSuperChat,
|
|
|
|
RecordDanmakuGift,
|
|
|
|
RecordDanmakuGuard,
|
2022-08-27 18:07:09 +08:00
|
|
|
SaveStreamCover,
|
2022-06-25 17:31:21 +08:00
|
|
|
RecordingQuality,
|
2024-11-10 14:55:48 +08:00
|
|
|
FlvProcessorSplitOnScriptTag,
|
2024-11-22 21:55:20 +08:00
|
|
|
FlvProcessorDisableSplitOnH264AnnexB,
|
2024-11-10 14:55:48 +08:00
|
|
|
TitleFilterPatterns
|
2021-07-15 23:19:37 +08:00
|
|
|
}
|
|
|
|
public static class ConfigInstructions
|
|
|
|
{
|
|
|
|
public static Dictionary<GlobalConfigProperties, ConfigInstructionBase<GlobalConfig>> GlobalConfig = new();
|
|
|
|
public static Dictionary<RoomConfigProperties, ConfigInstructionBase<RoomConfig>> RoomConfig = new();
|
|
|
|
|
|
|
|
static ConfigInstructions()
|
|
|
|
{
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordMode, new ConfigInstruction<GlobalConfig, RecordMode>(config => config.HasRecordMode = false, (config, value) => config.RecordMode = value) { Name = "RecordMode", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.CuttingMode, new ConfigInstruction<GlobalConfig, CuttingMode>(config => config.HasCuttingMode = false, (config, value) => config.CuttingMode = value) { Name = "CuttingMode", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.CuttingNumber, new ConfigInstruction<GlobalConfig, uint>(config => config.HasCuttingNumber = false, (config, value) => config.CuttingNumber = value) { Name = "CuttingNumber", CanBeOptional = true });
|
2023-10-12 17:59:45 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.CuttingByTitle, new ConfigInstruction<GlobalConfig, bool>(config => config.HasCuttingByTitle = false, (config, value) => config.CuttingByTitle = value) { Name = "CuttingByTitle", CanBeOptional = true });
|
2021-07-15 23:19:37 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordDanmaku, new ConfigInstruction<GlobalConfig, bool>(config => config.HasRecordDanmaku = false, (config, value) => config.RecordDanmaku = value) { Name = "RecordDanmaku", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordDanmakuRaw, new ConfigInstruction<GlobalConfig, bool>(config => config.HasRecordDanmakuRaw = false, (config, value) => config.RecordDanmakuRaw = value) { Name = "RecordDanmakuRaw", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordDanmakuSuperChat, new ConfigInstruction<GlobalConfig, bool>(config => config.HasRecordDanmakuSuperChat = false, (config, value) => config.RecordDanmakuSuperChat = value) { Name = "RecordDanmakuSuperChat", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordDanmakuGift, new ConfigInstruction<GlobalConfig, bool>(config => config.HasRecordDanmakuGift = false, (config, value) => config.RecordDanmakuGift = value) { Name = "RecordDanmakuGift", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordDanmakuGuard, new ConfigInstruction<GlobalConfig, bool>(config => config.HasRecordDanmakuGuard = false, (config, value) => config.RecordDanmakuGuard = value) { Name = "RecordDanmakuGuard", CanBeOptional = true });
|
2022-08-27 18:07:09 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.SaveStreamCover, new ConfigInstruction<GlobalConfig, bool>(config => config.HasSaveStreamCover = false, (config, value) => config.SaveStreamCover = value) { Name = "SaveStreamCover", CanBeOptional = true });
|
2021-07-15 23:19:37 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordingQuality, new ConfigInstruction<GlobalConfig, string>(config => config.HasRecordingQuality = false, (config, value) => config.RecordingQuality = value) { Name = "RecordingQuality", CanBeOptional = true });
|
2021-12-19 20:58:32 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.FileNameRecordTemplate, new ConfigInstruction<GlobalConfig, string>(config => config.HasFileNameRecordTemplate = false, (config, value) => config.FileNameRecordTemplate = value) { Name = "FileNameRecordTemplate", CanBeOptional = true });
|
2022-06-25 17:31:21 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.FlvProcessorSplitOnScriptTag, new ConfigInstruction<GlobalConfig, bool>(config => config.HasFlvProcessorSplitOnScriptTag = false, (config, value) => config.FlvProcessorSplitOnScriptTag = value) { Name = "FlvProcessorSplitOnScriptTag", CanBeOptional = true });
|
2024-11-22 21:55:20 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.FlvProcessorDisableSplitOnH264AnnexB, new ConfigInstruction<GlobalConfig, bool>(config => config.HasFlvProcessorDisableSplitOnH264AnnexB = false, (config, value) => config.FlvProcessorDisableSplitOnH264AnnexB = value) { Name = "FlvProcessorDisableSplitOnH264AnnexB", CanBeOptional = true });
|
2023-02-01 19:14:53 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.FlvWriteMetadata, new ConfigInstruction<GlobalConfig, bool>(config => config.HasFlvWriteMetadata = false, (config, value) => config.FlvWriteMetadata = value) { Name = "FlvWriteMetadata", CanBeOptional = true });
|
2024-11-10 14:55:48 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TitleFilterPatterns, new ConfigInstruction<GlobalConfig, string>(config => config.HasTitleFilterPatterns = false, (config, value) => config.TitleFilterPatterns = value) { Name = "TitleFilterPatterns", CanBeOptional = true });
|
2021-08-13 21:03:21 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.WebHookUrls, new ConfigInstruction<GlobalConfig, string>(config => config.HasWebHookUrls = false, (config, value) => config.WebHookUrls = value) { Name = "WebHookUrls", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.WebHookUrlsV2, new ConfigInstruction<GlobalConfig, string>(config => config.HasWebHookUrlsV2 = false, (config, value) => config.WebHookUrlsV2 = value) { Name = "WebHookUrlsV2", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.WpfShowTitleAndArea, new ConfigInstruction<GlobalConfig, bool>(config => config.HasWpfShowTitleAndArea = false, (config, value) => config.WpfShowTitleAndArea = value) { Name = "WpfShowTitleAndArea", CanBeOptional = true });
|
2022-08-25 18:43:23 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.WpfNotifyStreamStart, new ConfigInstruction<GlobalConfig, bool>(config => config.HasWpfNotifyStreamStart = false, (config, value) => config.WpfNotifyStreamStart = value) { Name = "WpfNotifyStreamStart", CanBeOptional = true });
|
2021-08-13 21:03:21 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.Cookie, new ConfigInstruction<GlobalConfig, string>(config => config.HasCookie = false, (config, value) => config.Cookie = value) { Name = "Cookie", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.LiveApiHost, new ConfigInstruction<GlobalConfig, string>(config => config.HasLiveApiHost = false, (config, value) => config.LiveApiHost = value) { Name = "LiveApiHost", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingCheckInterval, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingCheckInterval = false, (config, value) => config.TimingCheckInterval = value) { Name = "TimingCheckInterval", CanBeOptional = true });
|
2022-08-25 19:23:18 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingApiTimeout, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingApiTimeout = false, (config, value) => config.TimingApiTimeout = value) { Name = "TimingApiTimeout", CanBeOptional = true });
|
2021-08-13 21:03:21 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingStreamRetry, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingStreamRetry = false, (config, value) => config.TimingStreamRetry = value) { Name = "TimingStreamRetry", CanBeOptional = true });
|
2021-11-20 14:34:35 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingStreamRetryNoQn, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingStreamRetryNoQn = false, (config, value) => config.TimingStreamRetryNoQn = value) { Name = "TimingStreamRetryNoQn", CanBeOptional = true });
|
2021-08-13 21:03:21 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingStreamConnect, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingStreamConnect = false, (config, value) => config.TimingStreamConnect = value) { Name = "TimingStreamConnect", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingDanmakuRetry, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingDanmakuRetry = false, (config, value) => config.TimingDanmakuRetry = value) { Name = "TimingDanmakuRetry", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.TimingWatchdogTimeout, new ConfigInstruction<GlobalConfig, uint>(config => config.HasTimingWatchdogTimeout = false, (config, value) => config.TimingWatchdogTimeout = value) { Name = "TimingWatchdogTimeout", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.RecordDanmakuFlushInterval, new ConfigInstruction<GlobalConfig, uint>(config => config.HasRecordDanmakuFlushInterval = false, (config, value) => config.RecordDanmakuFlushInterval = value) { Name = "RecordDanmakuFlushInterval", CanBeOptional = true });
|
2022-08-25 18:42:36 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.DanmakuTransport, new ConfigInstruction<GlobalConfig, DanmakuTransportMode>(config => config.HasDanmakuTransport = false, (config, value) => config.DanmakuTransport = value) { Name = "DanmakuTransport", CanBeOptional = true });
|
2023-07-08 10:32:38 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.DanmakuAuthenticateWithStreamerUid, new ConfigInstruction<GlobalConfig, bool>(config => config.HasDanmakuAuthenticateWithStreamerUid = false, (config, value) => config.DanmakuAuthenticateWithStreamerUid = value) { Name = "DanmakuAuthenticateWithStreamerUid", CanBeOptional = true });
|
2022-05-09 22:42:08 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.NetworkTransportUseSystemProxy, new ConfigInstruction<GlobalConfig, bool>(config => config.HasNetworkTransportUseSystemProxy = false, (config, value) => config.NetworkTransportUseSystemProxy = value) { Name = "NetworkTransportUseSystemProxy", CanBeOptional = true });
|
|
|
|
GlobalConfig.Add(GlobalConfigProperties.NetworkTransportAllowedAddressFamily, new ConfigInstruction<GlobalConfig, AllowedAddressFamily>(config => config.HasNetworkTransportAllowedAddressFamily = false, (config, value) => config.NetworkTransportAllowedAddressFamily = value) { Name = "NetworkTransportAllowedAddressFamily", CanBeOptional = true });
|
2022-05-11 00:20:57 +08:00
|
|
|
GlobalConfig.Add(GlobalConfigProperties.UserScript, new ConfigInstruction<GlobalConfig, string>(config => config.HasUserScript = false, (config, value) => config.UserScript = value) { Name = "UserScript", CanBeOptional = true });
|
2021-07-15 23:19:37 +08:00
|
|
|
|
|
|
|
RoomConfig.Add(RoomConfigProperties.RoomId, new ConfigInstruction<RoomConfig, int>(config => config.HasRoomId = false, (config, value) => config.RoomId = value) { Name = "RoomId", CanBeOptional = false });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.AutoRecord, new ConfigInstruction<RoomConfig, bool>(config => config.HasAutoRecord = false, (config, value) => config.AutoRecord = value) { Name = "AutoRecord", CanBeOptional = false });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordMode, new ConfigInstruction<RoomConfig, RecordMode>(config => config.HasRecordMode = false, (config, value) => config.RecordMode = value) { Name = "RecordMode", CanBeOptional = true });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.CuttingMode, new ConfigInstruction<RoomConfig, CuttingMode>(config => config.HasCuttingMode = false, (config, value) => config.CuttingMode = value) { Name = "CuttingMode", CanBeOptional = true });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.CuttingNumber, new ConfigInstruction<RoomConfig, uint>(config => config.HasCuttingNumber = false, (config, value) => config.CuttingNumber = value) { Name = "CuttingNumber", CanBeOptional = true });
|
2023-10-12 17:59:45 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.CuttingByTitle, new ConfigInstruction<RoomConfig, bool>(config => config.HasCuttingByTitle = false, (config, value) => config.CuttingByTitle = value) { Name = "CuttingByTitle", CanBeOptional = true });
|
2021-07-15 23:19:37 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordDanmaku, new ConfigInstruction<RoomConfig, bool>(config => config.HasRecordDanmaku = false, (config, value) => config.RecordDanmaku = value) { Name = "RecordDanmaku", CanBeOptional = true });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordDanmakuRaw, new ConfigInstruction<RoomConfig, bool>(config => config.HasRecordDanmakuRaw = false, (config, value) => config.RecordDanmakuRaw = value) { Name = "RecordDanmakuRaw", CanBeOptional = true });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordDanmakuSuperChat, new ConfigInstruction<RoomConfig, bool>(config => config.HasRecordDanmakuSuperChat = false, (config, value) => config.RecordDanmakuSuperChat = value) { Name = "RecordDanmakuSuperChat", CanBeOptional = true });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordDanmakuGift, new ConfigInstruction<RoomConfig, bool>(config => config.HasRecordDanmakuGift = false, (config, value) => config.RecordDanmakuGift = value) { Name = "RecordDanmakuGift", CanBeOptional = true });
|
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordDanmakuGuard, new ConfigInstruction<RoomConfig, bool>(config => config.HasRecordDanmakuGuard = false, (config, value) => config.RecordDanmakuGuard = value) { Name = "RecordDanmakuGuard", CanBeOptional = true });
|
2022-08-27 18:07:09 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.SaveStreamCover, new ConfigInstruction<RoomConfig, bool>(config => config.HasSaveStreamCover = false, (config, value) => config.SaveStreamCover = value) { Name = "SaveStreamCover", CanBeOptional = true });
|
2021-07-15 23:19:37 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.RecordingQuality, new ConfigInstruction<RoomConfig, string>(config => config.HasRecordingQuality = false, (config, value) => config.RecordingQuality = value) { Name = "RecordingQuality", CanBeOptional = true });
|
2022-06-25 17:31:21 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.FlvProcessorSplitOnScriptTag, new ConfigInstruction<RoomConfig, bool>(config => config.HasFlvProcessorSplitOnScriptTag = false, (config, value) => config.FlvProcessorSplitOnScriptTag = value) { Name = "FlvProcessorSplitOnScriptTag", CanBeOptional = true });
|
2024-11-22 21:55:20 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.FlvProcessorDisableSplitOnH264AnnexB, new ConfigInstruction<RoomConfig, bool>(config => config.HasFlvProcessorDisableSplitOnH264AnnexB = false, (config, value) => config.FlvProcessorDisableSplitOnH264AnnexB = value) { Name = "FlvProcessorDisableSplitOnH264AnnexB", CanBeOptional = true });
|
2024-11-10 14:55:48 +08:00
|
|
|
RoomConfig.Add(RoomConfigProperties.TitleFilterPatterns, new ConfigInstruction<RoomConfig, string>(config => config.HasTitleFilterPatterns = false, (config, value) => config.TitleFilterPatterns = value) { Name = "TitleFilterPatterns", CanBeOptional = true });
|
2021-07-15 23:19:37 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|