问题标签 [php-telegram-bot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1564 浏览

php - Telegram Bot - 如何在 PHP 中为每个状态/会话设置超时?

目前我正在电报中创建一个简单的游戏机器人。我只是好奇,在 PHP 中创建一个可以告诉 Telegram Bot 会话或时间是否已经结束的服务的最佳方法是什么。

例如,在我的机器人中,我将为玩家调用的每个游戏创建一个房间。每个玩家有 5 秒的时间回答问题。房间有自己的持续时间,每个玩家也有自己的持续时间(5 秒)。我如何告诉电报机器人:

  1. 房间已经过期(例如 10 分钟),告诉电报将消息发送到房间。
  2. 玩家 A 无法在给定的时间内(5 秒)回答问题。如果玩家 A 没有回答问题,如何告诉电报。然后将消息发送到房间以获取信息。

如果电报调用了api,我可以做这两个问题,但是如果电报没有调用我的api怎么办?

谢谢。任何帮助将不胜感激。

0 投票
1 回答
1120 浏览

telegram-bot - 使用机器人创建新的电报聊天

如果之前未创建此聊天(使用机器人的用户),Telegram 机器人可以回答组中的单个用户吗?换句话说,我需要与用户创建一个新的聊天。

...sendMessage?chat_id=$userId...仅当用户已经与机器人聊天一次时,该方法才有效。

0 投票
1 回答
5364 浏览

php - 通过电报机器人发送表情符号

我正在尝试通过我的电报机器人发送表情符号,但是当我从数组或变量中获取它时,我无法发送它。

如果我在 PHP 中执行此操作,它可以工作:

但我想做这样的事情:

先感谢您。

更新:它没有显示任何内容。我已经尝试过define并且它有效,但我需要数组或变量来有条件地执行它。

我认为引号有问题。

UPDATE2:问题解决了,感谢@CaldwellYSR 提供​​的这些链接

您必须以这种方式发送:

太感谢了。

0 投票
6 回答
5905 浏览

bots - 我的电报机器人不断地发送消息

我开始编写电报机器人程序,但遇到了问题。当我发送 /start 命令时,它会向我发送一条欢迎消息(正如我编写的那样),但它不会发送一次!它像循环一样不断地发送它!这是来源:

0 投票
4 回答
12251 浏览

telegram-bot - 如何获取 Telegram Bot 统计信息?

是否有任何方法可以通过 API、Web 界面或 BotFather 获取机器人的统计信息?或者我必须通过处理来自机器人 API 的更新来收集统计信息?

附言。目前我通过处理来自 bot API 的更新将统计信息存储在 Redis 中,但我希望找到更好的方法。

0 投票
3 回答
2458 浏览

telegram - 一段时间后,我可以使用 chat_id 向 Telegram bot 中的客户发送消息吗?

我想告诉客户启动我的聊天机器人并向我发送用户名和密码,然后我存储他们的 chat_id,并在我想向其中一个人发送消息时使用它。

是否可以?还是chat_id 会过期?

0 投票
1 回答
429 浏览

php - 电报中的自定义键盘不起作用

我用 PHP 为 Telegram bot 中的自定义键盘编写了这段代码,但是当代码执行时它返回 400 错误请求错误);

任何的想法?

代码 :

0 投票
2 回答
7832 浏览

php - 如何在没有用户名的情况下提及 Telegram 用户?

我想提及用户,即使是那些没有用户名的用户

如果用户设置了用户名,我将返回

作为答案,但如果用户没有,我不能这样做。

我尝试使用唯一的用户 ID,例如

但这没有用。

我怎样才能做到这一点?

0 投票
1 回答
60 浏览

telegram - 如何知道消息是否是对话的继续?

这可能是一个愚蠢的问题,但我在文档中没有提到它。

我如何知道消息何时是先前交互的延续?例如,使用 BotFather,您发送 /setdescription,而 BotFather 告诉您发送详细信息。您发送详细信息,BotFather 知道详细信息是指定机器人的描述。

它如何知道我之前指定的机器人?

我想避免使用完全限定的命令(因为没有更好的术语),例如:

并将它们变成:

有小费吗?

编辑:现在,我只是在用户每次完成多步操作中的一个步骤时为其设置“状态”标志。在收到每条消息后,我都会检查该标签,以确定用户是否处于操作过程中。这比较乏味。我想知道 API 中是否有更好的方法/内置的东西。

0 投票
2 回答
19486 浏览

telegram - 使用 sendPhoto(Telegram 机器人)发送动画 GIF

我正在尝试使用 sendPhoto (Telegram 的 Bot API)发送一个动画 GIF 与此请求:

该方法有效,例如,我ok:true回来了,但聊天窗口中的图像是移动 GIF 的静止快照。

如何让动画 GIF 显示?我应该使用另一种方法吗?