Описание
Используйте этот метод, чтобы переместить стикер в наборе, созданном ботом, на определённую позицию. Возвращает True при успешном выполнении.
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
| sticker | String | Да | Идентификатор файла стикера |
| position | Integer | Да | Новая позиция стикера в наборе (отсчёт с нуля) |
Примеры
php
<?php
$botToken = 'YOUR_BOT_TOKEN';
$apiUrl = "https://api.telegram.org/bot{$botToken}/";
// Параметры для метода setStickerPositionInSet
$sticker = 'CAACAgIAAxkBAAIB...'; // Идентификатор файла стикера
$position = 2; // Новая позиция в наборе (начиная с 0)
// Подготовка данных
$data = [
'sticker' => $sticker,
'position' => $position
];
// Отправка запроса
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $apiUrl . 'setStickerPositionInSet');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$response = curl_exec($ch);
curl_close($ch);
// Обработка ответа
$result = json_decode($response, true);
if ($result['ok']) {
echo "Позиция стикера успешно изменена!";
} else {
echo "Ошибка: " . $result['description'];
}
// Альтернативный вариант с использованием file_get_contents
/*
$options = [
'http' => [
'method' => 'POST',
'header' => 'Content-Type: application/x-www-form-urlencoded',
'content' => http_build_query($data)
]
];
$context = stream_context_create($options);
$response = file_get_contents($apiUrl . 'setStickerPositionInSet', false, $context);
$result = json_decode($response, true);
*/
?>
python
import requests
def set_sticker_position_in_set(bot_token, sticker, position):
"""
Перемещает стикер в наборе, созданном ботом, на указанную позицию.
:param bot_token: Токен вашего бота
:param sticker: Идентификатор файла стикера
:param position: Новая позиция стикера в наборе (начиная с 0)
:return: True в случае успеха, иначе выбрасывает исключение
"""
url = f"https://api.telegram.org/bot{bot_token}/setStickerPositionInSet"
payload = {
"sticker": sticker,
"position": position
}
response = requests.post(url, json=payload)
response.raise_for_status()
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..." # Идентификатор файла стикера
NEW_POSITION = 0 # Переместить стикер на первую позицию
try:
success = set_sticker_position_in_set(BOT_TOKEN, STICKER_FILE_ID, NEW_POSITION)
if success:
print("Позиция стикера успешно изменена!")
except Exception as e:
print(f"Произошла ошибка: {e}")
История изменений
- API 3.2. Добавлен метод setStickerPositionInSet