|
Поделиться

Форумный бот для чата.

Если вы ищете какое-то расширение или нужно его написать, обратитесь сюда.

Сообщение angst66 » 01.03.16 21:06

Автор забросил свой чат. Но мои привыкли, и после миграции на 3.1 постоянно просят добавить бота, чтобы как раньше сообщал о новых темах и сообщениях. Но и старый бот тоже был недоделанный, сообщали из закрытых разделов. Так вот вопрос, есть ли нужные события сейчас, чтобы добавить бота? Возможно ли закрыть от бота закрытые разделы, или делать как тут?
Чтобы вам не искать, приведу инструкцию по подключению бота в 3.0
Open: includes/functions_posting.php
Find
Код: Выделить всё
//
// Post handling functions
//

Add before
Код: Выделить всё
function chat_notification($mode, $subject, $topic_title, $forum_name, $forum_id, $topic_id, $post_id)
{
	global $db, $user, $config, $phpbb_root_path, $phpEx, $auth, $table_prefix;

	$topic_notification = ($mode == 'reply' || $mode == 'quote') ? true : false;
	$forum_notification = ($mode == 'post') ? true : false;
	if (!$topic_notification && !$forum_notification) return;

	$poster_id = $user->data['user_id'];
	$forum_url = generate_board_url() . "/viewforum.$phpEx?f=$forum_id";
	$topic_url = generate_board_url() . "/viewtopic.$phpEx?f=$forum_id&t=$topic_id&p=$post_id&e=$post_id";

	$notify = "<strong>" . $user->data['username'] . "</strong> ";
	if($forum_notification)
	{
		$notify .= " создал в форуме «<a href='{$forum_url}'>{$forum_name}</a>» новую тему: <a href='{$topic_url}'>{$topic_title}</a>";
	}
	if($topic_notification)
	{
		$notify .= " ответил в теме: <a href='{$topic_url}'>{$topic_title}</a>";
	}

	$message = array(
		'user_id'	=> 0,
		'username'	=> "slutsk.net",
		'time'		=> time(),
		'text'		=> $notify,
		'color'		=> '000000'
	);
	define('CHAT_MESSAGES_TABLE',	$table_prefix . 'chat_messages');
	$sql = "INSERT INTO " . CHAT_MESSAGES_TABLE . " " . $db->sql_build_array('INSERT', $message);
	$db->sql_query($sql);	
}

Find
Код: Выделить всё
	// Send Notifications
	if ($mode != 'edit' && $mode != 'delete' && $post_approval)
	{
		user_notification($mode, $subject, $data['topic_title'], $data['forum_name'], $data['forum_id'], $data['topic_id'], $data['post_id']);

Add after
Код: Выделить всё
		chat_notification($mode, $subject, $data['topic_title'], $data['forum_name'], $data['forum_id'], $data['topic_id'], $data['post_id']);
angst66
 
Сообщения: 13
Зарегистрирован: 28.02.16 18:19

Сообщение Shredder » 01.03.16 21:24

angst66 писал(а):есть ли нужные события сейчас, чтобы добавить бота?

Пожалуй, можно повесить на core.submit_post_end

Насчёт закрытых разделов не скажу, т.к. со скриптом не знаком.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 854
Зарегистрирован: 22.08.13 09:05


Вернуться в Запросы расширений для phpBB

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1