Уважаемый разработчик, очень недостает API либо же более простого с точки зрения программирования решения, в виде файлов-флагов или куммулятивного файла с рядом динамических параметров.
Объясню детально. Смею предположить, что у нашей команды на сегодняшний день наибольшее кол-во одновременно работающих клиентов (порядка 150 на 2-ух id).
Следить за ними всеми в режиме реального времени крайне затруднительно с учетом что они разбросаны по десятку серверов.
Вчера, например, был массовый баг какой-то. Произошло разлогинивание на Rutube порядка 30% клиентов и обратно они сами зайти не могли.
Либо же почти каждый день при плановой ревизии серверов наблюдается порядка 10% клиентов, которые висят с черным окном автопросмотра и активной кнопкой Пуск.
Как мы понимаем - это все простой и это не хорошо.
На всех наших серверах работает Cron, который справляется с подавляющим объемом автоматизации. Перезагружает сервер, стартует клиентов по таймингам, контролирует автозапуск автопросмотра.
Но в клиентскую часть заложено слишком много дочерних окон, зачастую о некритичных ошибках и отловить такие дочерние окна не всегда представляется возможным.
Наиболее частые проблемы:
1. 2 или более клиентов решили стартануть одновременно - неминуемо будет ошибка связи с сервером №2. Было бы здорово вынести в GUI или INI файл параметр регулирующий авторестарт и кол-во попыток авторестарта.
2. Если загруженность сервера велика или интернет канал не стабилен, при первом подключении, повисев на странице первичного входа (белое окно и вращающийся бублик посередине) - клиент выдаст, что вход не удался. Опять же клиент продолжит гордо показывать это дочернее кно с ошибкой и ничего не делать. И тут снова напрашивается закрытие окна с ошибкой по таймеру и срабатывание авторестарта.
Но это я что-то уже ушел в область хотелок по непотопляемости клиента.
Изначальная идея была мониторить клиентов через API. баланс, онлайн/офлайн клиент, идет ли просмотр в настоящее время и т.п.
Понятное дело что вряд ли вообще вы планировали API на настоящее время, по этому есть альтернативный лайтовый в реализации вариант.
Если бы клиент мог в корне или поддирректории создавать файл-флаг (например online.txt) при условиях: 1. Кнопка Пуск не активна 2. Окно автопросмотра существует - то это уже решило бы не менее половины проблем. Cron отслеживал бы в реальном времени файл-флаг. При online - ничего не делает. При offline - киляет и заново стартует проблемный клиент.
И, кстати, баланс тоже можно обновлять в тектовом файле. Тогда его можно регулярно считывать и оперативно уведомлять администратора что пора пополнить счет.