Telegram BOT - setWebhook не работает

Я новичок в создании ботов для телеграмм, и я действительно не знаю, с чего начать. Единственное, о чем я знаю, это PHP.

Упрощение У меня есть VPS с установленной на нем Windows Server 2008 R2, и я сделал самозаверяющий сертификат, используя

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"

Затем я преобразовал PEM в CER, используя

openssl x509 -inform PEM -in server.pem -outform DER -out server.cer

Я установил сервер WAMP и настроил его для работы с server.cer и server.key в качестве сертификата и ключа, затем я протестировал HTTPS (443), и это сработало.

Затем я установил REST-клиент на хром и отправил URL-адрес файла bot.php и PEM в виде составных данных формы, как указано в официальной документации.

Теперь я получаю эту ошибку:

{
    ok: false,
    error_code: 400,
    description: "Error: Bad webhook: Posix Error: Success: getaddrinfo: Name or service not known"
}

и... теперь я здесь! :| прошу вас о помощи в чем проблема и как мне ее решить

Заранее спасибо :)

ПРИМЕЧАНИЕ. У меня нет домена, я использую IP-адрес своего VPS.


person Ebrahim Tahernejad    schedule 29.10.2015    source источник
comment
Привет! ты решил эту проблему?? не могли бы поделиться с нами?   -  person azerafati    schedule 06.12.2015
comment
нет :( никто и ничто не помогло.   -  person Ebrahim Tahernejad    schedule 08.12.2015
comment
слишком поздно, но только для тех, кто перенаправляет на ваш вопрос, но этот пост может быть полезен.   -  person Seyfi    schedule 19.07.2016


Ответы (1)


Telegram требуется действующий сертификат ssl для вашего домена.

Я расскажу, как я это решил.

Вы можете использовать NGROK, который может открывать локальный IP-адрес в Интернете с включенным временным доменом и https.

Ссылка для установки - https://ngrok.com/

После установки просто запустите в консоли:

ngrok http 127.0.0.1:8003

(используйте ip и port из вашей конфигурации WAMP)

и вы получите бесплатный временный домен (он будет иметь вид https://f9eb2f08.ngrok.io) с включенным https.

Затем установите URL-адрес с вашим новым доменом в виде телеграммы webhook_url, и запросы бота будут отправляться на ваш локальный сервер, пока работает NGROK.

person IYHunko    schedule 03.07.2019