Всичко работи добре, но понякога след много часове връзката може да се загуби. Как да разбера, че чатът вече не работи? Трябва ли да използвам PING/PONG събитие, за да открия това? Това се случва много рядко, но все пак може да се случи. Благодаря за предложенията.
Delphi XE 7 Indy IRC открива загуба на връзка
Отговори (1)
Да, командите IRC PING и PONG трябва да се използват за подобряване на стабилността на връзката.
Сървърът и клиентът могат да изпращат "празни" (no-op, heart-beat) съобщения, за да поддържат връзката жива. Ако една страна вече не получава тези съобщения, връзката може да се счита за изгубена. След това сървърът може просто да затвори връзката, ако открие неотговарящ клиент. Клиент може да покаже съобщение за грешка и да предложи на потребителя да се свърже отново или да се свърже отново автоматично.
Добавянето само на съобщения без операция (сърдечен ритъм) ще помогне да се поддържа връзката стабилна, тъй като някои мрежови компоненти може да изберат да прекратят връзките след дълго време на неактивност.
person
mjn
schedule
27.09.2014
Уф... Това не е ли цел на
PING
? Моля, помислете за спецификациите на протокола за четене.
- person Free Consulting; 27.09.2014
@FreeConsulting съжалявам за недоразумението, редактирано
- person mjn; 27.09.2014
PING
сървъра си, но това няма никаква връзка с Delphi. - person Free Consulting   schedule 27.09.2014