Команда saveDocuments — описание и примеры#
Команда saveDocuments предназначена для импорта документов в локальное хранилище КриптоАРМ с внешнего сервера или из локального файла.
Содержание:
- Общая информация
- Формат ссылки
- Получение параметров операции
- Отправка результатов
- Справочник интерфейсов
- Интерфейс приложения
Общая информация#
Команда saveDocuments используется для скачивания и сохранения файлов в директорию документов КриптоАРМ. Поддерживается только операция IMPORT.
Все запросы между КриптоАРМ и сервером ДОЛЖНЫ соответствовать спецификации протокола JSON-RPC 2.0.
В качестве транспорта используется HTTP.
🔍 Общее описание указано в разделе Формат ссылки.
Формат ссылки#
Для выполнения команды saveDocuments должна быть сформирована ссылка вида:
cryptoarm://- зарегистрированный протоколsaveDocuments- выполняемая команда<URL>- ссылка, на которую КриптоАРМ будет слать запросыid- уникальный идентификатор транзакцииauthType- необязательный параметр. Тип аутентификации.
Пример:
Получение параметров операции#
После получения команды saveDocuments КриптоАРМ отправляет запрос на получение параметров операции.
Формат запроса#
| Ключ | Значение | Описание |
|---|---|---|
| jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
| method | signAndEncrypt.parameters | Используемый метод. Внимание: в текущей реализации используется signAndEncrypt.parameters, а не saveDocuments.parameters. |
| id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. |
| diagnostic | IDiagnosticsInformation | Диагностическая информация о рабочем месте. Содержит поля VERSIONS, PROVIDERS, LICENSES. |
Пример:
Формат ответа#
| Ключ | Значение | Описание |
|---|---|---|
| jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
| result | IDocumentsParameters | Объект со сведениями о параметрах операции |
| id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. |
Пример ответа:
Отправка результатов#
После импорта КриптоАРМ отправляет результаты операции на сервер.
Формат запроса результата#
| Ключ | Значение | Описание |
|---|---|---|
| jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
| method | documents.parameters | Используемый метод. |
| params | { id, documentsResults } | Результаты импорта |
Поле documentsResults#
Массив объектов с результатами импорта по каждому файлу:
| Свойство | Тип | Описание |
|---|---|---|
| name | string | Имя файла |
| id | string | Идентификатор файла (из исходного запроса) |
| result | boolean | Успешность сохранения (true — успешно) |
Пример:
Справочник интерфейсов#
Интерфейс IDocumentsParameters#
Объекты данного типа описывают параметры команды импорта документов.
| Свойство | Тип | Описание |
|---|---|---|
| operation | string[] | Массив операций. Единственное поддерживаемое значение: ["IMPORT"]. |
| props | IDocumentsOperationProps | Параметры операции |
Интерфейс IDocumentsOperationProps#
| Свойство | Тип | Описание |
|---|---|---|
| headerText? | string | Необязательный параметр. Используется для отображения в заголовке окна. Максимальная длина - 40 символов. |
| files | IFile[] | Массив файлов для импорта. Каждый файл скачивается по URL и сохраняется в директорию документов КриптоАРМ. |
| license? | string | Необязательная временная лицензия на время операции. |
Интерфейс приложения#
При выполнении команды saveDocuments КриптоАРМ скачивает указанные файлы и сохраняет их в хранилище документов. После завершения окно приложения не сворачивается в трей — обновляется список документов.