Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

891
Vistas
cómo enviar una foto desde Telegram bot api (javascript)

Tengo un problema con el envío de la api a través de mensajes de texto de Telegram que llegan pero las imágenes no llegan y no entiendo dónde está el problema. ¿Es posible modificar este código y hacer que envíe imágenes?

 var telegram_bot_id = "api"; var chat_id = "id"; var img; var ready = function () { img = document.getElementById("photo").value; message = "photo: " + img ; }; var sender = function () { ready(); var settings = { "async": true, "crossDomain": true, "url": "https://api.telegram.org/bot" + telegram_bot_id + "/sendPhoto", "method": "POST", "headers": { "Content-Type": "application/json", "cache-control": "no-cache" }, "data": JSON.stringify({ "chat_id": chat_id, "text": message }) }; $.ajax(settings).done(function (response) { console.log(response); window.location.href = "index.html"; }); document.getElementById("photo").value = ""; return false; };

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Para poder enviar una foto a través del método sendPhoto , debe enviar un archivo de imagen adecuado o una cadena que represente una URL válida .

De acuerdo con el código que publicaste, estás enviando a la solicitud HTTP como parámetros del cuerpo el chat_id, el mensaje de texto en sí y eso es todo.

El método sendPhoto no espera un campo de texto , eso se usa en el método sendMessage .

En su caso, dado que está intentando enviar a través del chatbot de Telegram una imagen tomada de la entidad HTML, que en este caso no es la imagen en sí sino su ruta en su servidor web , debe cambiar el cuerpo de la solicitud POST y configurar el URL de la imagen como parámetro de la propia solicitud.

Para concluir, si desea agregar el mensaje de texto , el método sendPhoto le permite agregarlo pero como título .

Por ejemplo:

 var telegram_bot_id = "api"; var chat_id = "id"; var img; var ready = function () { img = "http://your-website.com/imagepath/imagename.png"; }; var sender = function () { ready(); var settings = { "async": true, "crossDomain": true, "url": "https://api.telegram.org/bot" + telegram_bot_id + "/sendPhoto", "method": "POST", "headers": { "Content-Type": "application/json", "cache-control": "no-cache" }, "data": JSON.stringify({ "chat_id": chat_id, "photo": img, "caption": message }) }; $.ajax(settings).done(function (response) { console.log(response); window.location.href = "index.html"; }); return false; };
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda