Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

888
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!