mirror of
https://github.com/valitydev/damsel.git
synced 2024-11-06 17:55:23 +00:00
77 lines
2.6 KiB
Thrift
77 lines
2.6 KiB
Thrift
namespace java com.rbkmoney.damsel.user_interaction
|
||
include "base.thrift"
|
||
|
||
/**
|
||
* Строковый шаблон согласно [RFC6570](https://tools.ietf.org/html/rfc6570) Level 4.
|
||
*/
|
||
typedef string Template
|
||
|
||
/**
|
||
* Форма, представленная набором полей и их значений в виде строковых шаблонов.
|
||
*/
|
||
typedef map<string, Template> Form
|
||
typedef string CryptoAddress
|
||
|
||
typedef string CryptoCurrencySymbolicCode
|
||
|
||
struct CryptoCash {
|
||
1: required base.Rational crypto_amount
|
||
2: required CryptoCurrencySymbolicCode crypto_symbolic_code
|
||
}
|
||
|
||
/**
|
||
* Запрос 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
|
||
}
|
||
|
||
// Платеж через терминал
|
||
struct PaymentTerminalReceipt {
|
||
// Сокращенный идентификатор платежа и инвойса (spid)
|
||
1: required string short_payment_id;
|
||
|
||
// Дата истечения срока платежа
|
||
// после этой даты платеж будет отклонен
|
||
2: required base.Timestamp due
|
||
}
|
||
|
||
struct CryptoCurrencyTransferRequest {
|
||
1: required CryptoAddress crypto_address
|
||
2: required CryptoCash crypto_cash
|
||
}
|
||
|
||
union UserInteraction {
|
||
/**
|
||
* Требование переадресовать user agent пользователя, в виде HTTP-запроса.
|
||
*
|
||
* В шаблонах в структуре HTTP-запроса могут встретиться следующие переменные:
|
||
* - `termination_uri`
|
||
* URI, на который следует переадресовать user agent пользователя по завершении
|
||
* взаимодействия.
|
||
*/
|
||
1: BrowserHTTPRequest redirect
|
||
|
||
/**
|
||
* Информация о платежной квитанции, которую нужно оплатить вне нашей системы
|
||
**/
|
||
2: PaymentTerminalReceipt payment_terminal_reciept
|
||
|
||
/**
|
||
* Запрос на перевод криптовалюты
|
||
**/
|
||
3: CryptoCurrencyTransferRequest crypto_currency_transfer_request
|
||
}
|