标签: telegram-bot

使用php在电报上创建自己的机器人

我几天前在youtube上看过这个教程.这非常有趣,所以我决定制作一个自己的机器人.我使用教程中的代码作为模板:

<?php

$bottoken = "*****";
$website = "https://api.telegram.org/bot".$bottoken;


$update = file_get_contents('php://input');

$updatearray = json_decode($update, TRUE);

$length = count($updatearray["result"]);
$chatid = $updatearray["result"][$length-1]["message"]["chat"]["id"];
$text = $updatearray["result"][$length-1]["message"]["text"];

if($text == 'hy'){
    file_get_contents($website."/sendmessage?chat_id=".$chatid."&text=hello");
} 
elseif($text == 'ciao'){
    file_get_contents($website."/sendmessage?chat_id=".$chatid."&text=bye");
}
Run Code Online (Sandbox Code Playgroud)

如果我手动执行脚本,脚本会起作用.但是,当我使用webhook时,它不再起作用了.该教程说这$update = file_get_contents('php://input');是正确的方式,以前使用$update = file_get_contents($website."/getupdates");.我的问题如何php://input自动执行脚本?该脚本位于"one.com"的服务器上,证书也来自"one.com".

php telegram-bot

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

电报BOT - setWebhook不工作

我是新手创建电报机器人,我真的不知道从哪里开始.我唯一知道的是PHP.

简单化我在其上安装了Windows Server 2008 R2的VPS,并且我使用了自签名证书

openssl req -newkey rsa:2048 -sha256 -nodes -keyout server.key -x509 -days 365 -out server.pem -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=YOURDOMAIN.EXAMPLE"
Run Code Online (Sandbox Code Playgroud)

然后我用PEM将PEM转换为CER

openssl x509 -inform PEM -in server.pem -outform DER -out server.cer
Run Code Online (Sandbox Code Playgroud)

我安装了WAMP服务器并将其设置为使用server.cer和server.key作为证书和密钥然后我测试了HTTPS(443)并且它工作正常.

然后我在chrome上安装了一个REST客户端,并将bot.php和PEM文件的URL作为多部分表单数据发送,正如官方文档所述.

现在我收到这个错误:

{
    ok: false,
    error_code: 400,
    description: "Error: Bad webhook: Posix Error: Success: getaddrinfo: Name or service not known"
}
Run Code Online (Sandbox Code Playgroud)

而且......我现在在这里!:| 向你寻求帮助有什么问题,我应该如何解决这个问题

提前致谢 :)

注意:我没有域名我正在使用我的VPS的IP

php ssl webhooks telegram-bot

6
推荐指数
1
解决办法
2077
查看次数

如何以编程方式检查电话号码中是否注册了手机号码?

我想知道什么是最好的方法来知道手机号码是否已经注册到Telegram信使?

谢谢.

telegram python-telegram-bot telegram-bot

6
推荐指数
1
解决办法
2702
查看次数

电报机器人和方法getUpdates

我有一个关于Telegram机器人的问题,几周前我创建了一个bot,它可以正常工作,但是getUpdates方法的行为异常;确实,如果我使用链接:

https://api.telegram.org/bot<token>/getUpdates
Run Code Online (Sandbox Code Playgroud)

现在我看不到任何消息,但是如果我启动一个新的漫游器,则此链接可以像创建另一个漫游器的第一天一样正常工作。

在特定时间间隔后,此链接会停止工作吗?有办法重新启用它吗?

提前致谢

telegram-bot

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

如何检测用户是否删除Telegram Bot聊天?

是否可以通过API检查是否有人删除了Telegram中的Bot Chat?

我的测试:目前,如果用户删除聊天,新消息将不会停止发送给用户.

telegram telegram-bot

6
推荐指数
3
解决办法
5258
查看次数

电报机器人在几天后发送消息问题

我的电报信息有问题,它是问题概述:

您将通过/启动命令我的机器人开始发送消息,但是几天之后它将停止发送消息,如果客户端传递了一些消息,客户端机器人再次开始发送消息,我可以做什么来定义它将停止多少天后,是否文档在哪里?也许有些配置错了?谁有这种情况请回复?

我也总是这个api呼叫发送消息:

https://api.telegram.org/bot{TELEGRAM_BOT}/sendMessage?disable_web_page_preview=false&chat_id=$chat_id&text={TEXT}
Run Code Online (Sandbox Code Playgroud)

php telegram-bot

6
推荐指数
1
解决办法
2001
查看次数

Telegram Bot webhook 真的很慢

我已经创建了一个电报机器人并按照文档中的描述设置了一个 webhook。出于测试目的,我已经设置了它,因此一旦您向机器人发送一条消息,它就会用相同的消息回复。

现在我遇到的问题是来自电报的更新非常缓慢,而且我还没有收到一些消息。我是不是遗漏了什么,还是 webhook 方法真的很慢?

bots webhooks telegram-bot

6
推荐指数
1
解决办法
2579
查看次数

无论如何设置Telegram Webhook而不设置https连接

我想设置,Telegram Webhook但我没有httpsURL,我也不想处理ssl证书.

我可以使用https URL或不设置https证书来解决此问题吗?

电报webhook desc:https://core.telegram.org/bots/api#setwebhook

ssl https http webhooks telegram-bot

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

如何在Heroku上设置python-telegram-bot webhook?

我正在使用python-telegram-bot包装器,我一直在尝试在Heroku上托管一个简单的回声电报机器人,以适应用于Google App Engine 的预先存在的示例以及维基上的webhook指南,但无济于事.

我似乎无法使webhook工作,并且机器人能够正确地回显消息.

我似乎无法弄清楚什么是错的,所以任何帮助指出我正确的方向将非常感谢!

我的尝试详述如下.

import telegram
from os import environ
from telegram.ext import Updater
from flask import Flask, request
from credentials import TOKEN, APP_URL

app = Flask(__name__)

global bot
bot = telegram.Bot(token=TOKEN)


@app.route('/' + TOKEN, methods=['POST'])
def webhook_handler():
    if request.method == "POST":
        # retrieve the message in JSON and then transform it to Telegram object
        update = telegram.Update.de_json(request.get_json(force=True))

        chat_id = update.message.chat.id

        # Telegram understands UTF-8, so encode text for unicode compatibility
        text …
Run Code Online (Sandbox Code Playgroud)

python-telegram-bot telegram-bot

6
推荐指数
1
解决办法
6082
查看次数

新的Telegram机器人将几乎空的JSON返回给API

我想创建一个Telegram机器人,所以我按照说明进行操作并得到:

做完了!祝贺您的新机器人。您可以在t.me/RonGuruBot中找到它。现在,您可以添加有关机器人的部分和个人资料图片的描述,请参阅/ help以获取命令列表。顺便说一句,当您完成酷机器人的创建后,如果您想要一个更好的用户名,请ping我们的Bot支持。在执行此操作之前,只需确保机器人已完全运行即可。

使用此令牌访问HTTP API:318659684:AAFdR9YE4D​​Ewg1NQitSIuifPotoA-3f6cUw

但是,当我在Chrome中输入以下网址时:

https://api.telegram.org/bot318659684:AAFdR9YE4DEwg1NQitSIuifPotoA-3f6cUw/getUpdates

返回的JSON是:

{“ ok”:真,“结果”:[]}

而且文档使我相信JSON回复中应该包含更多内容。

  • 还应该有更多吗?
  • 我应该更改什么才能获得正确的JSON回复?

json telegram telegram-bot

6
推荐指数
3
解决办法
3889
查看次数

标签 统计

telegram-bot ×10

php ×3

telegram ×3

webhooks ×3

python-telegram-bot ×2

ssl ×2

bots ×1

http ×1

https ×1

json ×1