SecondBot/SecondBotEvents/Config/ChatGptConfig.cs
2024-08-30 04:39:33 +01:00

81 lines
No EOL
2.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Text;
namespace SecondBotEvents.Config
{
public class ChatGptConfig : Config
{
public ChatGptConfig(bool fromENV, string fromFolder = "") : base(fromENV, fromFolder) { }
protected override void MakeSettings()
{
filename = "chatgpt";
settings.Add("Enabled");
settings.Add("ApiKey");
settings.Add("OrganizationId");
settings.Add("AllowImReplys");
settings.Add("ImReplyFriendsOnly");
settings.Add("ImReplyRateLimiter");
settings.Add("AllowGroupReplys");
settings.Add("GroupReplyForGroup");
settings.Add("GroupReplyRateLimiter");
settings.Add("LocalchatReply");
settings.Add("LocalchatRateLimiter");
settings.Add("UseModel");
settings.Add("ChatHistoryMessages");
}
public int GetImReplyRateLimiter()
{
return ReadSettingAsInt("ImReplyRateLimiter", 3);
}
public int GetGroupReplyRateLimiter()
{
return ReadSettingAsInt("GroupReplyRateLimiter", 3);
}
public int GetLocalchatRateLimiter()
{
return ReadSettingAsInt("LocalchatRateLimiter", 3);
}
public int GetChatHistoryMessages()
{
return ReadSettingAsInt("ChatHistoryMessages", 5);
}
public string GetUseModel()
{
return ReadSettingAsString("UseModel", "gpt3");
}
public bool GetEnabled()
{
return ReadSettingAsBool("Enabled");
}
public string GetApiKey()
{
return ReadSettingAsString("ApiKey","none");
}
public string GetOrganizationId()
{
return ReadSettingAsString("OrganizationId","none");
}
public bool GetAllowImReplys()
{
return ReadSettingAsBool("AllowImReplys");
}
public bool GetImReplyFriendsOnly()
{
return ReadSettingAsBool("ImReplyFriendsOnly");
}
public bool GetAllowGroupReplys()
{
return ReadSettingAsBool("AllowGroupReplys");
}
public string GetGroupReplyForGroup()
{
return ReadSettingAsString("GroupReplyForGroup","none");
}
public bool GetLocalchatReply()
{
return ReadSettingAsBool("LocalchatReply");
}
}
}