пишу телеграмму боту через rubenlagus api. Бот работает хорошо в течение определенного времени, но затем перестает отвечать на любые запросы. Я использую подключение через Интернет. Мне пришлось установить полный цепной сертификат на мой сервер. У меня есть следующие настройки:
DefaultBotOptions options = new DefaultBotOptions();
options.setMaxWebhookConnections(10);
options.setMaxThreads(99);
RequestConfig build = RequestConfig.copy(RequestConfig.custom().build())
.setMaxRedirects(99)
.build();
options.setRequestConfig(build);
Когда я использовал getWebhookInfo через
https://api.telegram.org/botXXXXXXXXXXXXXXXXXXXX/getWebhookInfo
Я получил следующий ответ:
{ "ОК": правда "результат", { "URL": "https: \ myUrl.com", "has_custom_certificate": ложь,
"Pending_update_count"
: 175, "last_error_date": 1540816831,
"last_error_message": "Неправильный ответ от
webhook: 500 Запрос не выполнен. "," max_connections ": 10}}
Похоже, эта ошибка происходит из-за pending_update_count.
Как я могу исправить эту ошибку и как я могу предотвратить ее в будущем? Заранее спасибо.
Обновление
Иногда я вижу это:
{ "ОК": правда, "результат": { "URL": "https: \ myUrl.com", "has_custom_certificate" ложь "pending_update_count": 155, "last_error_date": 1540923231, "last_error_message": "Тайм-аут чтения истек", "max_connections": 99}}
В моих логах появляются ошибки, когда бот отправляет ответ пользователю:
TelegramApiException sendMyPhoto
org.apache.http.NoHttpResponseException: api.telegram.org:443 не удалось
ответить на
org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead (DefaultHttpResponseParser.java:143)
в
org.apache.http.impl.conn.DefaultHttpResponseParser.parseHead (DefaultHttpResponseParser.java:57)
в
org.apache.http.impl.io.AbstractMessageParser.parse (AbstractMessageParser.java:261)
в
org.apache.http.impl.DefaultBHttpClientConnection.receiveResponseHeader (DefaultBHttpClientConnection.java:165)
в
org.apache.http.impl.conn.CPoolProxy.receiveResponseHeader (CPoolProxy.java:167)
в
org.apache.http.protocol.HttpRequestExecutor.doReceiveResponse (HttpRequestExecutor.java:272)
в
org.apache.http.protocol.HttpRequestExecutor.execute (HttpRequestExecutor.java:124)
в
org.apache.http.impl.execchain.MainClientExec.execute (MainClientExec.java:271)
в
org.apache.http.impl.execchain.ProtocolExec.execute (ProtocolExec.java:184)
в
org.apache.http.impl.execchain.RetryExec.execute (RetryExec.java:88)
в
org.apache.http.impl.execchain.RedirectExec.execute (RedirectExec.java:110)
в
org.apache.http.impl.client.InternalHttpClient.doExecute (InternalHttpClient.java:184)
в
org.apache.http.impl.client.CloseableHttpClient.execute (CloseableHttpClient.java:82)
в
org.telegram.telegrambots.bots.DefaultAbsSender.sendHttpPostRequest (DefaultAbsSender.java:765)
в
org.telegram.telegrambots.bots.DefaultAbsSender.execute (DefaultAbsSender.java:226)
Кажется, мой сервер работает некорректно. Может ли это произойти из-за блокировки телеграммы в России?