Compare commits

...

4 Commits

Author SHA1 Message Date
Chris Plaatjes
4b6bb780d4 Created check for Matrix mode 2023-02-16 10:53:08 -05:00
Chris Plaatjes
e8463ecc25 Added Matrix SDK 2023-02-16 10:52:56 -05:00
Chris Plaatjes
2083e8279f Created initial matrix listener 2023-02-16 10:52:46 -05:00
Chris Plaatjes
19e011dfac Added matrix variables 2023-02-16 10:52:38 -05:00
4 changed files with 88 additions and 11 deletions

14
MatrixListener.cs Normal file
View File

@ -0,0 +1,14 @@
using System;
using System.Configuration;
using Matrix.Sdk;
namespace TeleTok
{
public class MatrixListener
{
public void RunListener()
{
}
}
}

View File

@ -10,27 +10,85 @@ namespace TeleTok
.AddJsonFile("config.json", true) .AddJsonFile("config.json", true)
.Build(); .Build();
// Value to see what bot mode to run in
public static string botMode = config.GetSection("TeleTokConf:botMode").Value;
// Telegram bot config
public static string token = config.GetSection("TeleTokConf:token").Value; public static string token = config.GetSection("TeleTokConf:token").Value;
public static string ptInstance = config.GetSection("TeleTokConf:proxitokInstance").Value; public static string ptInstance = config.GetSection("TeleTokConf:ptInstance").Value;
// Matrix bot config
public static string matrixAddress = config.GetSection("TeleTokConf:matrixAddress").Value;
public static string mBotUser = config.GetSection("TeleTokConf:mBotUser").Value;
public static string mBotPass = config.GetSection("TeleTokConf:mBotPass").Value;
static async Task Main(string[] args) static async Task Main(string[] args)
{ {
//Checks if the config json data is valid //Checks to see what mode to run the bot in
if(token == "" || token == null || token == "INSERT TOKEN HERE")
if(botMode == "telegram")
{ {
LogMessage("Telegram bot token is invalid! Exiting..."); //Checks if the config json data is valid
if(ConfigCheck(token) == false)
{
LogMessage("Telegram bot token is invalid! Exiting...");
}
else if(ConfigCheck(ptInstance) == false)
{
LogMessage("Proxitok instance is invalid! Exiting...");
}
else
{
TelegramListener tListener = new TelegramListener();
LogMessage("Now listening...");
tListener.RunListener();
}
} }
else if(ptInstance == "" || ptInstance == null || ptInstance == "PROXITOK INSTANCE URL") else if(botMode == "matrix")
{ {
LogMessage("Proxitok instance is invalid! Exiting..."); //Checks if the config json data is valid
if(ConfigCheck(matrixAddress) == false)
{
LogMessage("Synapse address is invalid! Exiting...");
}
else if(ConfigCheck(mBotUser) == false)
{
LogMessage("Matrix bot username is invalid! Exiting...");
}
else if(ConfigCheck(mBotPass) == false)
{
LogMessage("Matrix bot password is invalid! Exiting...");
}
else
{
MatrixListener mListener = new MatrixListener();
LogMessage("Now listening...");
mListener.RunListener();
}
} }
else else
{ {
TelegramListener listener = new TelegramListener(); LogMessage("Bot mode is not configured! Enter either \'telegram\' or \'matrix\'");
LogMessage("Now listening..."); }
}
listener.RunListener(); public static bool ConfigCheck(string confItem)
} {
if(confItem == "" || confItem == null
|| confItem == "INSERT TOKEN HERE"
|| confItem == "PROXITOK INSTANCE URL"
|| confItem == "SYNAPSE SERVER URL"
|| confItem == "MATRIX BOT USERNAMEL"
|| confItem == "MATRIX BOT PASSWORD")
{
return false;
}
else
{
return true;
}
} }
public static void LogMessage(string text) public static void LogMessage(string text)

View File

@ -8,6 +8,7 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="Matrix.Sdk" Version="1.0.7" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="7.0.2" /> <PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="7.0.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0" /> <PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="7.0.0" />
<PackageReference Include="Telegram.Bot" Version="17.0.0" /> <PackageReference Include="Telegram.Bot" Version="17.0.0" />

View File

@ -1,6 +1,10 @@
{ {
"TeleTokConf": { "TeleTokConf": {
"botMode": "telegram",
"token": "INSERT TOKEN HERE", "token": "INSERT TOKEN HERE",
"proxitokInstance": "PROXITOK INSTANCE URL" "ptInstance": "PROXITOK INSTANCE URL",
"matrixAddress": "SYNAPSE SERVER URL",
"mBotUser": "MATRIX BOT USERNAME",
"mBotPass": "MATRIX BOT PASSWORD"
} }
} }