Иконка ресурса

AmxxCurl 1.1.1

Нет прав для скачивания
Сообщения
197
Реакции
16
Помог
1 раз(а)
SISA, я, конечно, не уверен, но возможно есть решение на php форумах. погуглил сейчас ошибку и да, темы есть. может найдешь ответ, пока здесь что-то решат
 
Последнее редактирование:
Сообщения
2,491
Реакции
2,790
Помог
61 раз(а)
SISA, сам curl поддерживает smtp протокол. Но вот само письмо имеет формат MIME 1.0. И я скажу честно это совсем не простой формат ввиду свое древности. Один из приколов это строгая структура content-type-ов и base64 по 60 (если не изменяет память) символов на строку. Конечно можно тупо текст отправить и он кое-как да будет отображаться. А формировать красивый лист на павне то еще занятие. Я бы лучше посоветовал один из ниже перечисленных вариантов:
1. PHP бек с swiftmailer и курлом запрос на него
2. Использовать сервисы такие как mailchimp, mailgun и другие. Почти все они платные: но также много из них имеют бесплатные варианты с лимитами (например мейлган до 1к писем в день). Ну и много из них умеют успешно отправлять листы без попадания в спам, шаблоны писем, подписки и REST API, что вам на руку.

Все это конечно имхо. Но имею неплохой опыт в отправке email с пхп (и smtp протокол и mime формат).
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
2kucklovod

Гуглил, даже есть примеры аналогичного кода на C++ и он идентичен моему по сути. Тока у меня сервер падает при его использовании :scratch_one-s_head:

2fantom

С прослойками через PHP связываться не хочу, слишком не надежно. Готов страдать и формировать тело письма как надо, понять бы только, как его вообще отправить, хоть пустое, хоть какое. Мне оно для мелких уведомлений нужно, не более. На счет mailchimp, mailgun посмотрю, спасибо, не знал о таком, просто яша он надежный с хорошими каналами и доступом...
 
Сообщения
197
Реакции
16
Помог
1 раз(а)
SISA, а что если делать отправку со стороннего php скрипта?
 
Сообщения
82
Реакции
83
Помог
5 раз(а)
kucklovod, так fantom об этом и говорил. Курлом дергать апиху на ПХП, которая будет слать почту.
 
Сообщения
1,408
Реакции
182
Помог
2 раз(а)
можно Outlook попробовать
11 Окт 2019
прикрутить
 
Сообщения
47
Реакции
194
Помог
1 раз(а)
в скрипте нужно указать: (вечером посмотрю подробнее как обойтись без этого)
#pragma dynamic 90000

потом нормально заполнить:
#define SMTP_USERNAME "Почта с которой отправляются письма"
#define SMTP_PASSWORD "Парольк от почты с которой отправляются письма"
#define SMTP_URL "smtps://smtp.yandex.ru"

и убрать:
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
в скрипте нужно указать: (вечером посмотрю подробнее как обойтись без этого)
#pragma dynamic 90000

потом нормально заполнить:
#define SMTP_USERNAME "Почта с которой отправляются письма"
#define SMTP_PASSWORD "Парольк от почты с которой отправляются письма"
#define SMTP_URL "smtps://smtp.yandex.ru"

и убрать:
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0);
Данные для подключения, я, разумеется указывал (но не выкладывать же их ?). С "dynamic 90000" пошла жара, сообщение отправилось.

P.S. Кстати, вчера пытался подключать такой же вариант от mail.ru и там так же падало. Т.е. проблема общая.
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
В целом, почта шлется, но и без последствий такое варварство не обошлось... В процессе отправки сервер жестко пролагивает ?
 
Сообщения
47
Реакции
194
Помог
1 раз(а)
проблема пролага оказалась не из-за #pragma dynamic 90000, буду подробнее разбираться
 
Сообщения
47
Реакции
194
Помог
1 раз(а)
Сообщения
47
Реакции
194
Помог
1 раз(а)
В общем проблема в libcurl, завершение передачи в smtp сделано синхронно, и тудушка в сорцах оставлена, мол надеемся кто-нибудь когда-нибудь поправит ?
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
Вопрос к автору.

В некоторых случаях не приходит кэлбэк с CURLOPT_WRITEFUNCTION, при этом, кэлбек с curl_easy_perform приходит.

Получается так, что данные не прочитаны, но Curl сессия завершена ? :scratch_one-s_head:Это вообще нормальное повешение для плагина или самого Curl ?

Пробовал ставить всевозможные CURLOPT_CONNECTTIMEOUT и CURLOPT_TIMEOUT, но не помогло. Единственное, что кое-как решает ситуацию, это отсылка curl_easy_perform в кэлбеке самого curl_easy_perform (получается крайне неприятный цикл), ну или надо колхозить какой-то таск...

Само по себе такое поведение кажется подозрительным ну и провоцируется масса сопутствующих проблем ?
 
Сообщения
47
Реакции
194
Помог
1 раз(а)
SISA, а есть какой-нибудь примерчик? кода
вообще должен вызываться всегда. Даже если нет данных, то всё равно вызовется и в размере данных будет 0 указано
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
SISA, а есть какой-нибудь примерчик? кода
вообще должен вызываться всегда. Даже если нет данных, то всё равно вызовется и в размере данных будет 0 указано
Вызывается не всегда, инфа соточка. Версия под винду 1.1.1. Чуть позже скину код в ЛС (там нужна массовая атака запросами).
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
Отправил тестовый плагин в ЛС, да и собственно я уже понял, как воспроизвести баг.
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
Есть ли какие-то подвижки ? ?
 
Сообщения
44
Реакции
1
Is there a problem with the module. I always got this error

C++:
CRASH: Thu Jan  5 01:26:58 UTC 2023
Start Line: ./hlds_linux -console -game cstrike -port 27015 -sport 26900 +map de_dust2 +ip xx.xx.xx.xx -pingboost 3 -secure -debug +maxplayers 32 +sys_ticrate 1000 +fps_max 1000 -heapsize 524288 -condebug -pidfile hlds.37.pid
[New LWP 45]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
Core was generated by `./hlds_linux -console -game cstrike -port 27015 -sport 26900 +map de_dust2 +ip'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0xe8b0d0ba in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#0  0xe8b0d0ba in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#1  0xe8b0d69d in CurlMulti::CurlCloseSocketCallback(int) () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#2  0xe8b0d6cc in CurlCloseSocketCallbackStatic(void*, int) () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#3  0xe8b1f687 in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#4  0xe8b3a908 in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#5  0xe8b3b6e1 in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#6  0xe8b27710 in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#7  0xe8b2242f in ?? () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#8  0xe8b0d6fe in CurlMulti::~CurlMulti() () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#9  0xe8b0c785 in AmxCurlController::~AmxCurlController() () from cstrike/addons/amxmodx/modules/curl_amxx_i386.so
#10 0xf73a03f3 in ?? () from /lib/i386-linux-gnu/libc.so.6
#11 0xf73a04d1 in exit () from /lib/i386-linux-gnu/libc.so.6
#12 0xf7388f2d in __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
#13 0x080493a1 in _start ()
No symbol table info available.
From        To          Syms Read   Shared Object Library
0xf7721ad0  0xf7722aa4  Yes (*)     /lib/i386-linux-gnu/libdl.so.2
0xf7694914  0xf76dac78  Yes         ./libstdc++.so.6
0xf7555590  0xf76158f5  Yes (*)     /lib/i386-linux-gnu/libm.so.6
0xf7388610  0xf74d5376  Yes (*)     /lib/i386-linux-gnu/libc.so.6
0xf7735ab0  0xf77508bb  Yes (*)     /lib/ld-linux.so.2
0xf735ce04  0xf736c490  Yes         ./libgcc_s.so.1
0xf6c7b820  0xf6d6cfb0  Yes (*)     /home/container/engine_i486.so
0xf6c3e910  0xf6c423a4  Yes (*)     /lib/i386-linux-gnu/librt.so.1
0xf6c2c5c0  0xf6c36d74  Yes (*)     ./libsteam_api.so
0xf6c0e9d0  0xf6c1e29f  Yes (*)     /lib/i386-linux-gnu/libpthread.so.0
0xf5b96000  0xf6756250  Yes (*)     /home/container/.steam/sdk32/steamclient.so
0xed7dede0  0xed937f6a  Yes (*)     /home/container/cstrike/dlls/cs.so
0xed6f6780  0xed70b394  Yes (*)     /home/container/cstrike/addons/SafeNameAndChat/SafeNameAndChat.so
0xed6cd5d0  0xed6e3d20  Yes (*)     /home/container/cstrike/addons/reunion/reunion_mm_i386.so
0xed4f5a20  0xed558db7  Yes (*)     /home/container/cstrike/addons/amxmodx/dlls/amxmodx_mm_i386.so
0xed1bc790  0xed254fc5  Yes (*)     cstrike/addons/amxmodx/modules/mysql_amxx_i386.so
0xed188660  0xed18cf84  Yes (*)     cstrike/addons/amxmodx/modules/fun_amxx_i386.so
0xed16f290  0xed17b80c  Yes (*)     cstrike/addons/amxmodx/modules/engine_amxx_i386.so
0xed1309d0  0xed15cd6c  Yes (*)     cstrike/addons/amxmodx/modules/fakemeta_amxx_i386.so
0xed106a50  0xed10c8e4  Yes (*)     cstrike/addons/amxmodx/modules/geoip_amxx_i386.so
0xed0879b0  0xed08ba08  Yes (*)     cstrike/addons/amxmodx/modules/nvault_amxx_i386.so
0xed071d50  0xed081460  Yes (*)     cstrike/addons/amxmodx/modules/cstrike_amxx_i386.so
0xecff2120  0xecff8404  Yes (*)     cstrike/addons/amxmodx/modules/csx_amxx_i386.so
0xecf90b60  0xecfd8624  Yes (*)     cstrike/addons/amxmodx/modules/hamsandwich_amxx_i386.so
0xe8affae0  0xe8d52e78  Yes (*)     cstrike/addons/amxmodx/modules/curl_amxx_i386.so
0xecef8020  0xecf41180  Yes (*)     cstrike/addons/amxmodx/modules/reapi_amxx_i386.so
0xecec2480  0xecec4050  Yes (*)     cstrike/addons/amxmodx/modules/hidecvars_amxx_i386.so
0xe89a6340  0xe89b948e  Yes (*)     /home/container/cstrike/addons/whblocker/whblocker_mm_i386.so
0xe8975aa0  0xe89992f2  Yes (*)     /home/container/cstrike/addons/printcenterfix/printcenterfix_mm_i386.so
0xecea7b90  0xeceb12f0  Yes (*)     /home/container/cstrike/addons/resemiclip/resemiclip_mm_i386.so
0xe74edbb0  0xe74f4564  Yes (*)     /lib/i386-linux-gnu/libnss_files.so.2
0xe5e50b70  0xe5e53ad4  Yes (*)     /lib/i386-linux-gnu/libnss_dns.so.2
0xe5e3a660  0xe5e463f4  Yes (*)     /lib/i386-linux-gnu/libresolv.so.2
0xe48e9530  0xe49189b4  Yes (*)     /home/container/cstrike/addons/hitbox_fix/hitbox_fix_mm_i386.so
(*): Shared library is missing debugging information.
Stack level 0, frame at 0xfff80a50:
 eip = 0xe8b0d0ba; saved eip = 0xe8b0d69d
 called by frame at 0xfff80a70
 Arglist at 0x8b60780, args:
 Locals at 0x8b60780, Previous frame's sp is 0xfff80a50
 Saved registers:
  ebx at 0xfff80a3c, ebp at 0xfff80a48, esi at 0xfff80a40, edi at 0xfff80a44, eip at 0xfff80a4c
End of crash report
----------------------------------------------
 

RockTheStreet

Саппорт года
Сообщения
1,744
Реакции
349
Помог
40 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Is there a problem with the module
1. Не сюда нужно писать.
2. Какой плагин использует модуль? Если никакой, то и нет смысла в установке модуля. Если есть плагины, использующие модули, то их нужно предоставить. Откуда мы должны знать что в них?
 

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу