2023-10-18 09:01:24 +00:00
using ArgsUniform ;
namespace BiblioTech
{
public class Configuration
{
[Uniform("token", "t", "TOKEN", true, "Discord Application Token")]
public string ApplicationToken { get ; set ; } = string . Empty ;
2023-10-18 12:59:39 +00:00
[Uniform("server-name", "sn", "SERVERNAME", true, "Name of the Discord server")]
public string ServerName { get ; set ; } = string . Empty ;
2023-10-25 09:53:33 +00:00
[Uniform("datapath", "dp", "DATAPATH", false, "Root path where all data files will be saved.")]
public string DataPath { get ; set ; } = "datapath" ;
2023-10-22 09:10:45 +00:00
[Uniform("admin-role", "a", "ADMINROLE", true, "Name of the Discord server admin role")]
public string AdminRoleName { get ; set ; } = string . Empty ;
2023-10-25 08:38:21 +00:00
[Uniform("admin-channel-name", "ac", "ADMINCHANNELNAME", true, "Name of the Discord server channel where admin commands are allowed.")]
public string AdminChannelName { get ; set ; } = "admin-channel" ;
2023-10-25 09:53:33 +00:00
2024-02-01 22:02:10 +00:00
[Uniform("rewards-channel-name", "rc", "REWARDSCHANNELNAME", false, "Name of the Discord server channel where participation rewards will be announced.")]
2023-12-20 14:56:03 +00:00
public string RewardsChannelName { get ; set ; } = "" ;
2024-02-01 22:02:10 +00:00
[Uniform("reward-api-port", "rp", "REWARDAPIPORT", false, "TCP listen port for the reward API.")]
public int RewardApiPort { get ; set ; } = 31080 ;
2023-12-20 14:56:03 +00:00
2023-10-25 09:53:33 +00:00
public string EndpointsPath
{
get
{
return Path . Combine ( DataPath , "endpoints" ) ;
}
}
public string UserDataPath
{
get
{
return Path . Combine ( DataPath , "users" ) ;
}
}
2023-12-18 10:27:28 +00:00
public string LogPath
{
get
{
return Path . Combine ( DataPath , "logs" ) ;
}
}
2023-10-18 09:01:24 +00:00
}
}