Почему не отправляются сообщения в Telegram чат\канал\группу через бота?
есть код
else if($message === '/today_orders' or $message === '/today_orders@name_bot'){
$id = '';
$tp = '';
$today = date("m/d/Y");
$users = $db->query('SELECT id, type, telegram FROM users');
while($row = mysqli_fetch_array($users)){
if($row['telegram'] == $user_id){
$list_users[] = array('id' => $row['id'], 'type' => $row['type'], 'telegram' => $row['telegram']);
$id = $row['id'];
$tp = $row['type'];
break;
}
}
$orders = $db->query('SELECT * FROM orders ORDER BY date DESC, time DESC');
while($row = mysqli_fetch_array($orders)){
if($tp === 'admin' or $tp === 'partner' and $row['send'] === $id or $tp === 'perf' and $row['perf'] === $id){
if($row['date'] === $today){
// $message = $row['serv'] . ' ' . $row['type'] . '\n' . $row['date'] . ' в ' . $row['time'] . '\n' . $row['cash'];
$message =
"\n\n<b>Услуга</b>\n"
. $row['serv'] . " | " . $row['type']
. "\n\n<b>Дата и время</b>\n"
. $row['date'] . " в " . $row['time']
. "\n\n<b>Комментарий от клиента</b>\n"
. $row['mssg']
. "\n\n<b>Комментарий от администратора</b>\n"
. "lolololol"
. "\n\n<b>Исполнитель</b>\n"
. "\n\n<b>Отправитель</b>\n";
if($row['stat'] === 'wait'){
$keyboard =
[
'inline_keyboard' =>
[
[
[
'text' => 'Отменить',
'callback_data' => 'nope_' . $row['iden']
],
[
'text' => 'Завершить',
'callback_data' => 'done_' . $row['iden']
]
]
]
];
$message .= '&reply_markup=' . json_encode($keyboard);
}
file_get_contents("http://api.telegram.org/bot{$telegram_token}/sendMessage?chat_id={$chat_id}&parse_mode=html&text=" . urlencode($message));
}
}
}
}
Я получаю команду от бота /today_orders, далее ищу id пользователя в своей таблице пользователей (попадают туда с помощью регистрации), потом достаю внутренний id (случайная 16 байтовая строка) и уже в таблице заказов нахожу данные и отправляю в чат. Сообщение перестает отправляться, когда я добавляю последние 2 строчки в переменной message или если их удалить и заменить lolololol на $row['mssg_to_client'] (колонка в таблице) так же сообщение не отправится. Никаких ошибок не получаю при отладке. Бота делаю первый раз. php знаю плохо (я по фронту). Так значит есть максимальная длина сообщения? Я читал, что это 4090 символов. Кажется у меня явно меньше.
p.s urlencode использую для кодирования символов. Функция не доделана. Написал для теста этот кусок.
p.s strlen(urlencode($message)) равен от 1063 до 1416 т.е условно говоря в 4 раза меньше лимита.
Можете сказать, что не так?