Задать вопрос
duzive
@duzive
Тут должно быть описание

Бот не отправляет клавиатуру, а выдаёт ошибку. Как исправить?

Решил дописать боту клавиатуру. Написал функцию, создающую скелет клавиатуры:
def get_button(label, color, payload=""):
	return { 
	"action": {
                    "type": "text",
                    "payload": json.dumps(payload),
                    "label": label
	},
	"color": color
}


После чего, ставлю обозначения для клавиатуры:

keyboard = {

"one_time": True,
"Buttons": [

	[
	get_button(label="Кнопка 1", 	color="positive"),
	get_button(label="Кнопка 2", color="positive"),
	get_button(label="Кнопка 3", color="positive"),
	get_button(label="Кнопка 4", 	color="negative"),
	]

	]
}

keyboard = json.dumps(keyboard, ensure_ascii=False).encode('utf-8')
keyboard = str(keyboard.decode('utf-8'))


Дальше обозначаю её в "message.send"
Но после запуска, мне выдаётся такая ошибка:
5d84fb257d988414225426.jpeg

Как исправить?
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
total4c
@total4c
Говнокодер
Попробуйте, как представлено ниже:

def get_button(label, color, payload=""):
    return {
        "action": {
            "type": "text",
            "payload": json.dumps(payload),
            "label": label
        },
        "color": color
    }

keyboard = {
    "one_time": True,
    "buttons": [[
        get_button("Test1", "default"),
        get_button("Test2", "default")
    ]]
}

keyboard = json.dumps(keyboard, ensure_ascii=False).encode('utf-8')
keyboard = str(keyboard.decode('utf-8'))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы