Команда sendMail — описание и примеры#
Команда sendMail позволяет создать новое электронное письмо (черновик) в КриптоАРМ с переданными параметрами: получатели, тема, содержимое, вложения, флаги подписи и шифрования.
Содержание:
- Команда sendMail — описание и примеры
- Общая информация
- Формат ссылки
- Получение параметров операции
- Отправка статуса
- Справочник интерфейсов
- Интерфейс приложения
Общая информация#
Команда sendMail используется для создания нового черновика электронного письма в КриптоАРМ с переданными параметрами. После заполнения и отправки письма пользователем, КриптоАРМ уведомляет сервер о статусе операции.
Схема взаимодействия:

Все запросы между КриптоАРМ и сервером ДОЛЖНЫ соответствовать спецификации протокола JSON-RPC 2.0.
В качестве транспорта используется HTTP.
🔍 Общее описание указано в разделе Формат ссылки.
Формат ссылки#
Для выполнения команды sendMail должна быть сформирована ссылка вида:
cryptoarm://- зарегистрированный протоколsendMail- выполняемая команда<URL>- ссылка, на которую КриптоАРМ будет слать запросыid- уникальный идентификатор транзакцииauthType- необязательный параметр. Тип аутентификации.
Пример:
Локальный режим: При использовании через локальное API (
file://или встроенный JSON),paramsJsonдолжен содержать непосредственно объектIMailOperationProps(см. ниже).
Получение параметров операции#
После получения команды sendMail КриптоАРМ отправляет запрос на получение параметров операции.
Формат запроса (удалённый режим)#
| Ключ | Значение | Описание |
|---|---|---|
| jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
| method | sendMail.parameters | Используемый метод. Всегда sendMail.parameters. |
| id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. |
| diagnostic | IDiagnosticsInformation | Диагностическая информация о рабочем месте. Содержит поля VERSIONS, PROVIDERS, LICENSES. |
Пример:
Формат ответа#
| Ключ | Значение | Описание |
|---|---|---|
| jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
| result | { props: { mailProps: IMailProps } } | Объект со свойствами письма |
| id | Уникальный идентификатор | Используется идентификатор, который указан в ссылке на операцию. |
Пример ответа:
Отправка статуса#
После того как пользователь отправит письмо или закроет окно, КриптоАРМ отправляет статус операции на сервер.
Формат запроса статуса#
| Ключ | Значение | Описание |
|---|---|---|
| jsonrpc | «2.0» | Версия JSON-RPC протокола. Всегда «2.0». |
| method | sendMail.status | Используемый метод. |
| params | { id, status } | Параметры статуса |
| Параметр | Тип | Описание |
|---|---|---|
| id | string | Идентификатор транзакции |
| status | string | Статус: "success" (письмо отправлено) или "canceled" (отменено) |
Пример:
Справочник интерфейсов#
Интерфейс IMailProps#
Объекты данного типа описывают параметры электронного сообщения.
| Свойство | Тип | Описание |
|---|---|---|
| to | string[] | Массив адресов получателей |
| cc? | string[] | Массив адресов получателей копии |
| bcc? | string[] | Массив адресов получателей скрытой копии |
| subject | string | Тема сообщения |
| content | string | Текстовое содержимое сообщения |
| htmlContent? | string | Форматированное содержимое сообщения в формате HTML |
| attachments? | IFile[] | Файлы для прикрепления к сообщению (вложения). Скачиваются КриптоАРМ перед открытием окна письма. |
| sign | boolean | Флаг, указывающий на необходимость подписать сообщение |
| encrypt | boolean | Флаг, указывающий на необходимость зашифровать сообщение |
| deliveryReport | boolean | Флаг, включающий получение отчета о доставке |
| readReport | boolean | Флаг, включающий получение отчета о прочтении |
Параметры лицензии и подписи#
| Свойство | Тип | Описание |
|---|---|---|
| license? | string | Необязательный параметр. Временная лицензия для выполнения операции (добавляется на время сессии). |
Интерфейс приложения#
При выполнении команды sendMail открывается окно создания нового сообщения с предзаполненными полями: получатели, тема, содержимое, вложения. Если передан флаг sign, включается подпись сообщения. Если передан флаг encrypt, включается шифрование.
Пользователь может отредактировать письмо, выбрать сертификаты для подписи/шифрования и отправить его или отменить операцию. После закрытия окна КриптоАРМ отправляет статус (success или canceled) на сервер.