Update of Testproject

This commit is contained in:
FlorianDahn
2018-05-20 04:06:38 +02:00
parent dbcb4c19ef
commit 6a42d75267
9 changed files with 50 additions and 33 deletions
+1 -4
View File
@@ -3,7 +3,6 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telegram.Bot.Types.InlineKeyboardButtons;
using Telegram.Bot.Types.ReplyMarkups;
namespace TelegramBotBase.Form
@@ -71,9 +70,7 @@ namespace TelegramBotBase.Form
public static implicit operator InlineKeyboardMarkup(ButtonForm form)
{
InlineKeyboardMarkup ikm = new InlineKeyboardMarkup();
ikm.InlineKeyboard = form.ToArray();
InlineKeyboardMarkup ikm = new InlineKeyboardMarkup(form.ToArray());
return ikm;
}
+6 -5
View File
@@ -9,6 +9,7 @@ using System.Text;
using System.Threading.Tasks;
using Telegram.Bot.Types;
using Telegram.Bot.Types.Enums;
using Telegram.Bot.Types.InputFiles;
using Telegram.Bot.Types.ReplyMarkups;
using TelegramBotBase.Base;
using TelegramBotBase.Form;
@@ -123,7 +124,7 @@ namespace TelegramBotBase.Sessions
/// <param name="replyTo"></param>
/// <param name="disableNotification"></param>
/// <returns></returns>
public async Task SendPhoto(FileToSend file, ButtonForm buttons = null, int replyTo = 0, bool disableNotification = false)
public async Task SendPhoto(InputOnlineFile file, ButtonForm buttons = null, int replyTo = 0, bool disableNotification = false)
{
if (this.ActiveForm == null)
return;
@@ -151,7 +152,7 @@ namespace TelegramBotBase.Sessions
{
using (var fileStream = Tools.Images.ToStream(image, ImageFormat.Png))
{
var fts = new FileToSend(name, fileStream);
InputOnlineFile fts = new InputOnlineFile(fileStream, name);
await SendPhoto(fts, buttons, replyTo, disableNotification);
}
@@ -169,7 +170,7 @@ namespace TelegramBotBase.Sessions
{
using (var fileStream = Tools.Images.ToStream(image, ImageFormat.Png))
{
var fts = new FileToSend(name, fileStream);
InputOnlineFile fts = new InputOnlineFile(fileStream, name);
await SendPhoto(fts, buttons, replyTo, disableNotification);
}
@@ -189,7 +190,7 @@ namespace TelegramBotBase.Sessions
{
MemoryStream ms = new MemoryStream(document);
FileToSend fts = new FileToSend(filename, ms);
InputOnlineFile fts = new InputOnlineFile(ms, filename);
await SendDocument(fts, caption, buttons, replyTo, disableNotification);
}
@@ -203,7 +204,7 @@ namespace TelegramBotBase.Sessions
/// <param name="replyTo"></param>
/// <param name="disableNotification"></param>
/// <returns></returns>
public async Task SendDocument(FileToSend document, String caption = "", ButtonForm buttons = null, int replyTo = 0, bool disableNotification = false)
public async Task SendDocument(InputOnlineFile document, String caption = "", ButtonForm buttons = null, int replyTo = 0, bool disableNotification = false)
{
InlineKeyboardMarkup markup = null;
if (buttons != null)
+4 -6
View File
@@ -30,8 +30,8 @@
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Newtonsoft.Json, Version=10.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
<Reference Include="Newtonsoft.Json, Version=11.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="System" />
@@ -50,8 +50,8 @@
<Reference Include="System.Data" />
<Reference Include="System.Net.Http" />
<Reference Include="System.Xml" />
<Reference Include="Telegram.Bot, Version=13.2.1.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Telegram.Bot.13.2.1\lib\netstandard1.1\Telegram.Bot.dll</HintPath>
<Reference Include="Telegram.Bot, Version=14.4.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\Telegram.Bot.14.4.0\lib\net45\Telegram.Bot.dll</HintPath>
<Private>True</Private>
</Reference>
</ItemGroup>
@@ -75,11 +75,9 @@
<Compile Include="Form\FormBase.cs" />
<Compile Include="Form\CallbackData.cs" />
<Compile Include="Form\PromptDialog.cs" />
<Compile Include="Tests\TestForm.cs" />
<Compile Include="SessionBase.cs" />
<Compile Include="Sessions\DeviceSession.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Tests\TestForm2.cs" />
<Compile Include="Tools\Images.cs" />
</ItemGroup>
<ItemGroup>
-83
View File
@@ -1,83 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telegram.Bot.Types;
using TelegramBotBase.Base;
using TelegramBotBase.Form;
namespace TelegramBotBase.Tests
{
public class TestForm : FormBase
{
String LastMessage { get; set; }
public override async Task Init(params object[] param)
{
}
public override async Task Opened()
{
await this.Device.Send("Willkommen in Formular 1");
}
public override async Task Closed()
{
await this.Device.Send("Tschüss in Formular 1");
}
public override async Task Load(MessageResult message)
{
}
public override async Task Action(MessageResult message)
{
switch (message.Command)
{
case "reply":
break;
case "navigate":
var tf = new TestForm2();
await tf.Init();
await this.NavigateTo(tf);
break;
default:
this.LastMessage = message.RawMessageData.Message.Text;
break;
}
}
public override async Task Render(MessageResult message)
{
if (message.Command == "reply")
{
await this.Device.Send("Letzte Nachricht: " + this.LastMessage);
}
}
}
}
-111
View File
@@ -1,111 +0,0 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Telegram.Bot.Types;
using Telegram.Bot.Types.InlineKeyboardButtons;
using Telegram.Bot.Types.ReplyMarkups;
using TelegramBotBase.Base;
using TelegramBotBase.Form;
namespace TelegramBotBase.Tests
{
public class TestForm2 : FormBase
{
public override async Task Init(params object[] param)
{
}
public override async Task Opened()
{
await this.Device.Send("Willkommen in Formular 2");
}
public override async Task Closed()
{
await this.Device.Send("Tschüss in Formular 2");
}
public override async Task Load(MessageResult message)
{
}
public override async Task Action(MessageResult message)
{
var call = message.GetData<CallbackData>();
await message.ConfirmAction();
await message.DeleteMessage();
if (call.Value == "testform1")
{
var tf = new TestForm();
await tf.Init();
await this.NavigateTo(tf);
}
else if (call.Value == "alert")
{
var fto = new TestForm2();
await fto.Init();
AlertDialog ad = new AlertDialog("Dies ist eine Meldung !", "Ok", fto);
await this.NavigateTo(ad);
}
else if (call.Value == "prompt")
{
PromptDialog pd = new PromptDialog("Bitte bestätigen !", new ButtonBase("Ok", "ok"), new ButtonBase("Abbrechen", "cancel"));
var tf = new TestForm2();
await tf.Init();
pd.ButtonForms.Add("ok", tf);
pd.ButtonForms.Add("cancel", tf);
await this.NavigateTo(pd);
}
}
public override async Task Render(MessageResult message)
{
Bitmap bmp = new Bitmap(800, 600);
using (Graphics g = Graphics.FromImage(bmp))
{
g.FillRectangle(Brushes.White, 0, 0, bmp.Width, bmp.Height);
g.DrawString("Testbild", new Font("Arial", 24, FontStyle.Bold, GraphicsUnit.Pixel), Brushes.Black, new PointF(50, 50));
}
await this.Device.SetAction(Telegram.Bot.Types.Enums.ChatAction.UploadPhoto);
ButtonForm btn = new ButtonForm();
btn.AddButtonRow(new ButtonBase("Zum Testformular 1", CallbackData.Create("navigate", "testform1")), new ButtonBase("Zum Testformular 1", CallbackData.Create("navigate", "testform1")));
btn.AddButtonRow(new ButtonBase("Info Dialog", CallbackData.Create("navigate", "alert")), new ButtonBase("Bestätigungs Dialog", CallbackData.Create("navigate", "prompt")));
await this.Device.SendPhoto(bmp, "Test", btn);
}
}
}
+4 -3
View File
@@ -2,7 +2,7 @@
<packages>
<package id="Microsoft.NETCore.Platforms" version="1.1.0" targetFramework="net452" />
<package id="NETStandard.Library" version="1.6.1" targetFramework="net452" />
<package id="Newtonsoft.Json" version="10.0.3" targetFramework="net452" />
<package id="Newtonsoft.Json" version="11.0.2" targetFramework="net452" />
<package id="System.Collections" version="4.3.0" targetFramework="net452" />
<package id="System.Collections.Concurrent" version="4.3.0" targetFramework="net452" />
<package id="System.Diagnostics.Debug" version="4.3.0" targetFramework="net452" />
@@ -13,8 +13,9 @@
<package id="System.IO.Compression" version="4.3.0" targetFramework="net452" />
<package id="System.Linq" version="4.3.0" targetFramework="net452" />
<package id="System.Linq.Expressions" version="4.3.0" targetFramework="net452" />
<package id="System.Net.Http" version="4.3.0" targetFramework="net452" />
<package id="System.Net.Http" version="4.3.3" targetFramework="net452" />
<package id="System.Net.Primitives" version="4.3.0" targetFramework="net452" />
<package id="System.Net.Requests" version="4.3.0" targetFramework="net452" />
<package id="System.ObjectModel" version="4.3.0" targetFramework="net452" />
<package id="System.Reflection" version="4.3.0" targetFramework="net452" />
<package id="System.Reflection.Extensions" version="4.3.0" targetFramework="net452" />
@@ -33,5 +34,5 @@
<package id="System.Threading.Timer" version="4.3.0" targetFramework="net452" />
<package id="System.Xml.ReaderWriter" version="4.3.0" targetFramework="net452" />
<package id="System.Xml.XDocument" version="4.3.0" targetFramework="net452" />
<package id="Telegram.Bot" version="13.2.1" targetFramework="net452" />
<package id="Telegram.Bot" version="14.4.0" targetFramework="net452" />
</packages>