Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
NightMareLunacy

Бот на IPB 3.X.X

Рекомендованные сообщения

Здравствуйте, решил поставить форум IPB 3.x.x. т.к я с ним работал, и нормально его знаю.

 

Но столкнулся с проблемой. Мне нужно реализовать бота на форум хотел в нем реализовать, что как только на игровом сервере назначили бан игроку. ТО в соответствующем разделе назовем "Баны", бот отписывался.

 

Ник:

Причина:

Дата окончания бана:

 

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

Где найти модуль как настроить, или его только под заказ?

 

Подскажите пожалуйста.

Поделиться сообщением


Ссылка на сообщение

Используйте classPost. Содержит методы addReply и addTopic.

 

Как-то так:

<?php

define('IPS_ENFORCE_ACCESS', true);
require_once( 'initdata.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsController.php' );

$registry = ipsRegistry::instance();
$registry->init();

$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . '/sources/classes/post/classPost.php', 'classPost', 'forums' );
$post = new $classToLoad( $registry );

$post->setForumID( 1 ); 
$post->setAuthor( 1 );
$post->setPostContent( "[i]Hello[/i] [b]there![/b]" );
$post->setTopicTitle('Hi!');
$post->setPublishedRedirectSkip( true );

if($post->addTopic()) {
echo 'Тема успешно создана';
} else {
echo 'Ошибка: '.$post->_postErrors;
}

?>

  • Upvote 2

Поделиться сообщением


Ссылка на сообщение

Ответ в теме [addReply] (3.3x, 3.4x)

Topic Posting Library (classPost.php)

 

setForumID - ид форума где находится тема

setTopicID - ид темы

setAuthor - ид автора

 

define('IPS_ENFORCE_ACCESS', true);
require_once( 'initdata.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsController.php' );

$registry = ipsRegistry::instance();
$registry->init();

$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . '/sources/classes/post/classPost.php', 'classPost', 'forums' );
$post = new $classToLoad( $registry );

$post->setForumID(2);
$post->setTopicID(34);
$post->setAuthor(1);
$post->setPublished(true);
$post->setPostContent('My api post');

if($post->addReply()) {
   echo 'Сообщение успешно добавлено';
} else {
   echo 'Ошибка: '.$post->_postErrors;
}

Поделиться сообщением


Ссылка на сообщение

Ответ в теме [addReply] (для более старых версии 3.1x, 3.2x)

 

define('IPS_ENFORCE_ACCESS', true);
require_once( 'initdata.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsRegistry.php' );
require_once( IPS_ROOT_PATH . 'sources/base/ipsController.php' );

$registry = ipsRegistry::instance();
$registry->init();

$classToLoad = IPSLib::loadLibrary( IPSLib::getAppDir( 'forums' ) . '/sources/classes/post/classPost.php', 'classPost', 'forums' );
$post = new $classToLoad( $registry );

$post->setForumID(2);
$post->setForumData($registry->class_forums->getForumById($post->getForumID()));
$post->setTopicID(34);
$post->setTopicData($registry->topics->getTopicById($post->getTopicID()));
$post->setAuthor(1);
$post->setPublished(true);
$post->setPostContent('My api post');

if($post->addReply()) {
   echo 'Сообщение успешно добавлено';
} else {
   echo 'Ошибка: '.$post->_postErrors;
}

Поделиться сообщением


Ссылка на сообщение

@siv1987,

Извиняюсь, а что это за код, для чего он?

Поделиться сообщением


Ссылка на сообщение

Ответ в теме [addReply] (для более старых версии 3.1x, 3.2x)

Я так понял что нужно создать файл с таким текстом? А куда его разместить?

Поделиться сообщением


Ссылка на сообщение
Я так понял что нужно создать файл с таким текстом?
Да. Куда хотите. Создали файл reply.php с указанным содержимым, поместили его в корень форума. Каждый раз при обращении к forum/reply.php будет публиковаться ответ.
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

×
×
  • Создать...