Manual:MediaWikiBot/Installation/ru: различия между версиями

Материал из Академия Корана
Перейти к навигации Перейти к поиску
м Maqivi переименовал страницу Manual:MediaWikiBot/Installation/ru в Модуль:MediaWikiBot/Installation/ru
м Maqivi переименовал страницу Модуль:MediaWikiBot/Installation/ru в Manual:MediaWikiBot/Installation/ru поверх перенаправления
 
(нет различий)

Текущая версия от 12:28, 16 ноября 2016

Установка

1. Клонирование репозитория

Склонируйте репозиторий с ботом в нужную папку

git clone https://github.com/IT-Shura/MediaWiki-Bot .

2. Установка зависимостей проекта (Composer)

Установите зависимости проекта выполнив команду:

composer install

3. Установка прав на чтение и запись для папки хранилища

sudo chmod -R 777 storage/

4. Конфигурация

Выполните команду и следуйте инструкциям:

php setup.php

5. Создание нового проекта

Выполните команду и следуйте инструкциям:

php create-project.php

Конфигурация проекта

Все проекты расположены в папке projects:

projects/<project-name>.php

Взаимодействие бота и сайта происходит посредством API - интерфейса, который сайт предоставляет внешним приложениям. После установки бота нужно указать ему адрес(а) API сайта.

Как узнать адрес API?

Узнать адрес API очень просто, для этого нужно всего лишь добавить строку /api.php к адресу вашего сайта (включая поддомен). Например, если наша вики расположена по адресу http://example.com, то ее API будет находится здесь: http://example.com/api.php. Так же обстоят дела с субдоменами: если адрес сайта http://ru.example.com, то его API можно найти по адресу http://ru.example.com/api.php.

Попробуйте перейти по полученному URL через браузер и если страница найдена (должна открыться справка по API), то все сделано верно.

Важное замечание: для мультиязычных вики, где для каждого языка установлен свой движок, API не является общим и его необходимо указать для каждого сайта. То же касается и пользователей.

Метод getApiUrls (класс проекта) должен возвращать адрес(а) API:

/**
 * @return array
 */
public function getApiUrls()
{
    return [
        'ar' => 'http://ar.example/api.php',
        'az' => 'http://az.example/api.php',
        'en' => 'http://en.example/api.php',
        'tr' => 'http://tr.example/api.php',
        'ru' => 'http://ru.example/api.php',
    ];
}

Метод getApiUsernames должен возвращать имена пользователей. Пример:

/**
 * @return array
 */
public function getApiUsernames()
{
    return [
        'ar' => 'MediaWiki-Bot',
        'az' => 'MediaWiki-Bot',
        'en' => 'MediaWiki-Bot',
        'ru' => 'MediaWiki-Bot',
        'tr' => 'MediaWiki-Bot',
    ];
}

Важное замечание: пользователей для бота необходимо регистрировать на сайте самостоятельно через веб-интерфейс.

На этом конфигурация проекта завершена.

Проверка работоспособности

Для начала попробуем вывести список проектов. Для этого выполните команду:

php mediawiki.php projects

А теперь попробуем авторизоваться:

php mediawiki.php login

Также мы можем указать язык сайта, на котором хотим авторизоваться:

php mediawiki.php login <lang>

Пример:

php mediawiki.php login en

В случае, когда язык не указан, будет использован язык проекта по умолчанию (тот, что был указан при создании проекта).

Если нужно просто выйти выполните команду с флагом --logout:

php mediawiki.php login <lang> --logout

Пример:

php mediawiki.php login en --logout