Мобильное приложение курьера для Android

Материал из Меасофт
Версия от 13:24, 30 августа 2017; Johny (обсуждение | вклад) (Использование bluetooth фискального регистратора)
Перейти к: навигация, поиск

Содержание

Назначение

Приложение предназначено для работы совместно с системой "Курьерская служба 2008". Оно рассчитано на использование курьерами, как пешими, так и водителями. В первую очередь при разработке приложения рассматривался процесс доставки заказов от интернет-магазинов по городу и области.

Выбор устройства

Мобильное приложение "Курьерская служба 2008" разработано для мобильных устройств, работающих под управлением ОС Android версии не ниже 4.0 (это главное и основное условие). В настоящее время большинство мобильных устройств, представленных на рынке, предлагается с предустановленной ОС Android версии 5.1 и выше. При прочих равных, при выборе устройства нужно руководствоваться принципом "чем новее версия Android - тем лучше". Надо понимать, что постепенно новые версии замещают старые, и чтобы не оставаться в каменном веке, а использовать преимущества современных устройств, нам, как и всем остальным разработчиков, приходится отказываться от поддержки старых версий Android.

В своей работе приложение использует модули мобильного устройства GPS, GSM, Wi-Fi и bluetooth, но они есть во всех (за очень редким исключением) представленных на рынке моделях.

Для уверенного чтения штрих-кодов (не обязательная опция) важна функция автофокуса в камере. Остальные характеристики устройства (фирма-производитель, объем памяти, частота процессора, тип и размер экрана и т.д.) носят скорее потребительский характер. Устройство должно быть удобным в работе и практичным в эксплуатации. Наше приложение очень нетребовательно к аппаратным ресурсам.

Для работы с кассами АТОЛ необходимо, чтобы устройство было на базе архитектуры ARM. 98% представленных на рынке устройств построены именно на этой архитектуре.

Так же при выборе устройства рекомендуется проконсультироваться со списком устройств, поддерживаемых сервисом 2CAN по адресу http://www.2can.ru/products/list-of-supported-phones/. Даже если в данный момент Вы не планируете им пользоваться, возможно он понадобится в будущем, и лучше приобретать устройства, готовые к работе с ним.

Установка

Для установки приложения откройте на устройстве Play Market, найдите в нем приложение "Курьерская служба 2008", откройте его, нажмите "Установить". При запросе разрешений нажмите на подтверждение. После установки приложение появится в списке установленных программ, откуда его можно запускать.

Рекомендуется убедиться в том, что в Play Market'е включено автоматическое обновление приложений ("Play Market" - меню - "Настройки" - "Автообновление приложений"). Мы регулярно выпускаем новые версии приложения, и на устройствах курьеров они должны обновляться.

Обратите внимание: для работы Play Market необходимо подключение к интернету, а так же системные дата и время в устройстве должны быть актуальными. Для подключения к сервису так же понадобится аккаунт в Google-почте. Его рекомендуется создавать отдельный, для каждого устройства.

Настройка

Int 1.jpg

Для синхронизации системы Курьерская служба 2008 с приложением необходимо установить галку Справочники -> Дополнительные модули -> Модуль мобильных устройств. Обратите внимание, что в этом окне есть ссылка на личный кабинет, имя пользователя и пароль, с помощью которых Вы можете заходить в ЛК, и управлять телефонами. После установки галки нужно ВСЕМ пользователям перевойти в программу, и далее она будет до 1-2 часов в фоновом режиме синхронизироваться с сервером.

При первом открытии программы Вы попадаете в окно регистрации. Далее его можно будет открыть нажав "Настройки" - "Общие" - "Перерегистрация" в главном окне приложения. Для начала использования приложение необходимо зарегистрировать. Для этого предусмотрено 2 способа:

Регистрация сканированием QR-кода

1) Нажмите кнопку "Сканировать код". Откроется сканер штрих-кодов.

2) В приложении "Курьерская служба 2008" откройте карточку сотрудника, на которого нужно зарегистрировать телефон. Перейдите на закладку "Дополнительно", нажмите кнопку "Зарегистрировать телефон". Отобразится QR-код.

3) Отсканируйте предложенный QR-код камерой телефона.


Приложение сообщит о результате регистрации.

Регистрация приложения вводом логина и пароля

1) Введите логин и пароль от личного кабинета Вашей компании. Посмотреть их можно нажав в главном меню "Справочники" - "Дополнительные модули".

2) Телефон зарегистрируется. Однако он не будет привязан к курьеру. Для осуществления привязки зайдите в личный кабинет, перейдите на вкладку "Телефоны", выберите нужный телефон, откройте его карточку, выберите из выпадающего списка нужного курьера, нажмите "Сохранить".


Примечание! Список мобильных устройств курьеров отображаются в панели управления ЛК. В разделе "Активные" отображаются все подключенные к системе устройства. Галка "Активный" снимается автоматически системой, если информации с мобильного устройства не поступало в течении 7 дней. Ограничение на количество дней изменять нельзя.

Список заказов

Android1.png

При открытии программы программа отображает список заказов. Так же, к нему можно перейти нажав на иконку "Список" Android order list.png. В этом списке могут отображаться как заказы "на сегодня", так и "на завтра" и "Закрытые". Описание ниже, в соответствующих разделах.

В списке для каждого заказа отображается информация:

  • Интервал времени доставки
  • Номер заказа
  • Наименование заказчика (в скобках)
  • Наименование получателя
  • Адрес доставки

Получение новых заказов

При поступлении новых заказов приложение отображает список новых заказов, и извещает об этом мелодией будильника по-умолчанию и вибрацией устройства. В окне есть кнопка "Понятно" - фиксирует факт принятия заказов курьером. При ее нажатии в системе бэкофиса отправление получает статус со слов курьера "На руках". Окно будет периодически выскакивать до тех пор, пока не нажата кнопка "Понятно". Приложение не отображает это окно с 21:00 до 08:59 каждых суток, т.к. в некоторых бизнес-процессах заказы могут попадать на курьеров ночью, откладывает оповещение об этих заказах до утра.

Заказы на сегодня

Для отображения сегодняшних заказов нажмите на иконку "Выбор даты" Andoid choose date.png, и выберите "Сегодня". В этом режиме программа отображает заказы, выданные курьеру в разделе "Выдача", и у которых статус (как основной, так и "со слов курьера") стоит "На руках". Обратите внимание, что система при этом не обращает внимание на дату, когда заказ был выдан. Т.е. если курьеру год назад был выдан заказ, и он до сих пор имеет статус "на руках", это значит, что сегодня его надо, наконец, доставить.

В верхней строке списка отображается сумма по доставленным заказам, которую курьер должен иметь в текущий момент на руках (принятые деньги наличными и по картам отдельно), а так же количество закрытых заказов и количество заказов на сегодня всего. Справа отображаются стрелки синхронизации с сервером. Зеленым цветом стрелок показано, что синхронизация происходит успешно, желтым - что синхронизация не работает, но данные относительно актуальные (до 30 минут), и красным - если успешной синхронизации не было более 30 минут. При нажатии на заголовок выводится окно статистики, в котором отображаются суммы, принятые курьером, количество доставленных и не доставленных заказов, время последней попытки синхронизации с сервером и последней успешной синхронизации.

Заказы в списке подсвечиваются желтым цветом, если до конца срока доставки осталось менее 2-х часов, и красным - если менее 1-го часа.

Закрытые заказы

Для отображения закрытых заказов нажмите на иконку "Выбор даты" Andoid choose date.png, и выберите "Закрытые". Программа отобразит заказы, у которых проставлены статусы. В такие заказы можно только добавлять фотографии. Заказы на этой вкладке выделены цветами: зеленые - доставлено, розовые - не доставлены, желтые - доставлено частично. Кнопкой "Назад" можно вернуться к списку "Сегодня".

Заказы на завтра

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

Для отображения заказов "на завтра" нажмите на иконку "Выбор даты" Andoid choose date.png, и выберите "Завтра".

В этом режиме программа отображает не доставленные заказы, запланированные курьеру (установлено поле "Выдать курьеру"), но еще не выданные ему. Обратите внимание, что система при этом не обращает внимание на дату, на которую заказ запланирован. Т.е. если курьеру год назад был запланирован заказ, и он до сих пор не имеет статуса доставки или отмены, это значит, что завтра его надо выдать курьеру и доставить.

В верхней строке списка отображается количество заказов в списке.

Обновление списка заказов

Список заказов обновляется автоматически каждые 5 минут (на некоторых системах ОС Android может снижать частоту обновления до 1 раза в 10-20 минут). Принудительно можно обновить, потянув список заказов вниз. Время последней попытки обновления и последнего успешного обновления можно увидеть, нажав на верхнюю информационную строку. Содержимое заказов не изменяется. Система реагирует только на добавление или удаление заказа.

Список заказов в ЛК курьера

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

Для авторизации необходимо в мобильном приложении нажать "Еще" и выбрать "Доступ с компьютера". В открывшемся окне нажать кнопку "Получить PIN", зайти на страницу ЛК курьера https://home.courierexe.ru/courier и ввести полученный пин-код. При необходимости можно сохранить авторизацию на месяц поставив галку Запомнить меня.

Обратите внимание, что время актуальности пин-кода — 5 минут. После истечения этого времени, если не успели войти в ЛК, необходимо получить новый пин-код.

Отображение на карте

Android3.png

Для отображения заказов на карте нажмите иконку "Карта".

Отобразится интерактивная карта, на которой отмечены заказы, а так же текущее положение устройства. Нажатием на точку заказа отображается подсказка с данными о заказе. Нажав на подсказку можно открыть карточку заказа.

На карте можно отображать как заказы "На сегодня" так и "На завтра".

Обратите внимание, что в текущей версии, для возможности отображения заказов на карте в приложении, нужно, перед выдачей курьеру, отобразить на карте в основной системе. В этот момент происходит геокодирование (привязка заказов к координатам на карте). Там же можно вручную скорректировать привязки, в случае, если системе не удалось автоматически геокодировать некоторые заказы.

В верхней строке программа показывает, сколько заказов ей не удалось отобразить на карте. Нажав на эту строку, можно перейти к списку заказов, которых нет на карте.

Установка статусов

Android4.png

Нажатием на строку заказа в списке или на подсказку на карте, либо отсканировав штрих-код с заказа, можно открыть карточку заказа. В карточке отображается подробная информация о заказе, доступны некоторые функции (фотографирование, звонки, прокладка маршрута и т.д., смотрите ниже), а так же имеется возможность ввести статус заказа.

Обратите внимание: Статусы можно устанавливать только для заказов "На сегодня".

Подпись отправляется в систему при сохранении карточки заказа, и дальше будет доступна в основной системе в карточке корреспонденции - Кнопка "Функции" - "Прикрепленные файлы", а так же в личном кабинете клиента.

Полная доставка

Чтобы установить статус "Доставлено" выберите соответствующий пункт. При этом приложение сразу предложит получателю расписаться на экране, и в случае нажатия кнопки "Сохранить" - сохранит и подпись и весь заказ. При этом система считает, что курьер принял необходимую сумму денег с получателя. В случае оплаты картой через сервис 2Can и/или печати чека на мобильном фискальном регистраторе сохранение произойдет только после успешного совершения операции. Когда заказ сохранен он исчезает из списка, и изменение его статуса становится невозможным.

Частичная доставка

Android5.png
Android9.png

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

1) В заказе есть сумма к инкассации, но нет детализации содержимого.

В этом случае, при выборе пункта "Частично" приложение предложит ввести сумму, которую курьер фактически принимает от получателя.

2) В заказе есть детализация содержимого.

В этом случае система отобразит список товаров с ценами и количеством, и предложит, нажимая кнопки "-" и "+" указать количество каждого товара, который получатель принимает. Над списком она сразу отображает сумму, которую нужно будет принять с получателя. Если в заказе присутствуют штрих-коды товаров, над общей суммой появится кнопка "Сканировать", позволяющая сканировать штрих-коды товаров, от которых покупатель отказывается.

После ввода нажмите кнопку "Сохранить". Программа проверит правильность ввода данных, и дальше сохранит так же, как полную доставку (с запросом подписи и т.д.)

Проблемы при доставке

В случае недоставки заказа выберите один из статусов "Не доставлено" и "Не доставлено по причине". Система предложит выбрать причину из справочника (он регулируется в разделе "Справочники" - "Статусы" - "6 - Причины недоставки" в основной системе), либо ввести причину текстом.

Для исключения определенного пункта из списка "Причины недоставки" необходимо в "дополнительную информацию" внести значение "0". (в основной системе меню "Справочники" -> "Статусы" -> "6 - Причины недоставки", правой кнопкой мыши -> "Дополнительная информация...")

Нажатием кнопки "Сохранить" заказ будет сохранен.

Типы оплаты

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

Так же, для некоторых клиентов может быть установлен флаг необходимости выбора типа оплаты получателем (в основной системе откройте карточку клиента, перейдите на закладку "Финансы" и установите галку "Спрашивать тип оплаты у получателя"). В этом случае в окне заказа появится выпадающий список, в котором необходимо выбрать тип оплаты. Эта информация будет передана вместе со статусом в основную систему.

В случае оплаты картой, при сохранении заказа со статусом "Доставлено" или "Частично" система пытается провести оплату через сервис 2Can, если он установлен. В этом случае она не сохранит заказ, если оплата не произведена. В случае отсутствия сервиса 2Can, предполагается, что у курьера имеется отдельный банковский POS-терминал, с помощью которого курьер проведет оплату.

Признак необходимости кассового чека

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

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

Совершение звонков

Звонок получателю

Для совершения телефонного звонка получателю нажмите на кнопку "Позвонить" в карточке заказа. Система предложит выбрать номер телефона получателя из одного или нескольких возможных. Выбор телефона, если доступен только один номер, сделан для того, чтобы пользователь имел возможность отменить вызов, нажав кнопку "Назад" на телефоне в случае, если кнопка звонка нажата случайно.

Звонок отправителю

Раскройте секцию отправителя в карточке заказа, нажав на нее. Возле номера телефона отправителя есть кнопка "Позвонить". Нажмите на нее. Программа предложит выбрать нужный номер, и совершит на него звонок.

Звонок в офис

Android10.png

Нажмите иконку "Настройка" в главном меню. Отобразится меню. Выберите пункт "Звонок в офис/по номеру". В открывшемся окне нажмите кнопку "Звонок в офис". Программа попытается соединить с внутренним номером группы абонентов черерз Asterisk, если попытка окажется неудачной - вызовет стандартную программу дозвона, передав ей номер телефона офиса, который можно указать в разделе "Телефоны - Параметры" личного кабинета.

Звонок на произвольный номер

Нажмите иконку "Настройка" в главном меню. Отобразится меню. Выберите пункт "Звонок в офис/по номеру". В открывшемся окне введите номер телефона, нажмите кнопку "Позвонить".

Общие понятия о совершении звонков из приложения

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

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

Фотографирование

В карточке заказа есть возможность добавления фотографий, нажав на кнопку "Фотографирование". Если к заказу нет ни одной фотографии, сразу откроется камера. Сфотографируйте объект, программа отобразит фотографию с 2-мя кнопками - подтверждения и отмены. При подтверждении Вы увидите окно со всеми фотографиями, прикрепленными к заказу. Вы можете добавить фото, нажав кнопку "Добавить" и закрыть окно, нажав "ОК". Чтобы удалить фотографию нажмите на нее, и удерживайте несколько секунд. Приложение спросит, действительно ли Вы хотите удалить фотографию, и, при нажатии "Да" - удалит фото.

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

Навигация к адресу доставки

В карточке заказа нажмите кнопку "Проложить маршрут". Приложение предложит на выбор Google или Яндекс-навигатор.

Для использования Яндекс-навигатора он должен быть установлен.

Обратите внимание: Данная функция может быть недоступна, если системе не удалось геокодировать адрес доставки. Подробнее - см. в разделе "Отображение на карте".

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

Трекинг курьеров

Приложение постоянно, в фоновом режиме, отслеживает текущее место нахождения устройства, и передает эту информацию в офисную систему. Для определения положения используется GPS (только когда телефон на зарядке, периодичность - 10 секунд) и сотовые сети/WiFi (когда телефон не заряжается, периодичность 5 минут).

Карты Yandex или Google, например, определяют положение по GPS. Приложение его использует только когда телефон на зарядке, иначе батарея разрядится за пару часов. В фоновом режиме используется определение по WiFi+GSM. Для этого нужно, чтобы был выбран режим Повышенной точности определения координат (по GPS, WiFi и мобильным сетям) в настройках местоположения в телефоне, был включен WiFi (даже если телефон не подключен к сетям), и работал мобильный интернет (обязательно, т.к. координаты берутся только с серверов Google!). Если эти условия выполняются - в ЛК будет отмечена возможность позиционирования 2-мя способами, и будет возможность видеть треки курьера.

Режим Повышенной точности настраивается в зависимости от модели телефона. Например, в Xiaomi Mi-4C, если нажать и подержать кнопку GPS, в верхнем выпадающем списке опций, откроется экран настроек "Местоположение" (еще этот экран можно вызвать через "Настройки" - "Другие настройки" - "Конфиденциальность" - "Местоположение"). Там есть выбор из 3-х вариантов:

  1. Высокая точность (GPS+WiFi+GSM);
  2. Экономия батареи (Только WiFi+GSM);
  3. По устройству (Только GPS).

Для просмотра текущего положения, а так же треков курьеров нажмите "Функции" - "Трекинг курьеров" в основной системе.

Устранение неполадок

Телефон не отображается на карте в трекинге курьеров

  • Убедитесь в том, что в телефоне включен GPS и позиционирование по сетям оператора и wifi.
  • Убедитесь, что включен и работает мобильный интернет (без него телефон не сможет снять координаты по сетям и wifi).
  • Убедитесь в корректности установки даты и времени на телефоне. Если дата неверная, треки Вы будете видеть "не в той дате".

Обратите внимание, что в разделе "Телефоны" личного кабинета проблемные опции (GPS, сети, время телефона, время синхронизации, версия приложения) подсвечиваются розовым цветом, так что Вы всегда можете быстро диагностировать неполадки у всех курьеров.

Телефон делает зигзаги между двумя траекториями

  • В телефоне меняется время

К сожалению, достаточно частая ситуация, когда время на одном и том же телефоне перескакивает из-за того, что неверно настроен часовой пояс (в андроиде производитель так и не изменил время перехода на летнее/зимнее время, не скорректировали с учетом последних изменений российского законодательства), телефон берет время из базовых станций оператора, которые тоже не всегда корректно настроены: иногда бывает, что идешь по Москве, смотришь в телефон, а он показывает время на 3 часа больше, и погоду в Екатеринбурге, с полной уверенностью, что я туда переместился. Предполагаю, что операторы иногда копируют настройки базовых станций из других регионов. И еще он получает время со спутников, когда включен GPS. В итоге время может скакать. Решение - отключить в настройках телефона автоопределение часового пояса, автонастройку часов, выставить верный часовой пояс и текущее время вручную. Так же в некоторых программах, например, в навител.навигатор'е по-умолчанию установлена галка для автокоррекции системного времени по спутникам. Такое тоже нужно отключить. Это тоже не дает гарантии, что время будет корректным - андроид даже так иногда приглюкивает.

  • Переехала точка доступа WiFi

Google регистрирует у себя WiFi сети, по MAC-адресам точек доступа, и фиксирует их местоположение. Потом, когда телефоны позиционируются - они смотрят, какие wifi сети есть в радиусе действия, и спрашивают их координаты у гугла. Это позволяет позиционироваться в помещениях, а так же повышает скорость, точность и энергоэффективность позиционирования. Однако, если точку доступа перенесли в другое место - google какое-то время об этом может не знать, и передавать телефону координаты старого расположения точки доступа. Если в вашем офисе/складе есть такая точка доступа - попробуйте "рассказать" гуглу, что она переехала: в зоне доступа данной сети (лучше - чтобы телефон был к ней подключен) включите GPS (например - google-карты), убедитесь, что GPS подключился к спутникам, и какое-то время подождите. По логике - телефон должен "понять", что "надежные" координаты от спутников не совпадают с координатами по wifi, и сообщить об этом в google, чтобы там изменили координаты точки доступа. Насколько этот способ надежен и быстр - известно только Большому Брату :-)

Поиск заказа по штрих-коду

Для поиска заказов по штрих-коду нажмите кнопку "Сканер штрих-кода". Откроется окно сканирования. Отсканируйте штрих-код с заказа или накладной/маршрутного листа. В случае успешного поиска приложение отобразит карточку найденного заказа.

Использование платежного сервиса 2Can

Данная система интегрирована с платежным сервисом 2Can, который позволяет принимать оплату картой с помощью телефона и небольшого и недорогого дополнительного устройства. Для использования сервиса установите на телефон приложение 2Can-касса (Не 2Can-mpos!). Зарегистрируйте его в системе 2Can в соответствии с их инструкцией.

В карточке телефона в личном кабинете (там же, где привязываются телефоны к курьерам), укажите PIN-код от приложения 2Can. Это позволяет нашей программе вызывать приложение по оплате картой не заставляя курьера каждый раз вводить пин, и в тоже время Вы можете скрыть пин-код от курьера, тогда он не сможет использовать приложение 2Can отдельно, без нашей системы, привязки к конкретным заказам и т.д. Обратите внимание на то, что данная информация обновляется в приложении 1 раз в час.

Настройка на этом завершена. Теперь при поступлении заказов с оплатой картой приложение будет требовать проведения платежа через 2Can, и не будет позволять сохранить статус такого заказа (только "Доставлено" или "Частично", конечно) без успешной транзакции по карте.

Обратите внимание: как любой другой POS-терминал его нужно создать в программе в меню "Справочники" - "Фирмы"

Использование bluetooth фискального регистратора

Приложение интегрировано с сервисом удаленной фискализации [1], позволяющим существенно сократить затраты на закупку и содержание кассового оборудования за счет использования одного фискального регистратора и подключаемых к мобильным телефонам курьеров чеко-печатающим принтерам. Подробности можно узнать обратившись в компанию Life-Pay.