mirror of
				https://github.com/InsanusMokrassar/TelegramBotAPI.git
				synced 2025-10-30 19:50:12 +00:00 
			
		
		
		
	add support of get/set MyName
This commit is contained in:
		| @@ -0,0 +1,16 @@ | |||||||
|  | package dev.inmo.tgbotapi.extensions.api.bot | ||||||
|  |  | ||||||
|  | import dev.inmo.micro_utils.language_codes.IetfLanguageCode | ||||||
|  | import dev.inmo.tgbotapi.bot.TelegramBot | ||||||
|  | import dev.inmo.tgbotapi.requests.bot.GetMyCommands | ||||||
|  | import dev.inmo.tgbotapi.requests.bot.GetMyName | ||||||
|  | import dev.inmo.tgbotapi.types.commands.BotCommandScope | ||||||
|  | import dev.inmo.tgbotapi.types.commands.BotCommandScopeDefault | ||||||
|  |  | ||||||
|  | suspend fun TelegramBot.getMyName( | ||||||
|  |     languageCode: IetfLanguageCode? = null | ||||||
|  | ) = execute(GetMyName(languageCode)) | ||||||
|  |  | ||||||
|  | suspend fun TelegramBot.getMyName( | ||||||
|  |     languageCode: String? | ||||||
|  | ) = getMyName(languageCode ?.let(::IetfLanguageCode)) | ||||||
| @@ -0,0 +1,19 @@ | |||||||
|  | package dev.inmo.tgbotapi.extensions.api.bot | ||||||
|  |  | ||||||
|  | import dev.inmo.micro_utils.language_codes.IetfLanguageCode | ||||||
|  | import dev.inmo.tgbotapi.bot.TelegramBot | ||||||
|  | import dev.inmo.tgbotapi.requests.bot.GetMyCommands | ||||||
|  | import dev.inmo.tgbotapi.requests.bot.GetMyName | ||||||
|  | import dev.inmo.tgbotapi.requests.bot.SetMyName | ||||||
|  | import dev.inmo.tgbotapi.types.commands.BotCommandScope | ||||||
|  | import dev.inmo.tgbotapi.types.commands.BotCommandScopeDefault | ||||||
|  |  | ||||||
|  | suspend fun TelegramBot.setMyName( | ||||||
|  |     name: String? = null, | ||||||
|  |     languageCode: IetfLanguageCode? = null | ||||||
|  | ) = execute(SetMyName(name, languageCode)) | ||||||
|  |  | ||||||
|  | suspend fun TelegramBot.setMyName( | ||||||
|  |     name: String?, | ||||||
|  |     languageCode: String? | ||||||
|  | ) = setMyName(name, languageCode ?.let(::IetfLanguageCode)) | ||||||
| @@ -0,0 +1,23 @@ | |||||||
|  | package dev.inmo.tgbotapi.requests.bot | ||||||
|  |  | ||||||
|  | import dev.inmo.micro_utils.language_codes.IetfLanguageCode | ||||||
|  | import dev.inmo.micro_utils.language_codes.IetfLanguageCodeSerializer | ||||||
|  | import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest | ||||||
|  | import dev.inmo.tgbotapi.types.* | ||||||
|  | import dev.inmo.tgbotapi.types.abstracts.WithOptionalLanguageCode | ||||||
|  | import dev.inmo.tgbotapi.types.commands.* | ||||||
|  | import kotlinx.serialization.* | ||||||
|  | import kotlinx.serialization.builtins.serializer | ||||||
|  |  | ||||||
|  | @Serializable | ||||||
|  | class GetMyName( | ||||||
|  |     @SerialName(languageCodeField) | ||||||
|  |     @Serializable(IetfLanguageCodeSerializer::class) | ||||||
|  |     override val ietfLanguageCode: IetfLanguageCode? = null | ||||||
|  | ) : SimpleRequest<BotName>, WithOptionalLanguageCode { | ||||||
|  |     override fun method(): String = "getMyName" | ||||||
|  |     override val resultDeserializer: DeserializationStrategy<BotName> | ||||||
|  |         get() = BotName.serializer() | ||||||
|  |     override val requestSerializer: SerializationStrategy<*> | ||||||
|  |         get() = serializer() | ||||||
|  | } | ||||||
| @@ -0,0 +1,25 @@ | |||||||
|  | package dev.inmo.tgbotapi.requests.bot | ||||||
|  |  | ||||||
|  | import dev.inmo.micro_utils.language_codes.IetfLanguageCode | ||||||
|  | import dev.inmo.micro_utils.language_codes.IetfLanguageCodeSerializer | ||||||
|  | import dev.inmo.tgbotapi.requests.abstracts.SimpleRequest | ||||||
|  | import dev.inmo.tgbotapi.types.* | ||||||
|  | import dev.inmo.tgbotapi.types.abstracts.WithOptionalLanguageCode | ||||||
|  | import dev.inmo.tgbotapi.types.commands.* | ||||||
|  | import kotlinx.serialization.* | ||||||
|  | import kotlinx.serialization.builtins.serializer | ||||||
|  |  | ||||||
|  | @Serializable | ||||||
|  | class SetMyName( | ||||||
|  |     @SerialName(nameField) | ||||||
|  |     val name: String? = null, | ||||||
|  |     @SerialName(languageCodeField) | ||||||
|  |     @Serializable(IetfLanguageCodeSerializer::class) | ||||||
|  |     override val ietfLanguageCode: IetfLanguageCode? = null | ||||||
|  | ) : SimpleRequest<Boolean>, WithOptionalLanguageCode { | ||||||
|  |     override fun method(): String = "setMyName" | ||||||
|  |     override val resultDeserializer: DeserializationStrategy<Boolean> | ||||||
|  |         get() = Boolean.serializer() | ||||||
|  |     override val requestSerializer: SerializationStrategy<*> | ||||||
|  |         get() = serializer() | ||||||
|  | } | ||||||
| @@ -0,0 +1,10 @@ | |||||||
|  | package dev.inmo.tgbotapi.types | ||||||
|  |  | ||||||
|  | import kotlinx.serialization.SerialName | ||||||
|  | import kotlinx.serialization.Serializable | ||||||
|  |  | ||||||
|  | @Serializable | ||||||
|  | data class BotName( | ||||||
|  |     @SerialName(nameField) | ||||||
|  |     val name: String | ||||||
|  | ) | ||||||
		Reference in New Issue
	
	Block a user