コード例 #1
0
        public JObject BuildInlineMarkupKeyboard(KeyboardPage keyboard)
        {
            var buttons = new JArray();

            foreach (var row in keyboard.Rows)
            {
                if (row.Buttons.Count < 1)
                {
                    continue;
                }

                buttons.Add(new JArray());

                foreach (var button in row.Buttons)
                {
                    (buttons[buttons.Count - 1] as JArray).Add(GetButton(button));
                }
            }

            return(new JObject
            {
                { "buttons", buttons },
                { "inline", true }
            });
        }
コード例 #2
0
        public JObject BuildReplyMarkupKeyboard(KeyboardButton menu, KeyboardPage keyboard, bool isOneTime = false)
        {
            var buttons = new JArray();

            foreach (var row in keyboard.Rows)
            {
                if (row.Buttons.Count < 1)
                {
                    continue;
                }

                buttons.Add(new JArray());

                foreach (var button in row.Buttons)
                {
                    (buttons[buttons.Count - 1] as JArray).Add(GetButton(button));
                }
            }

            if (menu != null)
            {
                buttons.Add(new JArray
                {
                    GetButton(menu)
                });
            }

            return(new JObject
            {
                { "one_time", isOneTime },
                { "buttons", buttons },
                { "inline", false }
            });
        }
コード例 #3
0
        public JObject BuildReplyMarkupKeyboard(KeyboardButton menu, KeyboardPage keyboard, bool isOneTime = false)
        {
            var buttons = new JArray();

            foreach (var row in keyboard.Rows)
            {
                buttons.Add(new JArray());

                foreach (var button in row.Buttons)
                {
                    (buttons[buttons.Count - 1] as JArray).Add(button.Name);
                }
            }

            if (menu != null)
            {
                buttons.Add(new JArray
                {
                    { menu.Name }
                });
            }

            return(new JObject
            {
                { "one_time_keyboard", isOneTime },
                { "resize_keyboard", true },
                { "keyboard", buttons }
            });
        }
コード例 #4
0
        public JObject BuildInlineMarkupKeyboard(KeyboardPage keyboard)
        {
            var buttons = new JArray();

            foreach (var row in keyboard.Rows)
            {
                buttons.Add(new JArray());

                foreach (var button in row.Buttons)
                {
                    (buttons[buttons.Count - 1] as JArray).Add(GetButton(button));
                }
            }

            return(new JObject
            {
                { "inline_keyboard", buttons }
            });
        }
コード例 #5
0
        public JObject BuildKeyboard(KeyboardPage keyboard, bool inline = false)
        {
            var buttons = new JArray();

            foreach (var row in keyboard.Rows)
            {
                buttons.Add(new JArray());

                foreach (var button in row.Buttons)
                {
                    (buttons[buttons.Count - 1] as JArray).Add(button.Name);
                }
            }

            return(new JObject
            {
                { "one_time_keyboard", false },
                { "resize_keyboard", true },
                { "keyboard", buttons }
            });
        }
コード例 #6
0
        public JObject BuildKeyboard(KeyboardPage keyboard, bool inline = false)
        {
            var buttons = new JArray();

            foreach (var row in keyboard.Rows)
            {
                buttons.Add(new JArray());

                foreach (var button in row.Buttons)
                {
                    (buttons[buttons.Count - 1] as JArray).Add(new JObject
                    {
                        { "action", new JObject
                          {
                              { "type", "text" },
                              { "label", button.Name },
                              { "payload", new JObject
                                {
                                    { "command", button.Executor }
                                }.ToString() }
                          } },
コード例 #7
0
 public JObject BuildKeyboard(KeyboardAction menu, KeyboardPage keyboard, bool isOneTime = false)
 {
     return(null);
 }