Redmine обычно стоит на своём сервере, задачи в нём ведутся годами, и переносить их ещё в одну систему никто не собирается. Taskloc и не предлагает. Приложение берёт задачи из Redmine через REST API, добавляет к ним GPS-сессию, маршрут и факт визита на объект, а отработанные часы возвращает в задачу как обычный worklog.
Плагины на сервер не ставятся, агенты тоже не нужны. Подключается обычный пользователь Redmine — тот же, что работает с задачами в браузере.
Что обычно не сходится
- Часы в задачу вписываются задним числом и по памяти: "ну, часа четыре получилось".
- Маршрут и время на объекте нигде не остаются. Спорить с заказчиком о человеко-часах нечем.
- Паузы — обед, ожидание на проходной, простой — в учёт не попадают вовсе.
- Пробег по выездам собирается отдельно и вручную, если собирается вообще.
- Человек на объекте не откроет Redmine, чтобы что-то отметить руками.
Как работает учёт времени в Redmine через Taskloc
- Сотрудник открывает в приложении свою задачу из Redmine и запускает GPS-сессию.
- Дальше время и маршрут пишутся сами: перемещения, стоянки, чек-ин на объекте. Нажимать больше ничего не нужно.
- По остановке сессии приложение создаёт в задаче Redmine запись времени — через стандартный REST API, без плагинов.
- Комментарий и смена статуса уходят туда же. Задача остаётся в Redmine, где ей и место.
Поддерживается весь рабочий набор: просмотр и создание задач, комментарии, смена статуса, запись времени, вложения. Произвольные поля подхватываются автоматически — приложение само собирает каталог полей проекта и пишет туда пробег и адрес.
Что умеет именно Redmine-коннектор
Redmine — самый глубокий из наших коннекторов, и разница не формальная:
- Авто-пауза. Если во время GPS-сессии движения нет заданное время, сервер сам ставит сессию на паузу и пишет в задачу заметку о паузе. Движение возобновилось — заметка о возобновлении. Работает, даже когда приложение офлайн: действует сервер, а не телефон.
- Блок "Задачи" на экране "Моя статистика". Назначено мне, закрыто, наблюдаю, просрочено, создано мной — счётчики видны прямо в приложении. У остальных коннекторов этого блока нет: их API не отдаёт готовых счётчиков по текущему пользователю.
- Готовые фильтры — это сохранённые запросы Redmine. Настроили один раз в вебе — пользуетесь в приложении.
Что получает руководитель
- Время на объекте и время в дороге — раздельно, по каждой задаче.
- Маршрут каждого выезда на карте, пробег — цифрой.
- Чек-ин как факт визита: точка, геозона, маршрут.
- Карта команды в реальном времени и отчёты по сотрудникам в веб-кабинете.
- Учёт, собранный из записей, сделанных в момент работы, а не в пятницу вечером.
Ограничения Redmine-коннектора — честно
- Поддерживаются версии Redmine 4.x и выше. 3.x и старше не подключаются.
- Вики, форумы и документы Redmine не поддерживаются — только задачи.
- Ошибка 422 "Задача имеет неверное значение" при отправке времени — это отказ самого Redmine, а не сбой приложения. Причина: у проекта не включён модуль "Учёт времени". Включается так: администратор Redmine → Проект → Настройки → Модули → отметить "Учёт времени". Записанное время при этом не теряется — оно остаётся в Taskloc.
Приватность и доступы — прямо
GPS-сессию запускает сам сотрудник. Вне активной сессии приложение координаты не собирает: остановил смену — исчез с карты команды.
Теперь то, о чём принято молчать, а мы скажем. У Redmine-коннектора доступы к вашему серверу дополнительно хранятся на сервере Taskloc — в зашифрованном виде. У остальных коннекторов доступы лежат только на устройстве, в Android Keystore. Причина простая: чтобы сервер сам поставил сессию на паузу и написал заметку, пока у сотрудника нет сети, ему нужен доступ. Авто-пауза стоит именно этого. Если для вашей организации хранение доступов на внешнем сервере неприемлемо — решайте до подключения, а не после.
Инструкция по подключению: как подключить Redmine.
Вопросы администратора Redmine
Какая версия нужна?
Redmine 4.x и выше. Версии 3.x и старше коннектор не подключает — сначала обновление.
Какие права нужны пользователю?
Приложение работает через стандартный REST API от имени подключённого пользователя. Ему нужны те же права, что и для обычной работы: видеть задачи проекта, комментировать, менять статусы, записывать время. Подробности — в инструкции по подключению.
Почему при отправке времени ошибка 422?
Это отказ Redmine: у проекта не включён модуль "Учёт времени". Включите его в настройках проекта. Время не пропадёт — оно уже сохранено в Taskloc.
Подключатся ли вики и форумы?
Нет. Коннектор работает с задачами: просмотр, создание, комментарии, статусы, запись времени, вложения, произвольные поля.
Что с произвольными полями?
Приложение собирает каталог полей проекта автоматически и предлагает, куда записывать пробег и адрес. Сверять идентификаторы вручную не нужно.
Где хранятся доступы к нашему Redmine?
На устройстве сотрудника и дополнительно на нашем сервере в зашифрованном виде — это условие работы авто-паузы. Разбор выше, в блоке о приватности.
Есть ли версия для iPhone?
Нет. Приложение для сотрудников — под Android; веб-кабинет руководителя открывается в любом браузере, включая мобильный.
Нужно ли что-то ставить на сервер Redmine?
Нет. Ни плагинов, ни агентов: приложение работает через стандартный REST API, который в Redmine уже есть. Со стороны сервера нужно только, чтобы REST API был включён.
Кому это нужно
Чаще всего Redmine-коннектор ставят там, где люди работают на объектах: монтаж, сервис, стройка. Если ваш случай про монтажные бригады, подробнее здесь: учёт времени монтажников.
Попробуйте на своём Redmine
Подключите сервер, поставьте приложение на один телефон и проведите одну задачу от старта сессии до появления worklog. Триал Team — 14 дней, 3 места, один раз на аккаунт. Оплата — картами МИР банков РФ и СНГ и СБП.
Карта при регистрации не требуется, автосписания по окончании триала нет: аккаунт переходит на бесплатный тариф.
14 дней бесплатно
Team на 14 дней, три места — без карты и без звонка.
14 дней бесплатно