# Указать ботжету владельца бота

## Особые контакты: разработчик и владелец

🆓 Для двух особых контактов в каждом БОТе доступ к Ботжетам остается **всегда бесплатным**:&#x20;

1. 👨‍💻 разработчик бота,
2. 👩‍💼 владелец бота.&#x20;

Для них ботжеты буду работать без подписки.

👨‍💻 Разработчик - кто добавил ботжет в Бот и отправил первый запрос.

👩‍💼 Владелец - разработчик указывает контакт владельца для конкретного БОТа в Ботжет-подписке.

Разработчик и Владелец могут быть одним лицом. Если владелец бота сам его разрабатывает, он может добавить второй "особый" контакт, например тестировщика, у которого ботжеты будут работать в этом боте даже без Ботжет-подписки.

### Как добавить второй контакт

Чтобы сообщить ботжету второй "особый" контакт для разрабатываемого бота, нужно:

1. Сделать скрытый сценарий и дать прямую ссылку на него тому контакту, который будет вторым особым.
2. Добавить в сценарий блок HTTP-запрос и использовать метод "setBotOwner".&#x20;
3. Контакт должен пройти сценарий  с этим блоком.

## Настройка блока HTTP-запрос для добавления второго особого контакта

### Добавить блок HTTP-запрос

![Блок HTTP-запрос](/files/82354a2eef9b912d1e88c3bd6f8458fed00025c1)

### Настройки блока

![Блок HTTP-запрос](/files/SjpKAbUMp8Zld5EXMPHj)

Копируйте фрагменты ниже и вставляйте в настройках своего блока HTTP-запрос.

URL

```url
https://maxonline.ru/botjet/setBotOwner/
```

#### Метод: POST

Заголовки: нет

#### Body:&#x20;

x-www-form-urlencoded

#### Параметры запроса

![Параметры запроса](/files/fObmrKVYxydSxSzUXWMt)

{% hint style="info" %}
Важно точно прописать имена параметров запроса (левая колонка) и имена переменных - значений параметров (правая колонка).
{% endhint %}

<table data-full-width="true"><thead><tr><th width="160">key</th><th width="233">value</th><th width="96" align="center">Обязат.</th><th>Описание</th></tr></thead><tbody><tr><td><strong>token</strong></td><td>token из BotFather</td><td align="center"><mark style="color:red;">да</mark></td><td><em>API token из BotFather</em>. На картинке ниже указана глобальная переменная {{ token }}, в которой сохранен <em>API token из BotFather</em>. <em>Имя переменной может быть любым</em>, главное, чтобы в ней было нужное значение. Также можно в правой колонке указать само значение <em>API token</em>, без использования переменной.<br><em><strong>Проверьте, что имя Глобальной переменной и имя переменной в настройках этого параметра совпадают❗</strong></em></td></tr><tr><td><strong>chat_id</strong></td><td>{{ telegram_id }}</td><td align="center"><mark style="color:red;">да</mark></td><td><em>telegram-id пользователя</em>, который будет назначен владельцем бота. Используется глобальная константа {{ telegram_id }}</td></tr></tbody></table>

#### Timeout:&#x20;

по-умолчанию

#### Отправлять в запросе данные контакта:&#x20;

❌ выключить

#### Выводить тело ответа в чат

✅ включить

#### Записать ответ json в переменные:&#x20;

❌ выключить

#### Обработать ответ с помощь JavaScript:&#x20;

❌ выключить

#### Записать ответ в пользовательскую переменную:&#x20;

❌ выключить

## Как работает смена владельца

Скрипт обрабатывает возможные ситуации. Для удобства представлено в виде пошагового блока.

{% stepper %}
{% step %}

### Первое назначение владельца

* Условие: владелец для бота еще не назначался.
* Первое назначение владельца бесплатное.
* Ответ: "Успешно! Новый владелец бота (особый контакт) успешно сохранен в базе."
  {% endstep %}

{% step %}

### Смена существующего владельца

* Вторая и последующие смены владельца бота платные - стоимость 10₽. Списывается с баланса Ботжет-подписки этого бота.
* Действие: со счета списывается 10₽ за операцию.&#x20;
* Действие: в базе сохраняется новый контакт владельца. Этот контакт будет действовать в любом ботжете внутри данного бота.
* Ответ: "Данные нового владельца бота сохранены в базе данных ботжета. С баланса бота списано 10₽ за эту операцию."
* Если на балансе недостаточно средств — смены владельца не произойдет, деньги не спишутся.
  {% endstep %}
  {% endstepper %}

### Результат работы метода

После выполнения метода, блок HTTP-запрос вернет результат в чат. \
Важно! Обязательно включите настройку: "Выводить тело ответа в чат"

{% hint style="warning" %}
Важно: Смена владельца — платная операция (кроме первого назначения). Убедитесь, что на балансе бота достаточно средств перед выполнением операции.
{% endhint %}

Настройка смены владельца бота завершена.

<a href="https://help.maxonline.ru/support" class="button primary">Поддержка</a>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.maxonline.ru/instrukcii-dlya-leadtex/botdzhety/botzhet-podpiska-oplata-botzhetov/ukazat-botzhetu-vladelca-bota.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
