From cc8ae919fd45cb767206a129ec0ac09d8b137e31 Mon Sep 17 00:00:00 2001 From: Philip Schell Date: Thu, 14 Feb 2019 11:52:17 +0100 Subject: [PATCH] move Telegram to ConnectorUserTelegram --- .../ConnectorUserTelegram.csproj | 238 +++++++++--------- .../Properties/AssemblyInfo.cs | 72 +++--- .../ConnectorUserTelegram}/Telegram.cs | 138 +++++----- .../ConnectorUserTelegram}/app.config | 30 +-- .../ConnectorUserTelegram}/packages.config | 100 ++++---- 5 files changed, 289 insertions(+), 289 deletions(-) rename {IoT/Connector/User/Telegram => ConnectorUserTelegram/ConnectorUserTelegram}/ConnectorUserTelegram.csproj (98%) rename {IoT/Connector/User/Telegram => ConnectorUserTelegram/ConnectorUserTelegram}/Properties/AssemblyInfo.cs (97%) rename {IoT/Connector/User/Telegram => ConnectorUserTelegram/ConnectorUserTelegram}/Telegram.cs (97%) rename {IoT/Connector/User/Telegram => ConnectorUserTelegram/ConnectorUserTelegram}/app.config (98%) rename {IoT/Connector/User/Telegram => ConnectorUserTelegram/ConnectorUserTelegram}/packages.config (98%) diff --git a/IoT/Connector/User/Telegram/ConnectorUserTelegram.csproj b/ConnectorUserTelegram/ConnectorUserTelegram/ConnectorUserTelegram.csproj similarity index 98% rename from IoT/Connector/User/Telegram/ConnectorUserTelegram.csproj rename to ConnectorUserTelegram/ConnectorUserTelegram/ConnectorUserTelegram.csproj index 248e14a..34ecf6b 100644 --- a/IoT/Connector/User/Telegram/ConnectorUserTelegram.csproj +++ b/ConnectorUserTelegram/ConnectorUserTelegram/ConnectorUserTelegram.csproj @@ -1,120 +1,120 @@ - - - - - Debug - AnyCPU - {E66A57DD-858A-40E4-8A2F-BEA5129C31F7} - Library - Properties - BlubbFish.Utils.IoT.Connector.User - ConnectorUserTelegram - v4.7.1 - 512 - - - - true - full - false - bin\Debug\ - DEBUG;TRACE - prompt - 4 - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - - ..\..\..\..\packages\Microsoft.Win32.Primitives.4.3.0\lib\net46\Microsoft.Win32.Primitives.dll - - - ..\..\..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll - - - - ..\..\..\..\packages\System.AppContext.4.3.0\lib\net46\System.AppContext.dll - True - - - - ..\..\..\..\packages\System.Console.4.3.0\lib\net46\System.Console.dll - - - - ..\..\..\..\packages\System.Diagnostics.DiagnosticSource.4.3.0\lib\net46\System.Diagnostics.DiagnosticSource.dll - - - ..\..\..\..\packages\System.Globalization.Calendars.4.3.0\lib\net46\System.Globalization.Calendars.dll - - - ..\..\..\..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll - True - - - - ..\..\..\..\packages\System.IO.Compression.ZipFile.4.3.0\lib\net46\System.IO.Compression.ZipFile.dll - - - ..\..\..\..\packages\System.IO.FileSystem.4.3.0\lib\net46\System.IO.FileSystem.dll - - - ..\..\..\..\packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll - - - ..\..\..\..\packages\System.Net.Http.4.3.0\lib\net46\System.Net.Http.dll - - - ..\..\..\..\packages\System.Net.Sockets.4.3.0\lib\net46\System.Net.Sockets.dll - - - - ..\..\..\..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll - True - - - ..\..\..\..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net461\System.Security.Cryptography.Algorithms.dll - - - ..\..\..\..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll - - - ..\..\..\..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll - - - ..\..\..\..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll - - - - - - - - ..\..\..\..\packages\System.Xml.ReaderWriter.4.3.0\lib\net46\System.Xml.ReaderWriter.dll - - - ..\..\..\..\packages\Telegram.Bot.13.2.1\lib\netstandard1.1\Telegram.Bot.dll - - - - - - - - - {b870e4d5-6806-4a0b-b233-8907eedc5afc} - Utils-IoT - - - - - - - + + + + + Debug + AnyCPU + {E66A57DD-858A-40E4-8A2F-BEA5129C31F7} + Library + Properties + BlubbFish.Utils.IoT.Connector.User + ConnectorUserTelegram + v4.7.1 + 512 + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\..\..\..\packages\Microsoft.Win32.Primitives.4.3.0\lib\net46\Microsoft.Win32.Primitives.dll + + + ..\..\..\..\packages\Newtonsoft.Json.10.0.3\lib\net45\Newtonsoft.Json.dll + + + + ..\..\..\..\packages\System.AppContext.4.3.0\lib\net46\System.AppContext.dll + True + + + + ..\..\..\..\packages\System.Console.4.3.0\lib\net46\System.Console.dll + + + + ..\..\..\..\packages\System.Diagnostics.DiagnosticSource.4.3.0\lib\net46\System.Diagnostics.DiagnosticSource.dll + + + ..\..\..\..\packages\System.Globalization.Calendars.4.3.0\lib\net46\System.Globalization.Calendars.dll + + + ..\..\..\..\packages\System.IO.Compression.4.3.0\lib\net46\System.IO.Compression.dll + True + + + + ..\..\..\..\packages\System.IO.Compression.ZipFile.4.3.0\lib\net46\System.IO.Compression.ZipFile.dll + + + ..\..\..\..\packages\System.IO.FileSystem.4.3.0\lib\net46\System.IO.FileSystem.dll + + + ..\..\..\..\packages\System.IO.FileSystem.Primitives.4.3.0\lib\net46\System.IO.FileSystem.Primitives.dll + + + ..\..\..\..\packages\System.Net.Http.4.3.0\lib\net46\System.Net.Http.dll + + + ..\..\..\..\packages\System.Net.Sockets.4.3.0\lib\net46\System.Net.Sockets.dll + + + + ..\..\..\..\packages\System.Runtime.InteropServices.RuntimeInformation.4.3.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + True + + + ..\..\..\..\packages\System.Security.Cryptography.Algorithms.4.3.0\lib\net461\System.Security.Cryptography.Algorithms.dll + + + ..\..\..\..\packages\System.Security.Cryptography.Encoding.4.3.0\lib\net46\System.Security.Cryptography.Encoding.dll + + + ..\..\..\..\packages\System.Security.Cryptography.Primitives.4.3.0\lib\net46\System.Security.Cryptography.Primitives.dll + + + ..\..\..\..\packages\System.Security.Cryptography.X509Certificates.4.3.0\lib\net461\System.Security.Cryptography.X509Certificates.dll + + + + + + + + ..\..\..\..\packages\System.Xml.ReaderWriter.4.3.0\lib\net46\System.Xml.ReaderWriter.dll + + + ..\..\..\..\packages\Telegram.Bot.13.2.1\lib\netstandard1.1\Telegram.Bot.dll + + + + + + + + + {b870e4d5-6806-4a0b-b233-8907eedc5afc} + Utils-IoT + + + + + + + \ No newline at end of file diff --git a/IoT/Connector/User/Telegram/Properties/AssemblyInfo.cs b/ConnectorUserTelegram/ConnectorUserTelegram/Properties/AssemblyInfo.cs similarity index 97% rename from IoT/Connector/User/Telegram/Properties/AssemblyInfo.cs rename to ConnectorUserTelegram/ConnectorUserTelegram/Properties/AssemblyInfo.cs index 0d74129..93202ab 100644 --- a/IoT/Connector/User/Telegram/Properties/AssemblyInfo.cs +++ b/ConnectorUserTelegram/ConnectorUserTelegram/Properties/AssemblyInfo.cs @@ -1,36 +1,36 @@ -using System.Reflection; -using System.Runtime.CompilerServices; -using System.Runtime.InteropServices; - -// Allgemeine Informationen über eine Assembly werden über die folgenden -// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, -// die einer Assembly zugeordnet sind. -[assembly: AssemblyTitle("ConnectorUserTelegram")] -[assembly: AssemblyDescription("")] -[assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("ConnectorUserTelegram")] -[assembly: AssemblyCopyright("Copyright © 2017")] -[assembly: AssemblyTrademark("")] -[assembly: AssemblyCulture("")] - -// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly -// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von -// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. -[assembly: ComVisible(false)] - -// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird -[assembly: Guid("e66a57dd-858a-40e4-8a2f-bea5129c31f7")] - -// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: -// -// Hauptversion -// Nebenversion -// Buildnummer -// Revision -// -// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, -// indem Sie "*" wie unten gezeigt eingeben: -// [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.0.0.0")] -[assembly: AssemblyFileVersion("1.0.0.0")] +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("ConnectorUserTelegram")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("ConnectorUserTelegram")] +[assembly: AssemblyCopyright("Copyright © 2017")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("e66a57dd-858a-40e4-8a2f-bea5129c31f7")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// indem Sie "*" wie unten gezeigt eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/IoT/Connector/User/Telegram/Telegram.cs b/ConnectorUserTelegram/ConnectorUserTelegram/Telegram.cs similarity index 97% rename from IoT/Connector/User/Telegram/Telegram.cs rename to ConnectorUserTelegram/ConnectorUserTelegram/Telegram.cs index 1ff02c0..88fc3a7 100644 --- a/IoT/Connector/User/Telegram/Telegram.cs +++ b/ConnectorUserTelegram/ConnectorUserTelegram/Telegram.cs @@ -1,69 +1,69 @@ -using System; -using System.Collections.Generic; -using Telegram.Bot; -using Telegram.Bot.Args; -using Telegram.Bot.Exceptions; -using Telegram.Bot.Types; -using Telegram.Bot.Types.Enums; -using Telegram.Bot.Types.ReplyMarkups; - -namespace BlubbFish.Utils.IoT.Connector.User { - public class Telegram : AUserBackend { - private TelegramBotClient bot; - private ChatId chat; - - public override event TelegramMessage MessageIncomming; - public override event TelegramMessage MessageSending; - - public Telegram(Dictionary settings) : base(settings) { - this.bot = new TelegramBotClient(settings["telegram-key"]); - this.bot.OnMessage += this.Bot_OnMessage; - this.Connect(); - } - - private void Bot_OnMessage(Object sender, MessageEventArgs e) { - this.MessageIncomming?.Invoke(this, new UserMessageEventArgs(e.Message.Text, e.Message.Chat.Id, e.Message.Date)); - } - - private void Connect() { - this.bot.StartReceiving(); - this.chat = new ChatId(this.settings["chatid"]); - } - - public async override void Send(String message) { - try { - Message x = await this.bot.SendTextMessageAsync(this.chat, message, ParseMode.Default, false, false, 0, new ReplyKeyboardRemove()); - this.MessageSending?.Invoke(this, new UserMessageEventArgs(x.Text, x.Chat.Id, x.Date)); - } catch(ApiRequestException e) { - Console.ForegroundColor = ConsoleColor.Red; - Console.WriteLine(e.Message+" "+e.ErrorCode+" "+e.Parameters); - Console.ForegroundColor = ConsoleColor.White; - } - - } - - public override void Dispose() { - this.bot.StopReceiving(); - this.bot = null; - } - - public async override void Send(String message, String[] buttons) { - try { - KeyboardButton[][] button = new KeyboardButton[(Int32)Math.Ceiling(((Double)buttons.Length)/2)][]; - for(Int32 i = 0; i < buttons.Length; i++) { - Int32 j = (Int32)Math.Floor(((Double)i) / 2); - if (i % 2 == 0) { - button[j] = new KeyboardButton[(j == button.Length - 1) ? ((buttons.Length % 2 == 0) ? 2 : buttons.Length % 2) : 2]; - } - button[j][i % 2] = new KeyboardButton(buttons[i]); - } - Message x = await this.bot.SendTextMessageAsync(this.chat, message, ParseMode.Default, false, false, 0, new ReplyKeyboardMarkup(button,true,true)); - this.MessageSending?.Invoke(this, new UserMessageEventArgs(x.Text, x.Chat.Id, x.Date)); - } catch (ApiRequestException e) { - Console.ForegroundColor = ConsoleColor.Red; - Console.WriteLine(e.Message + " " + e.ErrorCode + " " + e.Parameters); - Console.ForegroundColor = ConsoleColor.White; - } - } - } -} +using System; +using System.Collections.Generic; +using Telegram.Bot; +using Telegram.Bot.Args; +using Telegram.Bot.Exceptions; +using Telegram.Bot.Types; +using Telegram.Bot.Types.Enums; +using Telegram.Bot.Types.ReplyMarkups; + +namespace BlubbFish.Utils.IoT.Connector.User { + public class Telegram : AUserBackend { + private TelegramBotClient bot; + private ChatId chat; + + public override event TelegramMessage MessageIncomming; + public override event TelegramMessage MessageSending; + + public Telegram(Dictionary settings) : base(settings) { + this.bot = new TelegramBotClient(settings["telegram-key"]); + this.bot.OnMessage += this.Bot_OnMessage; + this.Connect(); + } + + private void Bot_OnMessage(Object sender, MessageEventArgs e) { + this.MessageIncomming?.Invoke(this, new UserMessageEventArgs(e.Message.Text, e.Message.Chat.Id, e.Message.Date)); + } + + private void Connect() { + this.bot.StartReceiving(); + this.chat = new ChatId(this.settings["chatid"]); + } + + public async override void Send(String message) { + try { + Message x = await this.bot.SendTextMessageAsync(this.chat, message, ParseMode.Default, false, false, 0, new ReplyKeyboardRemove()); + this.MessageSending?.Invoke(this, new UserMessageEventArgs(x.Text, x.Chat.Id, x.Date)); + } catch(ApiRequestException e) { + Console.ForegroundColor = ConsoleColor.Red; + Console.WriteLine(e.Message+" "+e.ErrorCode+" "+e.Parameters); + Console.ForegroundColor = ConsoleColor.White; + } + + } + + public override void Dispose() { + this.bot.StopReceiving(); + this.bot = null; + } + + public async override void Send(String message, String[] buttons) { + try { + KeyboardButton[][] button = new KeyboardButton[(Int32)Math.Ceiling(((Double)buttons.Length)/2)][]; + for(Int32 i = 0; i < buttons.Length; i++) { + Int32 j = (Int32)Math.Floor(((Double)i) / 2); + if (i % 2 == 0) { + button[j] = new KeyboardButton[(j == button.Length - 1) ? ((buttons.Length % 2 == 0) ? 2 : buttons.Length % 2) : 2]; + } + button[j][i % 2] = new KeyboardButton(buttons[i]); + } + Message x = await this.bot.SendTextMessageAsync(this.chat, message, ParseMode.Default, false, false, 0, new ReplyKeyboardMarkup(button,true,true)); + this.MessageSending?.Invoke(this, new UserMessageEventArgs(x.Text, x.Chat.Id, x.Date)); + } catch (ApiRequestException e) { + Console.ForegroundColor = ConsoleColor.Red; + Console.WriteLine(e.Message + " " + e.ErrorCode + " " + e.Parameters); + Console.ForegroundColor = ConsoleColor.White; + } + } + } +} diff --git a/IoT/Connector/User/Telegram/app.config b/ConnectorUserTelegram/ConnectorUserTelegram/app.config similarity index 98% rename from IoT/Connector/User/Telegram/app.config rename to ConnectorUserTelegram/ConnectorUserTelegram/app.config index ee7b0a3..d14bbb2 100644 --- a/IoT/Connector/User/Telegram/app.config +++ b/ConnectorUserTelegram/ConnectorUserTelegram/app.config @@ -1,15 +1,15 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/IoT/Connector/User/Telegram/packages.config b/ConnectorUserTelegram/ConnectorUserTelegram/packages.config similarity index 98% rename from IoT/Connector/User/Telegram/packages.config rename to ConnectorUserTelegram/ConnectorUserTelegram/packages.config index 64d386c..40cda53 100644 --- a/IoT/Connector/User/Telegram/packages.config +++ b/ConnectorUserTelegram/ConnectorUserTelegram/packages.config @@ -1,51 +1,51 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file