Как сохранить HTML форматирование сообщения после EditMessageText API Telegram? - PullRequest
0 голосов
/ 30 марта 2020

Бот отправляет в чат отформатированное сообщение HTML со встроенной кнопкой:

enter image description here

И это код того, как бот отправляет это сообщение:

    $text = '
<b>Новый заказ на сайте:</b>
№ M-0100772645177 на сумму 25.000 рублей

<b>Информация о заказе:</b>
<i>Товар - </i><a href="#">Антенна 5 дБи WiFi</a>
<i>Доставка - </i>ул. Пушкина, дом Колотушкина
<i>Комментарий - </i>привезите заказ не позже 6 вечера
';

    $data = http_build_query([
        'text' => $text,
        'chat_id' => '100000000'
    ]);

    // Create keyboard
    $keyboard = json_encode([
        "inline_keyboard" => [
            [
                [
                    "text" => "Взять заказ ",
                    "callback_data" => "get_order"
                ]
            ]
        ]
    ]);

    // Send keyboard
    $url = "https://api.telegram.org/bot$token/sendMessage?{$data}&reply_markup={$keyboard}&parse_mode=html";
    $res = @file_get_contents($url);

Если щелкнуть встроенную кнопку, он добавляет к сообщению некоторый текст (также html отформатированный) и изменяет текст встроенной кнопки на другой.

Код, который выполняет это изменение:

<code>$text .= "

<b>Ключ доступа к заказу: </b> <pre>".$accKey."
"; $ data = http_build_query (['text' => $ text, 'chat_id' => $ chat_id, 'message_id' => $ updates-> callback_query-> message-> message_id]); $ клавиатура = json_encode (["inline_keyboard" => [[["text" => "Заказ назначенных продавцу,", "callback_data" => "order_set"]]]]); @file_get_contents ("https://api.telegram.org/bot $ bot_token / editMessageText? { $ data} & reply_markup = {$ keyboard} & parse_mode = html ");

И результат:

enter image description here

Как видите, предыдущий текст потерял HTML форматирование, но последние строки имеют его.

Вопрос: Как сохранить HTML Форматирование предыдущего т ext?

...