Начать или открыть визит
Начать или открыть визит для просмотра можно без предварительной синхронизации. В этом случае, потребуется подключение к интернету в торговой точке. Информация по магазину подгрузится в начале визита.
Параметры запроса
DeepLinkConst.IC_CAMERA_LAUNCH_ACTION
string
Intent
запуска IC Camera на устройстве. Если установлены оба приложения, появится диалоговое окно с выбором версии IC Camera.
DeepLinkConst.Parameters.IC_COMMAND
string
Управляющая команда.
DeepLinkConst.Parameters.DEBUG
boolean
Включение отладочного режима. Отображает лог с выводом основных ошибок и вызывающих параметров. Необязательный.
DeepLinkConst.Parameters.TOKEN
string
DeepLinkConst.Parameters.VISIT_ID
string
- найден — визит будет открыт;
- не найден — будет создан новый визит;
- пустой, либо «0» — вернется ошибка.
DeepLinkConst.Parameters.AGENT_ID
string
DeepLinkConst.Parameters.CUSTOMER_ID
string
По CUSTOMER_ID
выполняется поиск магазина (store -> customer_id). Если магазин:
- не найден — вернется ошибка, визит начать нельзя;
- найден — в визит будут добавлены все задачи магазина.
DeepLinkConst.Parameters.TASK_FILTER
string
Фильтр задач. Регулярное выражение (описание) для фильтрации задач по названию. Если указан, то визит будет отображать задачи, которые удовлетворяют заданному фильтру. Необязательный.
Пример запроса
Intent launchIntent = new Intent(DeepLinkConst.IC_CAMERA_LAUNCH_ACTION);
launchIntent.putExtra(DeepLinkConst.Parameters.DEBUG, true);
launchIntent.putExtra(DeepLinkConst.Parameters.TOKEN, getDemoToken());
launchIntent.putExtra(DeepLinkConst.Parameters.VISIT_ID, getDemoVisit());
launchIntent.putExtra(DeepLinkConst.Parameters.AGENT_ID, getDemoAgent());
launchIntent.putExtra(DeepLinkConst.Parameters.CUSTOMER_ID, getDemoCustomerID());
launchIntent.putExtra(DeepLinkConst.Parameters.TASK_FILTER, "regex");
startActivityForResult(launchIntent, ICDeepLink.DEFAULT_REQUEST_CODE);
Пример ответа
Результаты вызова возвращаются в функцию onActivityResult
.
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (data == null) {
return;
}
Log.d(TAG, "Result code: " + data.getIntExtra(DeepLinkConst.Parameters.RESULT_CODE, 0));
Log.d(TAG, "Result info: " + data.getStringExtra(DeepLinkConst.Parameters.RESULT_INFO));
Log.d(TAG, "Visit: " + data.getStringExtra(DeepLinkConst.Parameters.VISIT_ID));
Log.d(TAG, "Agent: " + data.getStringExtra(DeepLinkConst.Parameters.AGENT_ID));
Log.d(TAG, "Customer: " + data.getStringExtra(DeepLinkConst.Parameters.CUSTOMER_ID));
Log.d(TAG, "Images: " + data.getIntExtra(DeepLinkConst.Parameters.TOTAL_IMAGES, 0));
}
Параметры ответа
DeepLinkConst.Parameters.RESULT_CODE
integer
Код результата.
VISIT_VALID
(int: 1) - успешный визит (новый или открытый). Завершен с помощью кнопки закрытия визита.VISIT_ERR
(int: 2) - ошибка визита. Подробная информация вRESULT_INFO
.SYNC_OK
(int: 3) - cинхронизация успешно выполнена.SYNC_ERR
(int: 4) - синхронизация не выполнена. Подробная информация вRESULT_INFO
.
DeepLinkConst.Parameters.RESULT_INFO
string
Описание ошибки или дополнительная информация.
DeepLinkConst.Parameters.VISIT_ID
string
Идентификатор визита. Значение как во входном параметре.
DeepLinkConst.Parameters.AGENT_ID
string
Идентификатор агента. Значение как во входном параметре.
DeepLinkConst.Parameters.CUSTOMER_ID
string
Идентификатор магазина. Значение как во входном параметре.
DeepLinkConst.Parameters.TOTAL_IMAGES
integer
Количество изображений в визите.
Если у вас возникли вопросы или проблемы, обратитесь в техподдержку.