Download the PHP package m-m/u_bot without Composer

On this page you can find all versions of the php package m-m/u_bot. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package u_bot

Универсальное приложение для создания навыков и ботов

PHP Composer

Установка

Установите движок:

  1. Скачать движок из репозитория;
  2. Установить через composer;

    Установка из репозитория

    Для установки, просто склонируйте git репозиторий, а после подключайте нужные файлы.

Установка через composer

Для начала установите composer, а после выполните команду:

Документация

Документация: u_bot. Получить информации о работе приложения можно в телеграм канале или группе. Также можно прочитать статью, в которой рассказано как создать навык "Я никогда не"

Описание

Движок позволяет создать навык для Яндекс.Алиса, Маруси, Сбер(SmartApp), бота для vk, viber или telegram, с идентичной логикой. Типы доступных приложений в дальнейшем будут дополняться.

При необходимости есть возможность создать приложение со своим типом бота. Тип приложения устанавливается в mmApp::$appType, по умолчанию используется alisa.

Старт

Для успешного старта на всех платформах необходимо настроить конфигурацию приложения. А именно настроить подключение к бд(если есть необходимость), а также указать все необходимые авторизационные токены для корректной работы с api. Массив с настройками и подключению к базе данных и логам выглядит следующим образом:

Для установки конфигурации передайте данные в приложение следующим образом:

Массив с параметрами приложения выглядит следующим образом:

Для установки параметров передайте данные в приложение следующим образом:

Далее создайте файл входа в приложение, а также класс отвечающий за логику приложения. Он должен быть унаследован от абстрактного класса BotController, и имеет следующий вид:

Свой тип приложения.

Для добавления своего типа приложения, установите тип в значение T_USER_APP. После чего передайте в функцию run класс, отвечающий за инициализацию и возврат данных. Класс должен быть унаследован от абстрактного класса TemplateTypeModel

Создание своего типа приложения

Логика нового типа приложения

Для начала необходимо создать класс, отвечающий за инициализацию и отображение результата работы. Проще говоря в данном классе происходит получение данных, а также инициализация параметров(Метод init()). После успешной обработки пользовательского запроса, класс должен подготовить ответ в требуемом формате(Метод getContext()). Пример:

Класс отвечающий за инициализацию основных параметров приложения.

  1. Устанавливается идентификатор пользователя
  2. Указывается запрос пользователя(Введенные текст)
  3. Другие необходимые параметры

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

Второстепенные компоненты

Все типы приложений имеют примерно одинаковый интерфейс класса, и должны быть унаследованы от абстрактного класса. Основные используемые компоненты:

  1. Кнопки/клавиатура - Используется для навигации и отображения кнопок
  2. Карточка - Используется для отображения изображений, коллекции из изображений, либо списка
  3. Звуки - Воспроизводимые звуки. Голосовые сообщения, либо простой звук.

Пример для отображения кнопок/клавиатуры:

Пример для отображения карточки:

Пример для воспроизведения звука:

UnitTest

Для запуска unit тестов установите все зависимости через composer

После установки зависимостей запустите unit тесты, использую одну из команд

или

SSL

Для работы некоторых приложений, необходимо иметь ssl сертификат. Поэтому стоит его получить. Для этого можно воспользоваться acme.

Установка acme.sh

Использование и установка сертификата для сайта

  1. domain - Название домена (example.com)
  2. domain dir - Директория, в которой находится сайт

  3. domain - Название домена (example.com)
  4. key file - Директория, в которой хранится ключ сертификата
  5. cert file - Директория, в которой сохранится сертификат

Важно!

После получения сертификата, необходимо перезапустить сервер. Для ngnix - sudo service nginx reload

Ngrok

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

Установка

Смотрите на сайте ngrok

Запуск

  1. domain - локальный адрес сайта. Важно сайт должен быть доступен на машине! (Прописан в hosts)
  2. port - Порт для подключения. Для бесплатного аккаунта нельзя использовать 443 порт

После успешного запуска, нужно скопировать полученную ссылку с https, и вставить в консоль разработчика.

Тестирование Вашего проекта

Протестировать приложение можно 2 способами:

  1. Через ngrok
  2. Через консоль

    Тестирование через Ngroc

    Для тестирование через ngrok, нужно скачать программу, и запустить её. После полученную ссылку с https, вставить в консоль разработчика, и перейти на вкладку тестирования. Данное действие актуально только для Алисы. Для других платформ ссылка вставляется в соответствующую консоль разработчика.

Тестирование в консоли

Для тестирования используется тот же код что и при запуске. С той лишь разнице, что нужно вызвать метод test вместо run.

После запустить приложение.

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

  1. Если навык в определенный момент ставит isEnd в True(Что означает завершение диалога), то нужно дойти до того места сценария, в котором диалог завершается.
  2. Ввести команду exit.

Помимо ответов, можно вернуть время обработки команд.

Помощь и поддержка проекта

Любая помощь и поддержка приветствуется. Если будут найдены различные ошибки или предложения по улучшению, то смело пишите на почту: [email protected]


All versions of u_bot with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2
ext-mbstring Version *
ext-curl Version *
ext-json Version *
ext-mysqli Version *
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package m-m/u_bot contains the following files

Loading the files please wait ....