我开发了电报机器人来响应用户的输入。但是当机器人向用户发送按钮时,按钮的文本不可读。
我认为当按钮数量更多或按钮文本长度更大时,电报不会调整按钮的大小。
我正在使用以下代码发送按钮:
buttonoptions.forEach(buttonElement => {
var buttonText = buttonElement;
if (buttonText.length > 30) {
buttonText = buttonText.substring(0, 27);
buttonText = buttonText + "...";
}
var buttonItem = {
text: buttonText,
callback_data: JSON.stringify({
'type': 'button',
'text': buttonText
})
}
buttons.push(buttonItem);
});
var message = {
parse_mode: 'Markdown',
reply_markup: JSON.stringify({
inline_keyboard: [buttons]
})
};
//send message code
那么有什么方法可以迫使电报机器人显示按钮的完整文本?
答案 0 :(得分:0)
Telegram Bot API将一组按钮数组作为cdef mysocket = socket
cdef conn = socket
cdef addr = ()
cdef mouse = Controller()
cdef int payload_size = struct.calcsize(">L")
cdef bytes data = b""
...
字段的值。每个数组代表嵌入式键盘中的一行按钮。
因此,您在同一行上有很多按钮,文本看起来被截断了。为避免这种情况,您可以将按钮放在多行上。
例如:
inline_keyboard
这将导致三行,每行上都有一个按钮。我相信文字不会被截断。
干杯!