Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Image Added

Оглавление

...

Фоновая активность (фоновый процесс) — используется для процессов, занимающих продолжительное время. Не мешает продолжать работу и отдает идентификатор активности, по которому можно получать информацию о том что в ней происходит (например, прогресс выполнения в %), прервать её или дать интерактивный ответ на возникший в процессе вопрос к оператору, если он есть.

...

Фоновая активность идентифицируется двумя значениями: тип и идентификатор. Все методы, запускающие фоновые активности (обычно начинающиеся на Run*), возвращают именно эту пару значений — тип и идентификатор. А все методы, работающие с активностями, принимают эти два значения.

Найти фоновые активности

Метод SearchBackgroundActivities — метод для нахождения фоновых активностей. Необходим, чтобы знать, что сейчас происходит в системе. 

Принимает

АргументТипОписание
instanceKeyString
Ключ экземпляра приложения
languageString
Язык для запрашиваемых данных
sessionIdString
Идентификатор сессии
xmlSearchParametersString
Параметры для поиска фоновых активностей (BackgroundActivitySearchParameters)

Возвращает : BackgroundActivityInfoListAnswer (список краткой информации об активностях)

параметры поиска активностей, которыми можно, например, ограничить определенные типы активностей. В частности, в интерфейсе Автовыкупа незачем показывать активности, не связанные с ним.
Для простого получения всех активностей можно передать

Блок кода
languagexml
<BackgroundActivitySearchParameters></BackgroundActivitySearchParameters>

 

Возвращает: список фоновых активностей, с краткой информацией о них. В краткой информации (BackgroundActivityInfo) сразу можно узнать всё, кроме списка шагов активности. Подробнее об основных свойствах активности описано ниже.

Получить информацию

...

о фоновой активности

Метод GetBackgroundActivityInfo — метод для получения фоновой активности. Необходим, чтобы показывать процесс, что происходит в данной активности

Принимает:

АргументТипОписание
instanceKeyString
Ключ экземпляра приложения
languageString
Язык для запрашиваемых данных
sessionIdString
Идентификатор сессии
activityTypeString
Тип фоновой активности
activityIdString
Идентификатор фоновой активности

Возвращает : BackgroundActivityFullInfoAnswer : описание активности, признак завершения, % прогресса, признак требования действия оператора (и если он есть, то описание и список вариантов действий), список шагов в работе активности. Про каждый шаг: тип (инфо, успех, ошибка, предупреждение) и текст.

Выполнить действие шага для фоновой активности

Метод DoStepActionForBackgroundActivity

Принимает:

АргументТипОписание
instanceKeyString
Ключ экземпляра приложения
languageString
Язык для запрашиваемых данных
sessionIdString
Идентификатор сессии
activityTypeString
Тип фоновой активности
activityIdString
Идентификатор фоновой активности
xmlParametersString
Параметры действия шага ( NamedParameters)

 тип и идентификатор фоновой активности

Возвращает: полную информацию о фоновой активности и процессе её выполнения (BackgroundActivityFullInfoAnswer) Краткое описание свойств можно увидеть в документации по ссылке, а основные моменты подробнее описаны здесь.

Основные свойства активности

IsAwaitingAction

Если это свойство равно true, то активность приостановлена и ждет действия от пользователя. Следует это учесть, так как без действий активность не продолжится.

Actions

Список действий, которые пользователь может сейчас совершить в активности. В каждом действии есть его название и идентификатор. Идентификатор действия следует передать в метод DoActionForBackgroundActivity. Там всегда есть действие отмены самой активности (Cancel), остальные действия могут появляться по ходу работы активности.

Steps

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

Действия шага — (BackgroundActivityStepActionInfo) это отдельное от действий активности понятие. Действия шага никогда не приостанавливают активность, но позволяют выполнить что-либо в контексте того события, которое описано данным шагом.

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

Действие шага содержит идентификатор, название и набор параметров. Система, работающая с активностями, должна смотреть на идентификатор и делать что-либо при выборе действия на основе идентификатора. Если идентификатор равен DoStepAction, можем выполнить действие путем вызова метода DoStepActionForBackgroundActivity.

Все остальные идентификаторы действий система обрабатывает по своему усмотрению, они не могут быть выполнены простым вызовом OT API.Возвращает : VoidOtapiAnswer

Выполнить действие для фоновой активности

Когда Фоновая активность ожидает необходимого действия, метод DoActionForBackgroundActivity выполняет это действие для фоновой активности (по сути, отвечает на вопрос, чтобы продолжить процесс).

Принимает:

АргументТипОписание
instanceKeyString
Ключ экземпляра приложения
languageString
Язык для запрашиваемых данных
sessionIdString
Идентификатор сессии
activityTypeString
Тип фоновой активности
activityIdString
Идентификатор фоновой активности
actionIdString
Идентификатор действия

 тип и идентификатор фоновой активности, а также идентификатор действия. Доступные действия можно узнать из свойства Actions информации об активности.

Возвращает: не возвращает ничего, кроме ошибок, если таковые есть.

 

Выполнить действие шага для фоновой активности

Метод DoStepActionForBackgroundActivity

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

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