telegramium.bots.client.SendStickerReq.scala Maven / Gradle / Ivy
package telegramium.bots.client
import telegramium.bots.ChatId
import telegramium.bots.IFile
import telegramium.bots.ReplyParameters
import telegramium.bots.KeyboardMarkup
/** @param chatId
* Unique identifier for the target chat or username of the target channel (in the format @channelusername)
* @param sticker
* Sticker to send. Pass a file_id as String to send a file that exists on the Telegram servers (recommended), pass
* an HTTP URL as a String for Telegram to get a .WEBP sticker from the Internet, or upload a new .WEBP, .TGS, or
* .WEBM sticker using multipart/form-data. Video and animated stickers can't be sent via an HTTP URL.
* @param businessConnectionId
* Unique identifier of the business connection on behalf of which the message will be sent
* @param messageThreadId
* Unique identifier for the target message thread (topic) of the forum; for forum supergroups only
* @param emoji
* Emoji associated with the sticker; only for just uploaded stickers
* @param disableNotification
* Sends the message silently. Users will receive a notification with no sound.
* @param protectContent
* Protects the contents of the sent message from forwarding and saving
* @param messageEffectId
* Unique identifier of the message effect to be added to the message; for private chats only
* @param replyParameters
* Description of the message to reply to
* @param replyMarkup
* Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions
* to remove a reply keyboard or to force a reply from the user
*/
final case class SendStickerReq(
chatId: ChatId,
sticker: IFile,
businessConnectionId: Option[String] = Option.empty,
messageThreadId: Option[Int] = Option.empty,
emoji: Option[String] = Option.empty,
disableNotification: Option[Boolean] = Option.empty,
protectContent: Option[Boolean] = Option.empty,
messageEffectId: Option[String] = Option.empty,
replyParameters: Option[ReplyParameters] = Option.empty,
replyMarkup: Option[KeyboardMarkup] = Option.empty
)