如何解决什么是InputMediaPhoto,以及如何将此类资源的数组发送到Telegram API? 修改后的脚本:参考:
我正在尝试一些用于电报Bot API的Google Apps脚本。
var token = "BOT:TOKEN";
var telegramUrl = "https://api.telegram.org/bot" + token;
var chat_id = "CHAT_ID";
var image1 = "https://telegram.org/img/t_logo.png";
var image2 = "https://www.gstatic.com/images/branding/product/2x/apps_script_48dp.png";
var data = {
method: "post",payload: {
"method": "sendMediaGroup","chat_id": chat_id,"media": [
{"type": "photo","media": image1},{"type": "photo","media": image2},]
}
}
UrlFetchApp.fetch('https://api.telegram.org/bot' + token + '/',data);
}
Telegram Bot API文档说,媒体类型是InputMediaPhoto
的数组。但是我不明白。谁能帮我举个inputMediaPhoto
的示例,使用sendMediaGroup方法发送照片组吗?
我确实尝试了方法sendPhoto
https://core.telegram.org/bots/api#sendphoto,它起作用了。现在,我需要发送一组照片。
解决方法
从您的回复评论中,我可以确认以下情况。
- 可以使用您的
token
。 - 运行当前脚本时,将返回以下错误消息。
{"ok":false,"error_code":400,"description":"Bad Request: can't parse media JSON object"}
从上述情况来看,我认为可能需要将请求正文作为JSON发送。那么下面的修改如何?
修改后的脚本:
从:var data = {
method: "post",payload: {
"method": "sendMediaGroup","chat_id": chat_id,"media": [
{"type": "photo","media": image1},{"type": "photo","media": image2},]
}
}
至:
var data = {
method: "post",payload: JSON.stringify({
"method": "sendMediaGroup",]
}),contentType: "application/json"
}
参考:
,最近,我需要使用Telegram Bot API将集体照片发送到Telegram中,但想不出什么来在此页面上登陆。从@Tanaike获得一些想法并通过@pyTelegramBotAPI进行调试,我完成了一些Python代码,这些代码会将本地文件作为集体照片发送到Telegram。因此,我只想在这里分享它,以使面临相同问题的人们受益。
#!/usr/bin/python
import requests
TOKEN = "random-number:random-alpha-numeric"
CHAT_ID = "-random-number"
request_url = "https://api.telegram.org/bot" + TOKEN + "/sendMediaGroup"
params = {
"chat_id": CHAT_ID,"media":
"""[
{
"type": "photo","media": "attach://random-name-1"},{
"type": "photo","media": "attach://random-name-2"}
]"""
}
files = {
"random-name-1": open("/home/pc/Desktop/watermark/data.png","rb"),"random-name-2": open("/home/pc/Desktop/watermark/data.png","rb")
}
result = requests.post(request_url,params= params,files= files)
print(result.text)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。