2016-09-23 20:54:14 +00:00
|
|
|
|
namespace java com.rbkmoney.damsel.user_interaction
|
2017-08-11 09:01:10 +00:00
|
|
|
|
include "base.thrift"
|
2016-09-23 20:54:14 +00:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Строковый шаблон согласно [RFC6570](https://tools.ietf.org/html/rfc6570) Level 4.
|
|
|
|
|
*/
|
|
|
|
|
typedef string Template
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Форма, представленная набором полей и их значений в виде строковых шаблонов.
|
|
|
|
|
*/
|
|
|
|
|
typedef map<string, Template> Form
|
2019-05-17 15:13:45 +00:00
|
|
|
|
typedef string CryptoAddress
|
|
|
|
|
|
|
|
|
|
typedef string CryptoCurrencySymbolicCode
|
|
|
|
|
|
2019-10-21 09:03:29 +00:00
|
|
|
|
struct QrCode {
|
|
|
|
|
/** Содержимое QR-кода, записанное в виде потока байт */
|
|
|
|
|
1: required binary payload
|
|
|
|
|
}
|
|
|
|
|
|
2019-05-17 15:13:45 +00:00
|
|
|
|
struct CryptoCash {
|
|
|
|
|
1: required base.Rational crypto_amount
|
|
|
|
|
2: required CryptoCurrencySymbolicCode crypto_symbolic_code
|
|
|
|
|
}
|
2016-09-23 20:54:14 +00:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Запрос HTTP, пригодный для отправки средствами браузера.
|
|
|
|
|
*/
|
|
|
|
|
union BrowserHTTPRequest {
|
|
|
|
|
1: BrowserGetRequest get_request
|
|
|
|
|
2: BrowserPostRequest post_request
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct BrowserGetRequest {
|
|
|
|
|
/** Шаблон URI запроса, набор переменных указан ниже. */
|
|
|
|
|
1: required Template uri
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
struct BrowserPostRequest {
|
|
|
|
|
/** Шаблон URI запроса, набор переменных указан ниже. */
|
|
|
|
|
1: required Template uri
|
|
|
|
|
2: required Form form
|
|
|
|
|
}
|
|
|
|
|
|
2019-10-21 09:03:29 +00:00
|
|
|
|
/**
|
|
|
|
|
* Платеж через терминал.
|
|
|
|
|
*/
|
2017-08-11 09:01:10 +00:00
|
|
|
|
struct PaymentTerminalReceipt {
|
2019-10-21 09:03:29 +00:00
|
|
|
|
/** Сокращенный идентификатор платежа и инвойса (spid). */
|
2017-08-11 09:01:10 +00:00
|
|
|
|
1: required string short_payment_id;
|
|
|
|
|
|
2019-10-21 09:03:29 +00:00
|
|
|
|
/**
|
|
|
|
|
* Дата истечения срока платежа.
|
|
|
|
|
* После этой даты платеж будет отклонен.
|
|
|
|
|
*/
|
2017-08-11 09:01:10 +00:00
|
|
|
|
2: required base.Timestamp due
|
2019-05-17 15:13:45 +00:00
|
|
|
|
}
|
2017-08-11 09:01:10 +00:00
|
|
|
|
|
2019-05-17 15:13:45 +00:00
|
|
|
|
struct CryptoCurrencyTransferRequest {
|
|
|
|
|
1: required CryptoAddress crypto_address
|
|
|
|
|
2: required CryptoCash crypto_cash
|
|
|
|
|
}
|
2017-08-11 09:01:10 +00:00
|
|
|
|
|
2019-11-15 11:20:25 +00:00
|
|
|
|
struct QrCodeDisplayRequest {
|
2019-10-21 09:03:29 +00:00
|
|
|
|
1: required QrCode qr_code
|
|
|
|
|
}
|
|
|
|
|
|
2016-09-23 20:54:14 +00:00
|
|
|
|
union UserInteraction {
|
|
|
|
|
/**
|
|
|
|
|
* Требование переадресовать user agent пользователя, в виде HTTP-запроса.
|
|
|
|
|
*
|
|
|
|
|
* В шаблонах в структуре HTTP-запроса могут встретиться следующие переменные:
|
|
|
|
|
* - `termination_uri`
|
|
|
|
|
* URI, на который следует переадресовать user agent пользователя по завершении
|
|
|
|
|
* взаимодействия.
|
|
|
|
|
*/
|
|
|
|
|
1: BrowserHTTPRequest redirect
|
2017-08-11 09:01:10 +00:00
|
|
|
|
|
|
|
|
|
/**
|
2019-10-21 09:03:29 +00:00
|
|
|
|
* Информация о платежной квитанции, которую нужно оплатить вне нашей системы
|
|
|
|
|
*/
|
2017-08-11 09:01:10 +00:00
|
|
|
|
2: PaymentTerminalReceipt payment_terminal_reciept
|
2019-05-17 15:13:45 +00:00
|
|
|
|
|
|
|
|
|
/**
|
2019-10-21 09:03:29 +00:00
|
|
|
|
* Запрос на перевод криптовалюты
|
|
|
|
|
*/
|
2019-05-17 15:13:45 +00:00
|
|
|
|
3: CryptoCurrencyTransferRequest crypto_currency_transfer_request
|
2019-10-21 09:03:29 +00:00
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* Запрос на отображение пользователю QR-кода
|
|
|
|
|
*/
|
2019-11-15 11:20:25 +00:00
|
|
|
|
4: QrCodeDisplayRequest qr_code_display_request
|
2016-09-23 20:54:14 +00:00
|
|
|
|
}
|