Example #1
0
        private async Task HandleNormalMessage(string message)
        {
            //先處理拉麵
            if (message.Equals("來家拉麵吧"))
            {
                var noodleList = new List <string>()
                {
                    "鬼金棒", "壹之穴", "豚人", "麵屋輝", "麵屋緣", "半熟堂", "油組",
                    "Soba Shinee & 柑橘", "美濃屋", "勝王", "麵屋壹慶", "悠然", "鷹流",
                    "蘭丸", "極匠", "小櫻", "涼風庵", "勝千代", "吉天元", "你回來啦",
                    "雞吉君", "雞二", "小川", "真登", "真劍", "神神神神神", "誠屋",
                    "道樂屋台", "羽X食堂", "大和家", "麵屋武藏", "一幻", "NAGI",
                    "花月嵐", "麵屋一登", "旺味麵場", "武藤", "山嵐拉麵", "特濃屋",
                    "麵屋山茶", " 麵屋一騎", "小山拉麵", "通堂", "屯京拉麵", "山頭火",
                    "霸嗎", "双豚", "森住康二", "一番星", "北一家", "熊越岳", "DUE ITALIAN",
                    "太陽番茄麵", "玩笑亭", "博多幸籠", "初", "一風堂"
                };

                var messages = new List <LineText>();


                var shop = noodleList.OrderBy(_ => Guid.NewGuid()).First();
                messages.Add(new LineText {
                    Text = $"吃{shop}啦{_lineEmoji.Eat}{_lineEmoji.Kiss}{_lineEmoji.ShineEye}{_lineEmoji.Laugh}"
                });


                var googleSearchResult = await _googleAPIService.GoogleSearchKeyWord(shop);

                var link1 = googleSearchResult["items"][0]["link"].ToString();
                var link2 = googleSearchResult["items"][1]["link"].ToString();
                messages.Add(new LineText {
                    Text = link1
                });
                messages.Add(new LineText {
                    Text = link2
                });

                await ReplyMessage(messages);
            }
            else if (message.Equals("qk"))
            {
                var lineQuickReply = new LineQuickReply();
                var quickReply     = new QuickReplyContent();
                var items          = new List <Item>();

                items.Add(new Item()
                {
                    Action = new ActionContent()
                    {
                        Text = "測試1", Label = "測試1"
                    }
                });
                items.Add(new Item()
                {
                    Action = new ActionContent()
                    {
                        Text = "測試2", Label = "測試2"
                    }
                });
                items.Add(new Item()
                {
                    Action = new ActionContent()
                    {
                        Text = "測試3", Label = "測試3"
                    }
                });

                quickReply.Items = items;


                lineQuickReply.Text       = "QuickReply測試";
                lineQuickReply.QuickReply = quickReply;



                await ReplyMessage(new List <LineQuickReply> {
                    lineQuickReply
                });
            }
            else
            {
                var talk = string.Empty;
                _chatSetting.Find(c => c.ChatId == _chatId).Talk.TryGetValue(message, out talk);

                if (!string.IsNullOrEmpty(talk))
                {
                    await ReplyMessage(new List <LineText> {
                        new LineText {
                            Text = talk
                        }
                    });
                }
            }
        }