55

在阅读了http://core.telegram.org上的大量文档后,我试图使用 Telegram 的 API,我真的很困惑。

我已经注册了我的应用程序并获得了 hash_id 和所有这些东西。但我不知道从哪里开始。

我之前使用过 Spotify 的 API,并且能够使用http://api.spotify.com/v1/method?params:values表单与之交互。

我找不到 Telegram API 的 URL。我也在互联网上搜索了很多,但找不到任何有用的例子。

有人知道如何开始使用 Telegram 的 API 吗?任何帮助,将不胜感激。

4

4 回答 4

33

如果你真的想从头开始了解 Telegram API 开发。我的建议是按照这里的步骤

https://core.telegram.org/mtproto/auth_key

和这里

https://core.telegram.org/mtproto/samples-auth_key

尝试成功生成 AuthKey。

本练习将使您熟悉足够的基础知识,并帮助您建立在 Telegram API 上做进一步工作所需的例程。

我已经为您概述了在这篇SO帖子中入门的基础知识。

另外我认为在线的 API 文档写得不是很好,但是在阅读 API 文档的同时按照上面的步骤一步一步地生成 AuthKey,会让你熟悉 API 作者的语言和写作风格

祝你好运。

于 2015-09-27T15:10:59.813 回答
21

Telegram API 不像普通的 HTTP/Rest API 那样容易使用,你必须与他们的MTProto协议交互。您还必须进行各种加密和解密。Telegram 最近发布了一个新的Bot API,它抽象了一个像样的 HTTP API 背后的所有复杂性。使用https://github.com/arcturial/telegrambotNodeJS中的使用示例:

var TelegramBot = require('telegrambot');
var api = new TelegramBot('<YOUR TOKEN HERE>');

api.getUpdates({ offset: 0 }, function (err, updates) {
    // array of message updates since last poll
    console.log(updates);
});

api.sendMessage({ chat_id: 0, text: 'test' }, function (err, message) {
    // the chat_id is the id received in the getUpdates() call
});

可以使用他们的BotFather应用程序生成令牌。您还可以使用他们的深度链接功能添加指向您网站的链接以启动与机器人的对话,如下所示:

https://telegram.me/triviabot?start=payload

有效负载值可以是您想要的任何值,例如您可能用于验证真人的缓存键等。

我知道它不能直接回答您的问题,但根据个人经验,我发现与 Bot API 交互比尝试实现普通 API 所需的所有复杂性更好。如果您坚持使用他们的普通 API,IP 是149.154.167.40:443(测试)和149.154.167.50:443(生产)。他们在https://my.telegram.org/apps下提供 IP 详细信息。

于 2015-07-05T10:05:50.937 回答
12

我正在寻找一种快速的解决方案来与Telegram API(不是受限的 bot API)交互并将其与 python 项目集成。找到了以下 python 客户端实现,这是一个很大的帮助。希望它可以帮助某人。正如其他人所提到的,电报 API 很难理解,但是您可以在很短的时间内开始使用 Telethon,而无需预先了解电报 API 协议。

https://github.com/LonamiWebs/Telethon

要安装 Telethon,只需键入:

pip install telethon

这是一个简短的代码,展示了使用 API 打印最近的聊天记录是多么容易:

在此处输入图像描述 该示例取自 Telethon github 页面。

于 2017-06-04T13:55:31.563 回答
0

对于 .NET 程序员,现在有WTelegramClient,它允许您调用 Telegram 客户端 API(以用户身份连接,而不是机器人)。

该库非常完整,但使用起来也非常简单。按照GitHub 上的 README进行简单介绍。

它需要永久连接,但可以集成到 ASP.net 网站中。请参阅此常见问题解答,它包含一个示例网站。

于 2022-02-25T21:19:01.080 回答