Compare commits

...
8 Commits
Author SHA1 Message Date
Florian Zevedei 82e6d79ec4 Updating examples 2024-07-12 13:40:47 +02:00
Florian Zevedei 5d2f3e7fe9 Merge pull request #67 from MajMcCloud/development
Updating master branch via development branch
2024-07-10 14:28:25 +02:00
Florian Zevedei 5cda9e1fdc README.md aktualisieren 2024-07-06 17:56:33 +02:00
Florian Zevedei 41bdf52afe README.md aktualisieren 2024-07-06 17:56:13 +02:00
Florian Zevedei 9023875922 README.md aktualisieren 2024-07-06 17:55:36 +02:00
Florian Zevedei 05bfeb8d09 Update README.md 2024-07-06 17:28:23 +02:00
Florian Zevedei 3d97da75f1 Update README.md 2024-07-01 03:28:37 +02:00
Florian Zevedei 261fdafd96 Merge pull request #65 from MajMcCloud/development
Migrating development branch into master
2024-06-29 18:30:34 +02:00
+48 -8
View File
@@ -14,6 +14,10 @@
**Releases: [GitHub](https://github.com/MajMcCloud/TelegramBotFramework/releases)**
**Need your own bot? Get in touch https://t.me/botbasebuilder**
**on X: @florian_zevedei**
## Donate
Paypal: [https://paypal.me/majmccloud](https://paypal.me/majmccloud)
@@ -102,6 +106,7 @@ var bot = BotBaseBuilder
})
.NoSerialization()
.UseEnglish()
.UseSingleThread()
.Build();
// Upload bot commands to BotFather
@@ -122,8 +127,32 @@ like ChatId and other stuff your carrying.
From there you build up your bots:
```csharp
public class StartForm : FormBase
public class Start : FormBase
{
public Start()
{
//Additional event handlers
Init += Start_Init;
Opened += Start_Opened;
Closed += Start_Closed;
}
// Gets invoked on initialization, before navigation
private async Task Start_Init(object sender, Args.InitEventArgs e)
{
}
// Gets invoked after opened
private async Task Start_Opened(object sender, EventArgs e)
{
}
// Gets invoked after form has been closed
private async Task Start_Closed(object sender, EventArgs e)
{
}
// Gets invoked during Navigation to this form
public override async Task PreLoad(MessageResult message)
{
@@ -220,6 +249,7 @@ var bot = BotBaseBuilder
})
.NoSerialization()
.UseEnglish()
.UseSingleThread()
.Build();
bot.BotCommand += async (s, en) =>
@@ -260,15 +290,15 @@ public class SimpleForm : AutoCleanForm
{
public SimpleForm()
{
this.DeleteSide = TelegramBotBase.Enums.eDeleteSide.Both;
this.DeleteMode = TelegramBotBase.Enums.eDeleteMode.OnLeavingForm;
DeleteSide = EDeleteSide.Both;
DeleteMode = EDeleteMode.OnLeavingForm;
this.Opened += SimpleForm_Opened;
Opened += SimpleForm_Opened;
}
private async Task SimpleForm_Opened(object sender, EventArgs e)
{
await this.Device.Send("Hello world! (send 'back' to get back to Start)\r\nOr\r\nhi, hello, maybe, bye and ciao");
await Device.Send("Hello world! (send 'back' to get back to Start)\r\nOr\r\nhi, hello, maybe, bye and ciao");
}
public override async Task Load(MessageResult message)
@@ -306,7 +336,13 @@ public class SimpleForm : AutoCleanForm
```csharp
public class ButtonTestForm : AutoCleanForm
{
public override async Task Opened()
public ButtonTestForm()
{
this.DeleteMode = eDeleteMode.OnLeavingForm;
Opened += ButtonTestForm_Opened;
}
private async Task ButtonTestForm_Opened(object sender, EventArgs e)
{
await this.Device.Send("Hello world! (Click 'back' to get back to Start)");
}
@@ -376,9 +412,10 @@ public class ProgressTest : AutoCleanForm
public ProgressTest()
{
this.DeleteMode = eDeleteMode.OnLeavingForm;
Opened += ProgressTest_Opened;
}
public override async Task Opened()
private async Task ProgressTest_Opened(object sender, EventArgs e)
{
await this.Device.Send("Welcome to ProgressTest");
}
@@ -858,6 +895,7 @@ var bot = BotBaseBuilder
})
.UseSimpleJSON(AppContext.BaseDirectory + "config\\states.json")
.UseEnglish()
.UseSingleThread()
.Build();
await bot.Start();
@@ -881,6 +919,7 @@ var bot = BotBaseBuilder
})
.UseJSON(AppContext.BaseDirectory + "config\\states.json")
.UseEnglish()
.UseSingleThread()
.Build();
await bot.Start();
@@ -903,6 +942,7 @@ var bot = BotBaseBuilder
})
.UseXML(AppContext.BaseDirectory + "config\\states.xml")
.UseEnglish()
.UseSingleThread()
.Build();
await bot.Start();
@@ -916,7 +956,7 @@ datatype and one for implementing into a form which should be invoked with event
#### IStateMachine
Is the basic StateMachine interface, it has two methods `SaveFormStates(SaveStatesEventArgs e)`
and `StateContainerLoadFormStates()`, nothing fancy, just simple calls. Implement both methods with your own
and `LoadFormStates()`, nothing fancy, just simple calls. Implement both methods with your own
serialization process.
```csharp