@lskjs/bots-plugin-interview

2.85.1 • Public • Published

LSK.js – bots-plugin-interview

@lskjs/bots-plugin-interview – LSK.js plugin for @lskjs/bots module for telegram, slack, discord, whatsapp, twitter, instagram and vk bots creation

LSK logo NPM version NPM downloads NPM Dependency count Have TypeScript types Have tree shaking NPM Package size Package size Ask us in Telegram


Table of contents

⌨️ Install

# yarn
yarn i @lskjs/bots-plugin-interview lodash

# npm
npm i @lskjs/bots-plugin-interview lodash

Bots Plugin Interview

Bots Plugin Interview (@lskjs/bots-plugin-interview) - плагин, позволяющий создавать формы ввода в боте. Реализована вариация с классической браузерной формой с подтверждением введенных данных. Режим диалога находится в стации разработки.

Конфиг для плагина состоит из двух частей - interview и portal. Interview отвечает за настройку формы, её полей и их валидацию. Portal реализует взаимодействие с формой. Например, при каких действиях пользователя будет вызвана форма.

Входные данные сохраняются в базу и хранятся в модели BotsTelegramUserModel. Путь в модели meta.interview.[formName].

Interview

Конфиг для настройки формы, её полей и их валиацию.

bot/plugins/interview/forms - обязательный путь до форм.

Params:

Field Type Description
intro String Название формы. Название формы должно быть уникально и используется в portal-части для коннекта с формой
intro.title String Текст, который видит пользователь при появлении формы
intro.controls Object Поля формы, которые будут заполняться пользователем
controls.[name/city/age] String Названия полей формы внутри конфига
controls.name.title String Название поля формы, которое видит пользователь в intro.title
controls.name.placeholder String Текст, выводимый перед заполнением поля формы
controls.name.format Func Валидация входных данных
intro.fields Array of String Массив с активными полями формы

Example:

bots: {
  plugins: {
    interview: {
      forms: {
        intro:  {
          title: 'Добро пожаловать. Для продолжения пройдите краткую регистрацию!',
          controls: {
            name: {
              title: 'Имя',
              placeholder: 'Введите имя',
              format: String,
            },
            city: {
              title: 'Город',
              placeholder: 'Введите город',
            },
            age: {
              title: 'Возраст',
              placeholder: 'Введите ваш возраст',
              format: Number,
            },
          },
          fields: ['name', 'city', 'age'],
        },
      },
    },
  },
},

Portal

см. Bost Plugin Portal - checkInterview & replyInterview.

📖 License

This project is licensed under the MIT License - see the LICENSE file for details

👥 Contributors


Igor Suvorov

💻 🎨 🤔

👏 Contributing

  1. Fork it (https://github.com/yourname/yourproject/fork)
  2. Create your feature branch (git checkout -b features/fooBar)
  3. Commit your changes (git commit -am 'feat(image): Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

📮 Any questions? Always welcome :)

Package Sidebar

Install

npm i @lskjs/bots-plugin-interview

Weekly Downloads

6

Version

2.85.1

License

MIT

Unpacked Size

39.2 kB

Total Files

7

Last publish

Collaborators

  • lskjsru
  • maxxborer
  • isuvorov
  • yukioru
  • andru_xa
  • natavts
  • blacklightburn
  • ga2mer
  • kafkae
  • sophiyabezruk
  • vladik_deniska
  • finalgetname