Отправить mp3 файл с php в telegram
Я использую этот API для управления роботом.
https://github.com/mgp25/Telegram-Bot-API
Я хочу отправить MP3 с URL пользователю telegram, поэтому я изменил класс следующим образом и добавил эту строку после строки 399
'audio/mpeg' => '.mp3',
mp3 успешно отправлен, но моя проблема в том, что функция возвращает json, а не конвертирует json в массив; я возвращаю данные и получаю их в конце строки json.
{"ok":true,"result":{"message_id":46328,"from":{"id":115910361,"first_name":"Persian Robot","username":"TPersian_bot"},"chat":{"id":133180682,"first_name":"Mohammad Reza","last_name":"Behzadfar","username":"Lifesoul","type":"private"},"date":1457607231,"audio":{"duration":176,"mime_type":"audio\/mpeg","title":"Mozoo Chiye","performer":"Yasin","file_id":"BQADBAADKwAD2aboBniCRUQ1WE48Ag","file_size":7137408}}}1
и это мой код:
$Telegram = new Telegram(API);
$result = $Telegram->sendAudio(133180682, "https://rjmediamusic.com/media/mp3/Yasin-Mozoo-Chiye.mp3");
var_dump(json_decode(rtrim($result,'1'),TRUE));
1 ответ
Решение
Около 1 в конце json, есть много вопросов-ответов о стековерсии ( например). Но если вы ничего не измените и по-прежнему хотите получить массив, вы можете попробовать это
$json = '{"ok":true,"result":{"message_id":46328,"from":{"id":115910361,"first_name":"Persian Robot","username":"TPersian_bot"},"chat":{"id":133180682,"first_name":"Mohammad Reza","last_name":"Behzadfar","username":"Lifesoul","type":"private"},"date":1457607231,"audio":{"duration":176,"mime_type":"audio\/mpeg","title":"Mozoo Chiye","performer":"Yasin","file_id":"BQADBAADKwAD2aboBniCRUQ1WE48Ag","file_size":7137408}}}1';
var_dump(json_decode(trim($json, '1')));