Урок 4. Компания «Ботософт» — 2 часть

Готовый бот: https://telegram.me/botosoft_bot

Чтобы полностью выполнить ТЗ, нам нужно сделать форму заказа бота.

Давайте вспомним математику, уравнения. В них мы обычно искали переменные x и y. Названия переменных задавались латинскими буквами, а значения могли быть какими угодно: цифрами, числами или выражениями.

В боте мы тоже будем использовать переменные, но значениями будет то, что отправит нам пользователь. Для одного вопроса будет одна переменная, значение которой будет разным для каждого пользователя, как разными бывают x и y для разных уравнений.

Для каждого пользователя есть основные переменные. Их мы видим во вкладке Состояние пользователей, как только пользователь написал боту.

Переменные отображаются как "Переменная": "Значение переменной"

{
  "this_user": {
    "platform_id": ID пользователя в платформе,
    "firstname": "Имя пользователя",
    "lastname": "Фамилия пользователя",
    "full_name": "Полное имя пользователя",
    "username": "Имя пользователя в платформе",
    "language": "Язык интерфейса",
    "country": "Страна в настройках устройства"
  },
  "last_input": "Последний ввод пользователя — то, что отправил пользователь боту"
}

Чтобы бот работал корректно, нужно правильно называть переменные.

Как не стоит называть переменную

  • last_request, this_user — переменные по умолчанию. Запись новых значений в переменные умолчанию могут легко нарушить всю работу бота. С ними можно работать, но изменять с помощью компонентов Ввод от пользователя, Запись, Развилка нельзя.
  • sum, text — действия и типы. В этом случае данные часто записываются некорректно, т.к. бот воспринимает эти значения как действие с переменными или тип данных.
  • var 1 название с пробелом. Переменная просто не запишется, и работать с ней в дальнейшем не получится.
  • кириллица переменные, названные не латинскими буквами, чаще всего просто не работают.

Как составить имя переменной

  • Имя переменной должно содержать латинские буквы, не должно противоречить рекомендациям выше.
  • Чтобы составить переменную из нескольких слов, нужно привести её к одному из видов:
    1. userNewPhone
    2. user_new_phone
  • Для удобства можно сокращать слова в длинных переменных, например usNph.

Есть несколько способов создания переменных. Подробнее о них в разделе документации Переменные.

Мы будем использовать простой способ для анкеты, Ввод от пользователя.

Вопросы анкеты заказа бота:

  1. Для какой аудитории вы хотите создать бота?
  2. Что он должен уметь делать?
  3. Если у вас есть примеры аналогичных ботов, отправьте их в сообщении, или нажмите «нет».
  4. Какой у вас бюджет?
  5. Оставьте email для связи.

Вы можете придумать имена переменных самостоятельно или использовать составленные нами:

  1. aud
  2. toDo
  3. exBots
  4. budget
  5. usEmail

Возвращаемся к Уроку 1, в котором мы рассматривали компоненты. Все компоненты, которые записывают переменные, относятся к условной группе невидимых. Это важно помнить, поскольку, чтобы задать вопрос пользователю, нам нужно добавить видимый компонент перед невидимым.

К видимым компонентам мы можем отнести текст и любые кнопки.


После создания анкеты переходим в раздел, отвечаем на вопросы и просматриваем переменные в Состоянии пользователей.



Для перехода к следующему уроку нажмите на категорию (слева).