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

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


<source lang="bash">
<source lang="bash">
php mediawiki.php create-project
php create-project.php
</source>
</source>


== Конфигурация проекта ==
== Конфигурация проекта ==
Все проекты расположены в папке projects:
<source>
projects/<project-name>.php
</source>
Взаимодействие бота и сайта происходит посредством 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:
<source lang="php">
/**
* @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',
    ];
}
</source>
Метод ''getApiUsernames'' должен возвращать имена пользователей. Пример:
<source lang="php">
/**
* @return array
*/
public function getApiUsernames()
{
    return [
        'ar' => 'MediaWiki-Bot',
        'az' => 'MediaWiki-Bot',
        'en' => 'MediaWiki-Bot',
        'ru' => 'MediaWiki-Bot',
        'tr' => 'MediaWiki-Bot',
    ];
}
</source>
'''Важное замечание:''' пользователей для бота необходимо регистрировать на сайте самостоятельно через веб-интерфейс.
На этом конфигурация проекта завершена.


== Проверка работоспособности ==
== Проверка работоспособности ==
Для начала попробуем вывести список проектов. Для этого выполните команду:
<source lang="bash">
php mediawiki.php projects
</source>
А теперь попробуем авторизоваться:
<source lang="bash">
php mediawiki.php login
</source>
Также мы можем указать язык сайта, на котором хотим авторизоваться:
<source lang="bash">
php mediawiki.php login <lang>
</source>
Пример:
<source lang="bash">
php mediawiki.php login en
</source>
В случае, когда язык не указан, будет использован язык проекта по умолчанию (тот, что был указан при создании проекта).
Если нужно просто выйти выполните команду с флагом --logout:
<source lang="bash">
php mediawiki.php login <lang> --logout
</source>
Пример:
<source lang="bash">
php mediawiki.php login en --logout
</source>

Текущая версия от 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