标签: telegram

如何使用Telegram API实现授权?

我想使用PHP实现多个授权,以便与Telegram REST API进行交互.

我想解决什么任务?嗯,这很简单:几十个用户(他们都有像这里的卡玛(+ 10,-2,+ 1000等)和相关的群体分类:网站管理员和客户)在我的网站上有一个用户档案.在他们达到一定数量的carma之后,由于他们在他们的个人资料中被授权,他们将根据为他们自动生成的Telegram加入私人聊天.

经过一些研究,我发现它非常复杂,因为:

  1. 我从未有过硬件绑定社交网络的API实现经验.
  2. 我看了一下https://core.telegram.org/api/auth,但是如何使用PHP或任何其他语言实现这些函数(例如auth.sendCode)是完全不明显的.如果这些命令应该作为JSON发送到服务器,那么它看起来不像JSON:

      auth.sentCode#efed51d9 phone_registered:Bool phone_code_hash:string send_call_timeout:int is_password:Bool = auth.SentCode;
    
    Run Code Online (Sandbox Code Playgroud)

    它是什么?用哪种语言写的?

    UPD:用TL(Type Language)编写: https: //core.telegram.org/mtproto/TL

  3. 我已经探索了几个客户端的源代码(Webogram,Telegram-cli(tg),tdesktop),我发现了几个https://core.telegram.org/mtproto的实现.

不幸的是,他们都没有支持多方授权,经过一些研究,我不知道在哪里深入挖掘以找到更多信息.

此外,这些实现看起来很庞大和复杂(例如,https://github.com/vysheng/tg): 在此输入图像描述

在那里,我看到一堆服务器(./tg/tgl/tgl.h):

#define TG_SERVER_1 "149.154.175.50"
#define TG_SERVER_2 "149.154.167.51"
#define TG_SERVER_3 "149.154.175.100"
#define TG_SERVER_4 "149.154.167.91"
#define TG_SERVER_5 "149.154.171.5"
Run Code Online (Sandbox Code Playgroud)

我找到了几个可能合适的函数(./tg/tgl/queries.c):

void empty_auth_file (void) {
  if (TLS->test_mode) {
    bl_do_dc_option (TLS, 1, "", 0, TG_SERVER_TEST_1, strlen (TG_SERVER_TEST_1), 443);
    bl_do_dc_option (TLS, 2, "", 0, TG_SERVER_TEST_2, strlen (TG_SERVER_TEST_2), 443);
    bl_do_dc_option (TLS, 3, "", …
Run Code Online (Sandbox Code Playgroud)

php api algorithm rest telegram

30
推荐指数
2
解决办法
3万
查看次数

如何在电报机器人中获得身份验证?

电报机器人现在准备好了.

如果我们使用Web浏览器和网站的类比,电报客户端应用程序就像浏览器客户端.

电报聊天室就像网站一样.

假设我们有一些信息,我们只想限制某些用户,在网站上,我们将进行身份验证.

我们如何在Telegram Bots上实现同样的效果?

有人告诉我,我可以使用深度链接.请参阅此处的说明

我将在下面复制它:

  1. 使用合适的用户名创建机器人,例如@ExampleComBot
  2. 为传入消息设置webhook
  3. 生成足够长度的随机字符串,例如$ memcache_key ="vCH1vGWJxfSeofSAs0K5PA"
  4. 将带有$ memcache_key键的值123放入Memcache中3600秒(一小时)
  5. 向我们的用户显示按钮https://telegram.me/ExampleComBot?start=vCH1vGWJxfSeofSAs0K5PA
  6. 配置webhook处理器以使用以/ start开头的传入消息中传递的参数来查询Memcached.如果密钥存在,则将传递给webhook的chat_id记录为用户123的telegram_chat_id.从Memcache中删除密钥.
  7. 现在,当我们想要向用户123发送通知时,检查他们是否具有字段telegram_chat_id.如果是,请使用Bot API中的sendMessage方法在Telegram中向它们发送消息.

我知道如何做第1步.

我想了解其余部分.

这是我在尝试破译第2步时想到的图像.

在此输入图像描述

因此,当与ExampleBot在应用程序上交谈时,各种电报客户端与Telegram Server进行通信.沟通是双向的.

步骤2建议Telegram Server将通过webhook更新ExampleBot服务器.webhook只是一个URL.

到目前为止,我是对的?

使用它进行身份验证的下一步是什么?

python authentication telegram telegram-bot

30
推荐指数
4
解决办法
3万
查看次数

使用Telegram API for Java Desktop App?

我不是Java编程的新手,但我从未使用过外部库等.现在我想为"Telegram"开源消息传递平台开发一个桌面客户端,当涉及到API使用时我就陷入了困境.

有很多关于Telegram API的文档,可以在https://core.telegram.org/api找到,我已经从github下载了mtproto,telegram-api和tl-core,并从源代码编译了我自己的库jar通过使用gradle.同样,我已经编写了一个小应用程序,用户单击一个按钮并提示输入他的电话号码,我正在使用Java-swing-Libraries和一个ActionListener.

现在应该检查用户输入的电话号码是否已经注册,auth.checkPhone方法似乎能够进行注册.但是我怎么能在我的eclipse项目中引用它呢?我没有在任何类中看到任何方法"checkPhone"!我该怎么办?

请帮助我,我不能帮助自己,我拼命地陷入了我的项目.即使是一个小提示也会有所帮助.

在此先感谢Lukas

java eclipse api swing telegram

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

使用html在电报机器人上发送粗体和斜体文本

我用电报创建了一个机器人

我想将带有HTML页面的粗体和斜体文本发送到bot

我的HTML代码是:

<html>
<head><title>Telegram</title></head>
<body>
    <form method="GET" action="https://api.telegram.org/bot(token)/sendMessage">
        <input type="hidden" name="chat_id" value="@testadminch">
        <input type="hidden" name="parse_mod" value="markdown">
        <textarea name="text"></textarea>
        <input type="submit" value="Submit">
    </form>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

如果我发送*bold*输出应该是粗体但它不起作用

html sendmessage telegram telegram-bot

26
推荐指数
4
解决办法
7万
查看次数

Android Telegram App - > java.lang.UnsatisfiedLinkError:找不到void的实现

不幸的是,几周前在Stackoverflow上删除了一个类似的问题,我必须提出一个新问题.

我试图通过source @ https://github.com/DrKLO/Telegram为Android构建一个自己的Telegram应用程序

我无法让它工作,它在启动时因以下错误而停止,任何关于从哪里开始的想法,我对Android Studio都很新.

11-17 19:55:04.142 2667-2667/org.telegram.messenger E/art: No implementation found for void org.telegram.tgnet.ConnectionsManager.native_setJava(boolean) (tried Java_org_telegram_tgnet_ConnectionsManager_native_1setJava and Java_org_telegram_tgnet_ConnectionsManager_native_1setJava__Z)
11-17 19:55:04.142 2667-2667/org.telegram.messenger D/AndroidRuntime: Shutting down VM
11-17 19:55:04.151 2667-2667/org.telegram.messenger E/AndroidRuntime: FATAL EXCEPTION: main
11-17 19:55:04.151 2667-2667/org.telegram.messenger E/AndroidRuntime: Process: org.telegram.messenger, PID: 2667
11-17 19:55:04.151 2667-2667/org.telegram.messenger E/AndroidRuntime: java.lang.UnsatisfiedLinkError: No implementation found for void org.telegram.tgnet.ConnectionsManager.native_setJava(boolean) (tried Java_org_telegram_tgnet_ConnectionsManager_native_1setJava and Java_org_telegram_tgnet_ConnectionsManager_native_1setJava__Z)
11-17 19:55:04.151 2667-2667/org.telegram.messenger E/AndroidRuntime:     at org.telegram.tgnet.ConnectionsManager.native_setJava(Native Method)
11-17 19:55:04.151 2667-2667/org.telegram.messenger E/AndroidRuntime:     at org.telegram.messenger.ApplicationLoader.onCreate(ApplicationLoader.java:259)
11-17 19:55:04.151 2667-2667/org.telegram.messenger E/AndroidRuntime:     at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1013)
11-17 19:55:04.151 2667-2667/org.telegram.messenger …
Run Code Online (Sandbox Code Playgroud)

java android telegram

23
推荐指数
3
解决办法
9485
查看次数

Telegram Bot如何从频道或组中删除或删除消息或媒体

我想知道删除邮件或文件的示例,如照片

我没有找到这方面的任何功能性教程,

telegram telegram-bot

23
推荐指数
2
解决办法
6万
查看次数

电报如何显示某些网站的图标?

我正在使用Windows上的电报及其在web.telegram.org上的在线版本,当我与朋友分享链接时,Telegram会在该消息中显示某些网站的图标或徽标:

图片

第一个网站是vajehyab.com,它也有一个图标(但不显示该网站图标),第二个是Stackoverflow,当你看到stackoverflow的标识和litle描述旁边显示.

网站是做某事还是有一些允许Telegram访问其徽标的元数据,或者它是一个静态程序形式的电报程序员和一些着名的网站标识?

html css metadata telegram

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

如何创建链接以通过 Telegram 联系特定电话号码?

所以我发现我可以在 HTML 中使用这样的链接:

<a href="https://api.whatsapp.com/send?phone={{phone_number}}" target="_blank">WhatsApp</a>
Run Code Online (Sandbox Code Playgroud)

为了让用户{{phone_number}}直接从网页(通过 WhatsApp 网页)联系。

我的问题是:如何通过 Telegram 做同样的事情而不是 WhatsApp?

先感谢您

html hyperlink contacts telegram telegram-bot

20
推荐指数
3
解决办法
2万
查看次数

如何在C#中使用Telegram API发送消息

我想在C#中使用Telegram API向一个数字发送一条简单的消息.我在GitHub上发现了一些lib,但是我无法使用它们.

谁能提供简单的代码?我可以简单地拨打HTTP电话吗?

c# api telegram

19
推荐指数
6
解决办法
7万
查看次数

Telegram机器人可以读取频道的消息

电报机器人可以读取/访问我或机器人既不是管理员的电报频道吗?

我知道直到去年11月才有可能,但我听说有些人已经这样做了,但到目前为止我无法做到.

我非常感谢您的投入和知识.

Ps任何解决方法都会很棒.

python web-scraping telegram telegram-bot

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