Техническое задание: Отладка клиент-серверного приложения на C#

Имеется пара программ (клиент и сервер), написанных на C#, с нестабильным сетевым взаимодействием. Требуется провести анализ и исправить ошибки, приводящие к разрыву соединений и проблемам с повторным подключением.

Основные проблемы для устранения

  • Неожиданный разрыв соединения: В логах сервера фиксируется ошибка "Программа на вашем хост-компьютере разорвала установленное подключение" (0x80004005). Необходимо выявить причину и обеспечить стабильность соединения.
  • Проблемы с переподключением: При перезагрузке сервера клиентское приложение не всегда успешно восстанавливает соединение. Нужно определить условия сбоя и реализовать надежный механизм повторного подключения с задержками.

Требования к решению

  • Проанализировать существующий код сетевой части клиента и сервера.
  • Обеспечить корректную обработку исключений при разрыве связи.
  • Реализовать на клиенте устойчивый алгоритм повторного подключения к серверу с интервалами (например, с экспоненциальной задержкой).
  • Добавить логирование ключевых событий (попытки подключения, ошибки, разрывы) для упрощения дальнейшей диагностики.
  • Проверить и, при необходимости, исправить освобождение сетевых ресурсов (сокетов, потоков) как на стороне клиента, так и сервера.
  • Код должен быть чистым, с комментариями к внесенным изменениям.

Результат работы

  • Стабильно работающее клиент-серверное взаимодействие.
  • Клиент должен автоматически и надежно восстанавливать соединение с сервером после его перезагрузки.
  • Исходный код с исправлениями и краткий отчет о проделанной работе.

Разработка схемы подключения периферии к ESP32

Требуется создать подробную и понятную схему соединений для контроллера ESP32. Необходимо отобразить подключение дисплея, кнопок и реле. В отклике укажите стоимость и сроки выполнения работы.

Интеграция виджета онлайн-записи на сайт WordPress

Требуется внедрить на сайт, работающий на WordPress, готовый виджет для онлайн-записи на услуги. Предоставлены инструкция и необходимые скрипты. Задача - корректно интегрировать функционал согласно документации.