69 lines
3.1 KiB
Kotlin
69 lines
3.1 KiB
Kotlin
package dev.inmo.tgbotapi.extensions.api.send.payments
|
|
|
|
import dev.inmo.tgbotapi.bot.TelegramBot
|
|
import dev.inmo.tgbotapi.requests.send.payments.SendInvoice
|
|
import dev.inmo.tgbotapi.types.*
|
|
import dev.inmo.tgbotapi.types.buttons.InlineKeyboardMarkup
|
|
import dev.inmo.tgbotapi.types.payments.LabeledPrice
|
|
import dev.inmo.tgbotapi.types.payments.abstracts.Currency
|
|
|
|
/**
|
|
* @param replyMarkup Some [InlineKeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.inlineKeyboard]
|
|
* as a builder for that
|
|
*/
|
|
suspend fun TelegramBot.sendInvoice(
|
|
chatId: ChatId,
|
|
title: String,
|
|
description: String,
|
|
payload: String,
|
|
providerToken: String,
|
|
currency: Currency,
|
|
prices: List<LabeledPrice>,
|
|
maxTipAmount: Int? = null,
|
|
suggestedTipAmounts: List<Int>? = null,
|
|
startParameter: StartParameter? = null,
|
|
providerData: String? = null,
|
|
requireName: Boolean = false,
|
|
requirePhoneNumber: Boolean = false,
|
|
requireEmail: Boolean = false,
|
|
requireShippingAddress: Boolean = false,
|
|
shouldSendPhoneNumberToProvider: Boolean = false,
|
|
shouldSendEmailToProvider: Boolean = false,
|
|
priceDependOnShipAddress: Boolean = false,
|
|
disableNotification: Boolean = false,
|
|
replyToMessageId: MessageIdentifier? = null,
|
|
allowSendingWithoutReply: Boolean? = null,
|
|
replyMarkup: InlineKeyboardMarkup? = null
|
|
) = execute(
|
|
SendInvoice(chatId, title, description, payload, providerToken, currency, prices, maxTipAmount, suggestedTipAmounts ?.sorted(), startParameter, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, disableNotification, replyToMessageId, allowSendingWithoutReply, replyMarkup)
|
|
)
|
|
|
|
/**
|
|
* @param replyMarkup Some [InlineKeyboardMarkup]. See [dev.inmo.tgbotapi.extensions.utils.types.buttons.inlineKeyboard]
|
|
* as a builder for that
|
|
*/
|
|
suspend fun TelegramBot.sendInvoice(
|
|
user: CommonUser,
|
|
title: String,
|
|
description: String,
|
|
payload: String,
|
|
providerToken: String,
|
|
currency: Currency,
|
|
prices: List<LabeledPrice>,
|
|
maxTipAmount: Int? = null,
|
|
suggestedTipAmounts: List<Int>? = null,
|
|
startParameter: StartParameter? = null,
|
|
providerData: String? = null,
|
|
requireName: Boolean = false,
|
|
requirePhoneNumber: Boolean = false,
|
|
requireEmail: Boolean = false,
|
|
requireShippingAddress: Boolean = false,
|
|
shouldSendPhoneNumberToProvider: Boolean = false,
|
|
shouldSendEmailToProvider: Boolean = false,
|
|
priceDependOnShipAddress: Boolean = false,
|
|
disableNotification: Boolean = false,
|
|
replyToMessageId: MessageIdentifier? = null,
|
|
allowSendingWithoutReply: Boolean? = null,
|
|
replyMarkup: InlineKeyboardMarkup? = null
|
|
) = sendInvoice(user.id, title, description, payload, providerToken, currency, prices, maxTipAmount, suggestedTipAmounts, startParameter, providerData, requireName, requirePhoneNumber, requireEmail, requireShippingAddress, shouldSendPhoneNumberToProvider, shouldSendEmailToProvider, priceDependOnShipAddress, disableNotification, replyToMessageId, allowSendingWithoutReply, replyMarkup)
|