Описание
Используйте этот метод, чтобы изменить список эмодзи, назначенных обычному или пользовательскому стикеру-эмодзи. Стикер должен принадлежать набору стикеров, созданному ботом. Возвращает True при успешном выполнении.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| sticker | String | Да | Идентификатор файла стикера |
| emoji_list | Array of String | Да | Список из 1-20 эмодзи, связанных со стикером, в формате JSON |
Примеры
php
<?php
$botToken = 'YOUR_BOT_TOKEN';
$apiUrl = "https://api.telegram.org/bot{$botToken}/";
// Идентификатор стикера (можно получить из сообщения со стикером)
$stickerFileId = 'CAACAgIAAxkBAAIB...'; // Пример file_id стикера
// Список эмодзи (1-20 элементов)
$emojiList = ['😀', '😂', '🤩'];
// Подготовка данных
$data = [
'sticker' => $stickerFileId,
'emoji_list' => json_encode($emojiList)
];
// Отправка запроса
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiUrl . 'setStickerEmojiList');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: multipart/form-data']);
$response = curl_exec($ch);
curl_close($ch);
// Обработка ответа
$result = json_decode($response, true);
if ($result['ok']) {
echo "Список эмодзи успешно обновлен!\n";
} else {
echo "Ошибка: " . $result['description'] . "\n";
}
// Альтернативный вариант с использованием file_get_contents
/*
$options = [
'http' => [
'method' => 'POST',
'header' => 'Content-Type: multipart/form-data',
'content' => http_build_query($data)
]
];
$context = stream_context_create($options);
$response = file_get_contents($apiUrl . 'setStickerEmojiList', false, $context);
$result = json_decode($response, true);
*/
?>
python
import requests
def set_sticker_emoji_list(bot_token, sticker, emoji_list):
"""
Изменяет список эмодзи, связанных со стикером.
Args:
bot_token (str): Токен вашего бота
sticker (str): Идентификатор файла стикера
emoji_list (list): Список из 1-20 эмодзи
Returns:
bool: True в случае успеха
"""
url = f"https://api.telegram.org/bot{bot_token}/setStickerEmojiList"
payload = {
"sticker": sticker,
"emoji_list": emoji_list
}
response = requests.post(url, json=payload)
result = response.json()
if result.get("ok"):
return True
else:
raise Exception(f"Ошибка: {result.get('description')}")
# Пример использования
if __name__ == "__main__":
BOT_TOKEN = "ВАШ_ТОКЕН_БОТА"
STICKER_FILE_ID = "CAACAgIAAxkBAAIB..." # Идентификатор файла стикера
EMOJI_LIST = ["😊", "👍", "🎉"] # Список эмодзи
try:
success = set_sticker_emoji_list(BOT_TOKEN, STICKER_FILE_ID, EMOJI_LIST)
if success:
print("Список эмодзи успешно обновлен!")
except Exception as e:
print(f"Произошла ошибка: {e}")
История изменений
- API 6.6. Добавлен метод setStickerEmojiList