Help Module Curl - не получается запуск на Linux

georgeml

Скриптер
Постоялец
Регистрация
12 Сен 2017
Сообщения
595
Симпатии
314

sonyx

Заблокированные
Регистрация
8 Июн 2017
Сообщения
473
Симпатии
235
neygomon по поводу
curl_setopt_cell(curl, CURLOPT_PORT, 443)
а есть ли смысл, если url сразу идет с https:// ???

Вот с принудительным запросом ответа еще вариант)
C++:
public send()
{
    new szFullMessage[200]
    formatex(szFullMessage, charsmax(szFullMessage), "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s", TOKEN, CHAT_ID, MESSAGE)
  
    new Handle:curl = curl_init()
  
    curl_setopt_string(curl, CURLOPT_URL, szFullMessage)
    curl_setopt_cell(curl, CURLOPT_PORT, 443)
    curl_setopt_cell(curl, CURLOPT_RETURNTRANSFER, 1)
  
    if(curl_thread_exec(curl, "OnExecComplete", 0) != CURLE_OK) {
        log_amx("[cURL] Query send failed");
    }
    else {
        log_amx("[cURL] Query sended successfully");
    }
}
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
говорит неизвестный символ
CURLOPT_RETURNTRANSFER
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
а теперь посмотри на свое говно, а потом на то, что я тебе показывал...
ну и если ты не видишь разницы, то считаю тему мусором...
не с той версии скинул, с копии резервной...

Код:
#include <amxmodx>
#include <curl>

#define PLUGIN  "Telegram send message"
#define AUTHOR  "BeasT"
#define VERSION "1.0"

#define MESSAGE "тест"
#define CHAT_ID ""
#define TOKEN ""

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    register_concmd("vksend", "send");
}

public OnExecComplete(Handle:curl, CURLcode:code, const response[], any:eventType)
curl_close(curl)

public send()
{
new szFullMessage[200]
formatex(szFullMessage, charsmax(szFullMessage), "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s", TOKEN, CHAT_ID, MESSAGE)

new Handle:curl = curl_init()

curl_setopt_string(curl, CURLOPT_URL, szFullMessage)
curl_setopt_cell(curl, CURLOPT_PORT, 443)
curl_setopt_cell(curl, CURLOPT_RETURNTRANSFER, 1)

if(curl_thread_exec(curl, "OnExecComplete", 0) != CURLE_OK) {
log_amx("[cURL] Query send failed");
}
else {
log_amx("[cURL] Query sended successfully");
}
}
 

neygomon

Его Темнейшество :j
Заблокированные
Пользователь
Регистрация
8 Июн 2017
Сообщения
804
Симпатии
382
Пол
Мужской
никто даже не догадался логи посмотреть...

CURLE_UNSUPPORTED_PROTOCOL... вот что возвращает curl
 

neygomon

Его Темнейшество :j
Заблокированные
Пользователь
Регистрация
8 Июн 2017
Сообщения
804
Симпатии
382
Пол
Мужской

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
но с винды на ссл отправляется на ура Comando
 

sonyx

Заблокированные
Регистрация
8 Июн 2017
Сообщения
473
Симпатии
235
он сам по себе не поддерживает SSL
в сорцах никаких упоминаний даже, не говоря про CURLOPT
Для работы с по протоколу HTTPs необходимо что бы libcurl была собрана с поддержкой SSL, а также необходимы соответствующие dll-ки ( из OpenSSL )
Если библиотека собрана без SSL, то ф-ция curl_easy_perform() вернет код CURLE_UNSUPPORTED_PROTOCOL (1) "Unsupported protocol"
Пруф: Библио libcurl в С++ для о HTTP - CyberForum.ru - м памми и дминов
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
Если сейчас методом сокетов решать вопрос, вкратце опишите алгоритм, может у меня методом "гугла" получится вообще самому решить вопрос.
Т.е. сам алгоритм примерно понимаю:
С сервера сокетами отправлять "куда-то там"(на какой-то http сайт) инфу (каким образом, чтобы проще было найти инфу)
Чтобы в эту инфу я мог вложить любые данные
Чтобы эти данные приняла какая-то пхп страница
Чтобы эта страница отправила эти данные на апи тлг
 

neygomon

Его Темнейшество :j
Заблокированные
Пользователь
Регистрация
8 Июн 2017
Сообщения
804
Симпатии
382
Пол
Мужской
такое попробуй потыкать...
коннект на https есть.
осталось с параметрами запроса разобраться.
в этом я дно)
 

Вложения

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
HTML:
test.php/?piska=1
:Tatice03:
Спасибо, сейчас попробую!
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
Чет не то пальто походу
Код:
formatex(szSendBuffer, charsmax(szSendBuffer), "GET bot%s/sendMessage?chat_id=%s&text=%s HTTP/1.1^nUser-Agent: curl/7.38.0^nHost: %sAccept: */*^n^n", TOKEN, CHAT_ID, MESSAGE, HOST);
 

neygomon

Его Темнейшество :j
Заблокированные
Пользователь
Регистрация
8 Июн 2017
Сообщения
804
Симпатии
382
Пол
Мужской
Чет не то пальто походу
Код:
formatex(szSendBuffer, charsmax(szSendBuffer), "GET bot%s/sendMessage?chat_id=%s&text=%s HTTP/1.1^nUser-Agent: curl/7.38.0^nHost: %sAccept: */*^n^n", TOKEN, CHAT_ID, MESSAGE, HOST);
читай еще раз...
осталось с параметрами запроса разобраться.
в этом я дно)
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
Ну мы же тут не вдвоём)
Вот что получается
Код:
[17:06:22]    L 09/13/2017 - 14:52:31: Log file started (file "cstrike/addons/amxmodx/logs/tgsend.log") (game "cstrike") (amx "1.8.3-Re")
[17:06:22]    L 09/13/2017 - 14:52:31: GET bot(скрыто, но правильно)/sendMessage?chat_id=(скрыто, но правильно)&text=тест HTTP/1.1
[17:06:22]    User-Agent: curl/7.38.0
[17:06:22]    Host: api.telegram.orgAccept: */*
 

neygomon

Его Темнейшество :j
Заблокированные
Пользователь
Регистрация
8 Июн 2017
Сообщения
804
Симпатии
382
Пол
Мужской
formatex(szSendBuffer, charsmax(szSendBuffer), "GET /bot%s/sendMessage?chat_id=%s&text=%s HTTP/1.1^nUser-Agent: curl^nHost: %s^r^n^r^n", TOKEN, CHAT_ID, MESSAGE, HOST);
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
Код:
L 09/13/2017 - 15:56:53: GET /bot()/sendMessage?chat_id=()&text=ТЕСТ ТЕСТ ТЕСТ HTTP/1.1
User-Agent: curl
Host: api.telegram.org
Но в телегу всё-равно не приходит
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
где-то ведь уже рядом
 

BeasT

Anubis
Пользователь
Регистрация
26 Июн 2017
Сообщения
390
Симпатии
53
Пол
Мужской
Код:
formatex(szSendBuffer, charsmax(szSendBuffer), "GET api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s HTTP/1.1^nUser-Agent: curl^nHost: %s^r^n^r^n", TOKEN, CHAT_ID, MESSAGE, HOST);
Так есть смысл пробовать?
 
Сверху Снизу