Программа для управления компьютерным залом GameClass: Установка и настройка. Программа для управления компьютерным залом GameClass: Установка и настройка Техническое описание проекта




Locker - это комплексная система автоматизации компьютерных клубов и интернет кафе. Основными задачами системы являются регистрация сеансов работы компьютеров зала и блокирование работы компьютеров, время сеанса которых истекло. Кроме этого программа Locker ведет учет учет любых дополнительных услуг, оплаты пользователей, баланс каждого пользователя, учет бронирования компьютеров, собирает статистику и формирует различные отчеты о работе и многое другое...

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

Новый вариант клиентской программы для компьютеров клуба программа Club Client . Эта программа тоже работает с Locker-ом!

Бонусная система работы : на счету пользователя накапливается "бонусное время". Например, за каждые пять часов работы, пользователь получает один час бесплатного бонусного времени. Применение этой системы является хорошим стимулом для постоянных пользователей.

Описание программы Locker

Программа распространяется как shareware, и поставляется по принципу «как есть», то есть разработчик не несет ответственности за возможные последствия ее неправильного использования. Гарантируется только соответствие функций программы ее документации и внимание с нашей стороны к пожеланиям пользователей программы.

Программа работает в ОС Windows 10 / 8 / 7 / Vista / XP / 2003 / 2000 / NT / 98 / ME. Минимальные требования: компьютер, на котором способна работать какая-нибудь Windows, 15 Мбайт на жестком диске + размер данных. Разрешение экрана дисплея должно быть не хуже чем 1024x768.

Все чаще и чаще мне задают вопрос как настроить GameClass. Gameclass - одна из самых мощных программ для управления компьютерным залом. Несмотря на обилие на официальном сайте документации процесс установки и настройки довольно сложен. Поэтому я решил в подробностях расказать об этом процессе.

Программа GameClass распространяется на сайте http://www.gameclass.ru/ . Там же можно бесплатно скачать демонстрационную версию и опробовать ее функционал. Для минимального набора нам понадобится инсталяшка базы данных MSDE2000 (База данных MSDE2000 ReleaseA) и инсталяшка самой программы GameClass 3.84 Release 9. На сегодняшний день это последняя стабильная версия. Боюсь, в будущем программа больше развиваться не будет, пока не будет найден инвестор для покупки проекта. Остальные модули и программы нужны для более тонкой настройки вашего клуба.

Прежде чем устанавливать GameClass надо установить сервер базы данных Microsoft SQL Server Desktop Engine, который отвечает за обработку данных программы. Ставить нужно именно версию MSDE2000 скачанную с сайта GameClass. С несколькими другими версиями MSDE2000 программа контроля интернет кафе у меня работать отказалась. MSDE распаковывается в указанную директорию, запускается оттуда и устанавливается без вопросов и сообщений в директорию C:\Program files\Microsoft SQL Server

После установки MSDE2000 требуется найти и запустить файл ResetPass.bat, который находится в директории куда распаковался MSDE2000. Перед запуском этого BAT файла надо перезагрузить компьютер чтоб в настройках системы прописались все пути к серверу SQL. ResetPass сбрасывает пароль администратора базы данных и при установке программа GameClass сама настроит все пароли автоматически.

После перезагрузки компьютера в трее у часиков вы найдете программу SQL Service Manager, которая позволяет останавливать и запускать заново MSSQL server. Остановка сервера нужна для того чтоб сделать бэкап базы данных. Сами данные будут находиться в директории C:\Program files\Microsoft SQL Server\8.0\Data. Рекомендую регулярно делать копию это директории чтоб иметь возможность восстановить вашу статистику, информацию об аккаунтах, настройки программы и вообще все что связанно с данными GameClass.

Убедившись что SQL Service Manager запущен и база данных MSSQL работает можно приступать к установке GameClass. При запуске инсталяшки программа поинтересуется как надо настроиться использоваться. При установке на клиентские компьютеры в зале, которые будут блокироваться надо выбрать "Клиентский компьютер". На компьютере оператора выбираем "Главный управляющий компьютер". Обычно на этом же компьютере и работает база данных MSDE2000, но это не обязательно. GameClass позволяет подключиться к удаленной базе данных на другом сервере, вводя адрес сервера SQL.

После установки используем пустой пароль менеджера для входа в систему. Обязательных настроек для контроля залом не так много:

  • Определить пароли для менеджера и оператора в разделе "Пользователи"
  • Определить IP адреса клиентских компьютеров в разделе "Компьютеры"
  • Определить тарифы

После настроек подключаемся как оператор и начинаем работу с залом. При запуске программы под оператором программа показывает зелененькими компьютеры которые видны в сети и красненькими которые выключены. Когда клиент видит сервер он выводит окно ввода логина и пароля. Если же светится блок "Компьютер свободен", значит какая то проблема в настройках.

Функция подключения к удаленной базе данных полезна на компьютере менеджера, который установив программу, может наблюдать за состоянием зала удаленно. Для этого устанавливаем GameClass, выбрав "Компьютер менеджера". Для подключения отмечаем галочку "Подключиться к другому серверу" и пишем адрес сервера БД. Убедитесь что файрволы и антивирусы не блокируют порты сервиса MSSQL. Используя пароль менеджера можно удаленно видеть не только состояние зала, но и отчеты, статистику, а так же производить изменения в аккаунтах и проводить любую работу с настройками. После изменения настроек обязательно для применения оператор должен отключиться от базы и заново войти в систему.

В ближайшем будущем собираюсь расказать о том как с помощью GameClass управлять клиентами под операционной системой Linux Gentoo.

Бизнес составляющая проекта: мощная компьютерная техника и быстрый интернет – это еще не все составляющие успешного компьютерного клуба. Очень важно грамотно организовать систему управления, не ограничивая пользователям доступ к необходимым ресурсам, и при этом обезопасить информацию и установленное программное обеспечение. Перед нашей компанией стояла задача создать комплексное решение, которое будет учитывать все особенности такой системы.

Данное решение является масштабируемым и в состоянии поддержать обслуживание как одного клуба, так и сети компьютерных клубов.

Краткое описание проекта:

Система управления игровыми компьютерными клубами, разработанная нашей компанией, включает в себя следующие компоненты:

  • серверную часть, которая хранит данные пользователей, тарифы, историю сессий, отвечает за авторизацию;
  • приложение кассира, которое представлено в виде web-приложения и позволяет администратору клуба управлять учетными данными посетителей, пополнять баланс, удаленно управлять блокировкой рабочих станций;
  • оболочку для клиентских машин, которая отвечает за управление оплаченным сеансом работы клиента клуба и блокировку станции по истечению оплаченного времени;
  • Windows-службу, написанную на Java, которая отлавливает и пресекает попытки недобросовестных пользователей несанкционированно завершить процесс оболочки;
  • инсталлятор: оболочка и Windows-служба передаются в виде исполняемого файла, который производит установку на пользовательскую машину необходимого программного обеспечения и дополнительную настройку системы. Установщик реализован с помощью инструмента Inno Setup.

Техническое описание проекта:

Оболочка представляет собой desktop-приложение и реализована при помощи фреймворка Electron. Клиентская оболочка и Windows-служба работают в тесной связке и образуют в паре “приложение клиента”. Служба следит за процессом оболочки и перезапускает его каждый раз, когда он аварийно завершается либо несанкционированно закрыт через диспетчер задач. Также в службе реализовано слежение за продолжительностью сеанса. Когда оплаченное время пользователя заканчивается, служба сообщает оболочке, что нужно заблокировать доступ пользователя к Windows.

Служба устанавливается автоматически, во время инсталляции оболочки. Одновременно в системе Windows создается пользователь с ограниченными правами, который устанавливается в качестве “пользователя по умолчанию”. В качестве shell для новой учетной записи прописывается оболочка.

Для сохранения возможности проведения профилактических или других администраторских работ созданная Windows-служба будет пытаться восстановить процесс оболочки только в созданной во время установки учетной записи.
Связь между компонентами кассира, клиента и серверной части реализована в архитектуре REST.

Оператор клуба со своего рабочего места может заблокировать любую пользовательскую машину. Для этого приложение кассира пошлет запрос о блокировке на сервер, а сервер по webSocket передаст сообщение приложению клиента.

Компьютеры в приложении кассира идентифицируются по ip-адресу и идентификационному номеру, который формируется путем хэширования mac-адреса компьютера.

Данные о всех сессиях пользователей хранятся в базе данных MySQL и отображаются в приложении кассира.

Технологии:

Stack: Apache Maven, Apache Tomcat, Tyrus, ReactJS, Redux, JNA
Programming languages: Java 11, JavaScript, Node.js
Frameworks: Electron, Spring Boot, Spring Data, Spring Security
Infrastructure: Gerrit, IntelliJ IDEA, Jira, Inno Setup, VM VirtualBox, JetBrains WebStorm
DB: MySQL
Test libraries: Junit, DBunit.
Other libraries: Lombok, JsonWebToken, Log4j2.
Protocols: WebSocket, REST.

Скриншоты:


Особенности проекта:

  • разработка системы с нуля: от бизнес анализа до тестирования решения;
  • четкое разделение работ на этапы, начиная с исследования имеющегося решения у заказчика до разработки прототипа и его тестирования;
  • системное программирование: разработка Windows-службы на java;
  • слежение и управление процессами операционной системы Windows;
  • разработка desktop-приложения в “режиме киоска”. То есть приложение должно занимать всю площадь экрана, закрывая панель задач, в том числе, иметь максимальный приоритет перед другими приложениями. Приложение нельзя закрыть, свернуть, подвинуть;
  • минимальная потребность в участии персонала клуба для установки и настройки приложения для пользовательских машин;
  • еженедельные поставки заказчику промежуточных версий прототипа на протяжении всего времени разработки для проведения тестирования,
    каждую неделю продукт демонстрировался заказчику, что позволяло ему быть в курсе хода работ и видеть, как на его глазах создается система.

Результат проекта:

За три месяца был выполнен большой объем работ и решение передано заказчику:

  • создано техническое задание на систему управления компьютерным клубом;
  • спроектирована архитектура и подготовлено описание всего будущего решения;
  • подготовлено описание прототипа – минимального набора работающих компонентов, демонстрирующего возможность решения;
  • разработаны прототипы всех компонентов системы и инсталлятор десктопного приложения для клиентских машин;
  • написан и внедрен в работу тест план с более 100 тест кейсами;
    разработан и и полностью протестирован прототип.

Достижения компании на проекте:

  • успешно был решен ряд нетривиальных задач, связанных с Windows-службой;
  • выполнялось сопровождение проекта на всех этапах работ: исследование имеющегося решения у заказчика, выявление потребностей, проведение бизнес анализа, написание технического задания, проектирование архитектурного решения, прототипирование будущей системы, непосредственная разработка прототипа, тестирование;
  • поступающие к нам требования и комментарии заказчика, возникающие в процессе ознакомления с промежуточной версией прототипа или демонстрацией, быстро обрабатывались, обсуждались и, при необходимости, внедрялись.

Что делали на проекте, наши обязанности:

В ходе работы над приложением команда выполняла следующие работы:

  • исследование имеющегося решения у заказчика, выявление его потребностей, их обработка, анализ и фиксация;
  • составление технического задания по обработанным требованиям;
  • исследование существующих решений;
  • проработка архитектуры и описание решения;
  • разработка всех компонентов;
  • разработка инсталлятора системы на машинах в клубах;
  • интеграция компонентов;
  • написание подробного тест плана, более чем 100 кейсов обработаны и внесены в план, для их прогона на постоянной основе;
  • непрерывный процесс тестирования, в том числе на оборудовании заказчика,
  • еженедельная демонстрация работ заказчикам;
  • еженедельные поставки решения заказчику.