Posterior a mirar en diversos repositorios y foros de internet al final descubrimos la resolución que te mostramos pronto.
Solución:
Descargar archivo de soporte de Telegram ahora con getFile
:
Puede verlo en la documentación de la API: https://core.telegram.org/bots/api#getfile
Es posible descargar la imagen desde el servidor de Telegram. Hacer esto:
1. Obtenga el archivo usando el getFile
API
//Telegram link
$telegram_link = 'https://api.telegram.org/bot' . $this->tg_configs['api_key'] . '/getFile?file_id=' . $photo['file_id'];
2. Obtenga la ruta del archivo //Crear cliente guzzle $guzzle_client = new GuzzleClient();
//Call telegram
$request = $guzzle_client->get($telegram_link);
//Decode json
$json_response = json_decode($request->getBody(), true);
if ($json_response['ok'] == 'true') {
//Telegram file link
$telegram_file_link = 'https://api.telegram.org/file/bot' . $this->tg_configs['api_key'] . '/' . $json_response['result']['file_path'];
3. Si usa PHP, use Intervention/Image
para descargar la imagen y guardarla en su servidor.
//Build upload path
$upload_path = public_path() . Config::get('media::media.uploadPath');
//Get image
$image = $thumbnail = InterventionImage::make($telegram_file_link);
//Get mime
$mime = $image->mime();
if ($mime == 'image/jpeg')
$extension = '.jpg';
elseif ($mime == 'image/png')
$extension = '.png';
elseif ($mime == 'image/gif')
$extension = '.gif';
else
$extension = '';
//E# if else statement
//Resize images
$image->resize(Config::get('media::media.mainWidth'), Config::get('media::media.mainHeight'));
$thumbnail->resize(Config::get('media::media.thumbnailWidth'), Config::get('media::media.thumbnailHeight'));
//Build media name
$media_name = Str::random(Config::get('media::media.mediaNameLength')) . $extension;
//Save images
$image->save($upload_path . '/' . $media_name);
$thumbnail->save($upload_path . '/thumbnails/' . $media_name);
Te mostramos las reseñas y valoraciones de los lectores
Tienes la posibilidad difundir este ensayo si si solucionó tu problema.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)