static void ProcessGroupMessage(Telegram.Bot.Args.MessageEventArgs e) { // test group -482596285 if (e.Message.Text.ToLower().StartsWith("/ann")) { if (e.Message.From.Username == "mcopper" || e.Message.From.Username == "Anatol93" || e.Message.From.Username == "novaoffice") { SendANN(); } } switch (e.Message.Text) { case "/giveaway@SavixRobot": if (String.IsNullOrEmpty(e.Message.From.Username)) { Workflow.SendMessage(e.Message, null, "Please set a username to use this bot!" + lf + "Go to Settings > Edit Profile > Set Username"); return; } WFGiveaway.DoGiveaway(UserController.GetOrAddItem(e.Message.From.Id, e.Message.From.FirstName, e.Message.From.LastName, e.Message.Date, e.Message.From.Username, e.Message.From.LanguageCode), e); break; case "/start@SavixRobot": if (String.IsNullOrEmpty(e.Message.From.Username)) { Workflow.SendMessage(e.Message, null, "Please set a username to use this bot!" + lf + "Go to Settings > Edit Profile > Set Username"); return; } WFWhitelist.DoWhitelist(UserController.GetOrAddItem(e.Message.From.Id, e.Message.From.FirstName, e.Message.From.LastName, e.Message.Date, e.Message.From.Username, e.Message.From.LanguageCode), e); break; } }
static void ParseCommand(User user, Telegram.Bot.Args.MessageEventArgs e) { switch (e.Message.Text.ToLower()) { case "/ann": if (e.Message.From.Username == "mcopper" || e.Message.From.Username == "Anatol93" || e.Message.From.Username == "novaoffice") { SendANN(); } break; case "/start": WFWhitelist.DoWhitelist(user, e); break; case "/giveaway": WFGiveaway.DoGiveaway(user, e); break; default: // print commands break; } }
static void BotClient_OnMessage(object sender, Telegram.Bot.Args.MessageEventArgs e) { // ignore other bots if (e.Message.From.IsBot) { return; } if (Paused) { Workflow.SendMessage(e.Message, null, "Bot is in maintenance mode, please try again later..."); return; } if (e.Message.Text == null) { return; } try { if (!IsMember(e.Message.From.Id, -1001354512306)) { Workflow.SendMessage(e.Message, null, "You must be a member of the Savix group (@savix_org) to continue" + lf + "Please join...."); return; } } catch (Exception ex) { Workflow.SendMessage(e.Message, null, "Error: " + ex.Message + lf + "Please try again..."); return; } if (e.Message.Chat.Type == Telegram.Bot.Types.Enums.ChatType.Group || e.Message.Chat.Type == Telegram.Bot.Types.Enums.ChatType.Supergroup) { ProcessGroupMessage(e); return; } if (String.IsNullOrEmpty(e.Message.From.Username)) { Workflow.SendMessage(e.Message, null, "Please set a username to use this bot!" + lf + "Go to Settings > Edit Profile > Set Username"); return; } User user = UserController.GetOrAddItem(e.Message.Chat.Id, e.Message.Chat.FirstName, e.Message.Chat.LastName, e.Message.Date, e.Message.Chat.Username, e.Message.From.LanguageCode); user.ChatProtocol.Add(e.Message.Text); if (e.Message.Text.StartsWith("/")) { ParseCommand(user, e); } else { switch (user.Workflow) { case "whitelist": WFWhitelist.DoWhitelist(user, e); break; case "giveaway": WFGiveaway.DoGiveaway(user, e); break; default: break; } } }