Если на страницах вашего сайта есть jabber и icq контакты, то рекомендую сделать реальное отображение статуса, ведь как не приятно когда копируешь jid или icq, добавляешь в контакты, а он оказывается оффлайн, а зная это заранее можно сразу воспользоватся тем контактом который онлайн или же вообще электронной почтой.
Джабер:
Чтобы отображать статус джабера мы будем использовать специальный сервис web-apps, для этого:
1. Добавляете контакт web-apps-presence@jabber.ru себе в ростер
2. Получив подписку, робот шлёт соответствующее уведомление
3. Если готовы отображать свой статус всем — шлёте роботу сообщение «1», а если передумаете — отправьте нолик «0»
Также у этого сервиса есть дополнительные возможности список которых вы можете посмотреть отправив боту команду help.
Теперь добавив на страницу такой html код:
<img src="http://web-apps.ru:11000/jabber-presence/img/jid/cigulev@qip.ru/" alt="Jabber status"/>
Получим иконку которая соответствует вашему статусу:
Если же у вас высоконагруженный сайт, то во избежании тормозов сервиса web-apps и соответственно тормозов при отдачи картинки статуса, рекомендую автоматически раз в минуту копировать картинку на свой сервер и с него уже показывать пользователям.
Отправляем команду боту которой устанавливаем отдачу статуса в текстовом формате:
set html=%{status}
И немного меняем ссылку:
http://web-apps.ru/jabber-presence/html/jid/cigulev%40qip.ru/
Вызываем раз в минуту, по крону, такой php код:
$result = file_get_contents("http://web-apps.ru/jabber-presence/html/jid/cigulev%40qip.ru/");
if($result == "offline")
{
$result = copy("status/jOffline.png", "status/jabberStatus.png");
}
elseif($result == "available")
{
$result = copy("status/jOnline.png", "status/jabberStatus.png");
}
else
{
$result = copy("status/jOther.png", "status/jabberStatus.png");
}
На сайте отображаем jabberStatus.png.
Прилагаю картинки:
Offline.png
jOnline.png
Other.png
С icq все просто:
Код:
<img src="http://status.icq.com/online.gif?icq=9225229&img=5" alt="icq status"/>
Пример:
Автор: cigulev