Example #1
0
        // Update awaitable message in database
        public void UpdateAwaitableMessage(TelegramWebhookUpdate result)
        {
            TelegramAwaitable awaitable = new TelegramAwaitable();

            awaitable          = db.Awaitable.Where(i => i.UserId == result.message.from.id && i.Awaiting == true).FirstOrDefault();
            awaitable.Awaiting = false;
            db.SaveChanges();
        }
Example #2
0
        // Insert awaitable message in database
        public void InsertAwaitableMessage(TelegramWebhookUpdate result)
        {
            TelegramAwaitable awaitable = new TelegramAwaitable();

            awaitable.UserId       = result.message.from.id;
            awaitable.AwaitableTag = "event";
            awaitable.Awaiting     = true;
            db.Awaitable.Add(awaitable);
            db.SaveChanges();
        }
Example #3
0
        // Process awaitable message from user
        public async Task ProcessAwaitableMessage(TelegramAwaitable awaitable, TelegramWebhookUpdate result)
        {
            // Reply on awaitable
            SendMessageObject sendMessage = new SendMessageObject();

            sendMessage.chat_id = result.message.chat.id.ToString();
            sendMessage.text    = "Reply from ProcessAwaitableMessage method, need to implement this method.";

            await SendTextMessage(sendMessage);

            // TODO: Implement logics under /event call



            // Update awaitable message in database
            UpdateAwaitableMessage(result);
        }
Example #4
0
        // Process initial message from user
        public async Task ProcessInitialMessage(TelegramWebhookUpdate result)
        {
            if (result.message.text == "/event")
            {
                SendMessageObject sendMessage = new SendMessageObject();
                sendMessage.chat_id = result.message.chat.id.ToString();
                sendMessage.text    = "Welcome " + result.message.chat.first_name + " on .NET BOT self help service. Please send your location to know more about events.";

                // Insert awaitable in database
                InsertAwaitableMessage(result);

                await SendTextMessage(sendMessage);
            }
            else if (result.message.text == "/hello")
            {
                SendMessageObject sendMessage = new SendMessageObject();
                sendMessage.chat_id = result.message.chat.id.ToString();
                sendMessage.text    = "Hi " + result.message.chat.first_name + ", I'm a .NET BOT. Just send me /help to begin.";

                await SendTextMessage(sendMessage);
            }
            else if (result.message.text == "/help")
            {
                SendMessageObject sendMessage = new SendMessageObject();
                sendMessage.chat_id = result.message.chat.id.ToString();
                sendMessage.text    = "Nice to meet you " + result.message.chat.first_name + ", i can help you to find events around you. Just send me /event to begin.";

                await SendTextMessage(sendMessage);
            }
            else
            {
                SendMessageObject sendMessage = new SendMessageObject();
                sendMessage.chat_id = result.message.chat.id.ToString();
                sendMessage.text    = ":( I don't get this. Send /help to begin.";

                await SendTextMessage(sendMessage);
            }
        }