Блог

В InlifeCMS появился новый модуль mod_jabber

Данный модуль в основном используется для отправки мгновенных сообщений в формате xmpp (он же jabber). Этот формат широко используется всеми открытыми сервисами мгновенных сообщений: QIP, Google Talks, Я.Онлайн, Mail Agent и т.д. Настройки данного модуля просты:

 

Используется в основном API модуля, как механизм отправки сообщений. Например, как это сделано в другом модуле чата mod_chatmanager.

Обратите внимание на последний параметр. В нем указан адрес, куда будут дублироваться все сообщения в комнате чата. Таким образом, администратору сайта нет необходимости всегда держать страницу открытой и наблюдать за ней, достаточно, если у него будет загружен клиент мгновенных сообщений, и как только пользователь напишет сообщение в чате, администратору придет мгновенное уведомление об этом.

Реализация проста:

{literal}

$db_room = $this->api->GetSubApiObject('db_room');
$room_info = $db_room->GetRoomInfo((int)$params['room_id']);
// проверим, есть адрес jabber для отправки уведомлений
if($room_info['settings']['jabber_notify'] != ''){
		$modmanager =& ModuleManager::Singleton();
		// проверим, есть ли модуль на сайте
		if($modmanager->FindModuleIntoDB('jabber')){
				$jabber_api =& $modmanager->CreateModuleObject('jabber', 'api');
				$message = 'Message in chat on '.$_SERVER['SERVER_NAME']
                                .' from '.$cuser_info['name'].': '.$params['text'];
				// сообщение отправляется в фоновом режиме
				$jabber_api->MessageInPool($room_info['settings']['jabber_notify'],
                                $message, $errors);
		}
}

{/literal}

Так можно быстро оповещать о заказах в интернет-магазине, сообщениях на форуме, новых вопросах в онлайн-консультации... Предлагайте ваши варианты.

Коленько Сергей