3

$media[]=['⬅️',''];

这是我的电报机器人按钮。

它很大,我不喜欢这个。

如何使电报按钮小型化?

我想我需要这个:resize_keyboard

但我不知道如何将其用于小型化按钮。

这是我的功能要求:

var_dump(
    makeHTTPRequest('sendMessage',[
        'chat_id'=>userid,
        'text'=>"Text",
        'reply_markup'=>json_encode(array('keyboard'=> [['⬅️','Button','']]))
    ])
);

我怎样才能缩小这个按钮?

4

3 回答 3

4
var_dump(
    makeHTTPRequest('sendMessage',[
        'chat_id'=>userid,
        'text'=>"Text",
        'reply_markup'=>json_encode(array('keyboard'=> [['⬅️','Button','']],'resize_keyboard' => true))
    ])
);
于 2017-10-16T15:51:53.080 回答
1

你想表达什么?您想更改按钮大小还是谈论表情符号?

如果要调整大小,您的函数应如下所示:

$reply_markup = array(
    'keyboard' => array(['⬅️','Button','']),
    'resize_keyboard' => true,
    'selective' => true
);

var_dump(
    makeHTTPRequest('sendMessage',[
        'chat_id'=>userid,
        'text'=>"Text",
        'reply_markup'=>$reply_markup
    ])
);

您可以将表情符号用作 unicode、短代码或复制原始图像。

如果您使用 PHP,简单的方法是在按钮文本中插入 Unicode 或 UTF-8 字符。这个链接对 PHP Emoji Table更有用

此外,您可以在github其他网站上找到许多不同的示例

例如,我的第一个披萨店机器人 :)

<?php

define('TOKEN', '<token>');
define('URL', 'https://api.telegram.org/bot'.TOKEN.'/');

$bot = json_decode(file_get_contents('php://input'), true);
$chat = $bot["message"]["chat"]["id"];
$user = $bot["message"]["chat"]["first_name"].' '.$bot["message"]["chat"]["last_name"];
$text = $bot["message"]["text"];

$menuMsg = "Hello, ${user}! Enjoy a new Banana Pie. \xF0\x9F\x8D\x8C \xF0\x9F\x98\x8A";

if ( $text == "/start" ){

  $Menu = array(
    array("\xF0\x9F\x8D\xB4 Menu", "\xF0\x9F\x92\xB0 Checkout"),
    array("\xE2\x86\xAA Last oreder", "\xE2\x9D\x8C Cancel")
  );

  send_keyb(
    $chat,
    $menuMsg,
    $Menu
  );
}

function send_keyb( $chat, $msg, $keyb ){

  $content = array(
    'parse_mode' => 'HTML',
    'chat_id' => $chat,
    'text' => $msg,
    'reply_markup' => keyboard($keyb)
  );

  curlGET(
    URL."sendMessage?".http_build_query( $content )
  );
}

function keyboard( $keyb ){

  $reply = array(
    'keyboard' => $keyb,
    'one_time_keyboard' => true,
    'resize_keyboard' => true,
    'selective' => true
  );

  return json_encode( $reply, true );
}

function curlGET( $url ) {

  $menuIthem = curl_init(
    trim( $url )
  );

  curl_setopt(
    $menuIthem,
    CURLOPT_RETURNTRANSFER,
    true
  );

  $res = explode(
    "\nDATA=",
    curl_exec(
      $menuIthem
    )
  );

  curl_close( $menuIthem );

  return json_decode( $res[1], true );
}

?>
于 2017-10-19T20:35:47.737 回答
0

您对内联键盘使用了错误的格式,请参见以下示例:

真棒电报机器人

于 2017-10-16T14:22:11.397 回答