标签: telegram-webhook

如何使用api获取Telegram频道更新(帖子)?

我希望通过php获取api的电报频道更新(帖子)!(我不是渠道管理员)

我不确定我能用机器人这样做吗?

如果不可能用电报api怎么办呢?

api telegram php-telegram-bot telegram-webhook

5
推荐指数
1
解决办法
8469
查看次数

Telegram 用户名是否唯一?

当我从事机器人开发时,我发现来自用户的消息有一些名为 的字段username,例如

{
    update_id: 123567890,
    message: {
        message_id: 1,
        from: {
            id: 1234567890,
            is_bot: false,
            first_name: "Kappa",
            last_name: "Pride",
            username: "kappapride",
        }
    ...
}
Run Code Online (Sandbox Code Playgroud)

该字段是否包含唯一值,例如idfield?我知道,我可以与它建立 TG 链接(如@kappapride),但我不确定该字段是否为每个 TG 用户提供。

telegram telegram-bot telegram-webhook

5
推荐指数
1
解决办法
4324
查看次数

防止将 Telegram bot 添加到任何组或频道(允许将其添加到白名单组/频道)

就我阅读 Telegram Bot API 的文档而言,Telegram 不会以任何方式限制对您的 webhook 回调的调用。

我正在创建一个 Telegram Bot,它仅适用于我将列入白名单的组和频道。

我可以过滤掉我在 webhook 回调中收到的消息。但是,恶意用户可以将我的机器人添加到一千个大组中,并可能导致所有其他用户拒绝服务。

即使 Telegram 实施了一些速率限制,此类用户操作仍可能导致所有其他用户拒绝服务。

如何指定 Telegram 机器人可以添加到的组和频道。

security telegram telegram-bot php-telegram-bot telegram-webhook

5
推荐指数
2
解决办法
4408
查看次数

如何在 https 而不是 http 上运行 firebase(函数)模拟器?

会有人知道,如果有一种方法来初始化一个火力地堡功能(使用仿真器来调试本地)与HTTP小号地址,而不是默认的HTTP?我正在尝试调试与 Telegram bot 相关的脚本,而 Telegram 只允许 httpwebhook。

外壳输出如下:

PS C:\Users\<user>\Desktop\tmp_node\functions> firebase emulators:start --only functions
i  emulators: Starting emulators: functions
+  hub: emulator hub started at http://localhost:4400
+  functions: Using node@10 from host.
+  functions: functions emulator started at http://localhost:8443
i  functions: Watching "C:\Users\<user>\Desktop\tmp_node\functions" for Cloud Functions...
+  functions[<function name>]: http function initialized (http://localhost:8443/<endpoint>).
+  emulators: All emulators started, it is now safe to connect.
Run Code Online (Sandbox Code Playgroud)

我需要它从 http s ://localhost:8443/ 开始。

非常感谢您提前!

firebase telegram-bot google-cloud-functions telegram-webhook firebase-cli

5
推荐指数
1
解决办法
611
查看次数

如何小型化电报机器人按钮

$media[]=[\'\xe2\xac\x85\xef\xb8\x8f\',\'\'];

\n\n

这是我的电报机器人按钮。

\n\n

它太大了,我不喜欢这个。

\n\n

如何小型化电报按钮?

\n\n

我想我需要这个:resize_keyboard

\n\n

但我不知道如何使用它来缩小按钮。

\n\n

这是我的功能请求:

\n\n
var_dump(\n    makeHTTPRequest(\'sendMessage\',[\n        \'chat_id\'=>userid,\n        \'text\'=>"Text",\n        \'reply_markup\'=>json_encode(array(\'keyboard\'=> [[\'\xe2\xac\x85\xef\xb8\x8f\',\'Button\',\'\']]))\n    ])\n);\n
Run Code Online (Sandbox Code Playgroud)\n\n

我怎样才能缩小这个按钮?

\n

telegram-bot php-telegram-bot telegram-webhook

4
推荐指数
1
解决办法
8235
查看次数

如何让 Telegram webhook 与 ngrok 一起工作?

我正在开发一个 Telegram 机器人,并希望使用ngrok从webhook接收消息。

设置 webhook 有效。当我将可公开访问的域设置为 URL 时,我实际上收到了预期的消息。现在,当我知道代码正在运行时,我想将消息从 ngrok 服务器传输到本地虚拟机。

$ ngrok http telegrambot.sandbox.loc:80
ngrok by @inconshreveable                                                                                                                    (Ctrl+C to quit)

Session Status                online                                                                                                                         
Session Expires               7 hours, 59 minutes                                                                                                            
Version                       2.2.8                                                                                                                          
Region                        United States (us)                                                                                                             
Web Interface                 http://127.0.0.1:4040                                                                                                          
Forwarding                    http://0955b8f3.ngrok.io -> telegrambot.sandbox.loc:80                                                                         
Forwarding                    https://0955b8f3.ngrok.io -> telegrambot.sandbox.loc:80                                                                        

Connections                   ttl     opn     rt1     rt5     p50     p90                                                                                    
                              0       0       0.00    0.00    0.00    0.00
Run Code Online (Sandbox Code Playgroud)

出色地。现在我设置了 webhook 并得到了类似的响应

{
    "ok":true,
    "result":{
        "url":"https://a200f5f7.ngrok.io",
        "has_custom_certificate":false,
        "pending_update_count":0,
        "max_connections":40
    }
}
Run Code Online (Sandbox Code Playgroud)

ngrok 的 CLI 输出:

HTTP Requests …
Run Code Online (Sandbox Code Playgroud)

telegram ngrok telegram-bot php-telegram-bot telegram-webhook

4
推荐指数
1
解决办法
7851
查看次数

Telegram 机器人可以检测到加入频道活动的新成员吗?

我有一个 Telegram 机器人,我将此机器人设置为频道管理员。现在,当新用户通常加入频道(而不是群组)时,频道上没有消息,我们也无法通过getUpdates方法获取消息。从技术上讲,是否可以发布一条消息说 \xe2\x80\x9cA 新用户已加入频道 \xe2\x80\x9d - 这会捕获 \xe2\x80\x9cnew member\xe2\x80\x9d 事件?让我知道。

\n

telegram python-telegram-bot telegram-bot telegram-webhook node-telegram-bot-api

4
推荐指数
1
解决办法
2万
查看次数

深度链接到电报机器人

我有一个简单的用例。当用户点击下面的链接时,

T.me/MycompanynameBot?start=Microsoft

我想向他展示 3 个内联按钮,分别对应 Microsoft 内的 3 个 Telegram 频道。这可能吗?

关键是机器人必须能够从 URL 检索参数。

谢谢。

telegram python-telegram-bot telegram-bot telegram-webhook node-telegram-bot-api

4
推荐指数
1
解决办法
5773
查看次数

如何验证 webhook 的请求是否来自 Telegram?

我有一个 Telegram 机器人,它设置为与 Telegram webhook 机制配合使用,但如何信任请求并知道它们是否来自 Telegram?

根据 Telegram 文档,我发现有两种方法:

  • 将它们限制为 telegam ip(这很脏,如果出于某种原因 telegam 更改其 ip,我的机器人将关闭,因此这不是一个选项)
  • 为 webhook 设置一个私有长 url,这样只有我的服务器和 telegram 知道该 url(我认为这不是一个足够好的解决方案来保护我的 webhook,如果由于某种原因我的 url 泄漏,则 url 是公开的,每个人都可以假装他们是 telegram,并且发送虚假请求)

这两个是我发现的,有什么我想念的吗?为什么 Telegram 不为其 Webhook 提供像 OAuth2 这样的 rsa 公钥或像 Github 这样的可信令牌或签名?私人网址足以保证安全吗?

telegram telegram-bot telegram-webhook telegram-api

4
推荐指数
1
解决办法
4539
查看次数

Telegram 发送大量重复项

我知道这是Telegram 发送重复的 POST JSON 请求到 webhookTelegram 发送重复的 POST JSON 请求到 webhook 的副本。然而,这个问题没有任何适当的答案,所以:

我有一个 PHP 应用程序处理来自 Telegram 的 webhook 请求。然而,Telegram 无法读取 webhook 已成功运行(尽管 hurl.it 清楚地显示它会针对此类请求发送回 200)。

因此,我让我的机器人多次回复消息,因为 Telegram 无法得知消息已被处理。

问题也在这里描述(我正在使用的库):

https://github.com/irazasyed/telegram-bot-sdk/issues/23

然而,也没有明确的答案......

我该如何修复它?

1) 我的机器人正在使用 webhook 2) 它肯定会返回 200 OK 响应 3) 用户收到机器人 更新的回复 4) 这不是超时。

我的getWebhookInfo回复:

[decodedBody:protected] => Array
    (
        [ok] => 1
        [result] => Array
            (
                [url] => https://bots.chatforge.me/t/test
                [has_custom_certificate] => 
                [pending_update_count] => 3
                [last_error_date] => 1514900657
                [last_error_message] => Unsupported Media …
Run Code Online (Sandbox Code Playgroud)

telegram telegram-bot php-telegram-bot telegram-webhook

3
推荐指数
1
解决办法
7485
查看次数