Изменить значок статуса чата MSN - PullRequest
0 голосов
/ 15 февраля 2011

Я использую этот совет для интеграции MSN Messenger на мой сайт: http://en.kioskea.net/faq/3987-integrate-msn-chat-on-your-website-or-blog Он показывает значок с текущим состоянием MSN (онлайн, в сети и т. Д.). Я хочу изменить эти изображения. Возможно ли это?

1 Ответ

0 голосов
/ 15 февраля 2011

Я сделал Снафу, отвечая на это в первый раз:

Идем сюда:

http://messenger.services.live.com/users/XXXXXXXXXXX@apps.messenger.live.com/presenceimage?mkt=en-GB

перенаправит вас на:

http://www.wlmessenger.net/static/img/presence/Offline.gif

, что значительно упрощает определение статуса!

Я пропустил это.


Я посмотрел здесь:

http://settings.messenger.live.com/Applications/CreateHtml.aspx

Я выбрал опцию Иконка состояния и получил код, подобный следующему:

<a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX@apps.messenger.live.com&mkt=en-GB">
    <img style="border-style: none;"
     src="http://messenger.services.live.com/users/XXXXXXXXXXX@apps.messenger.live.com/presenceimage?mkt=en-GB"
     width="16" height="16" />
</a>

Путь к изображению остается неизменным независимо от вашего статуса.

Нет способа изменить изображение, в зависимости от того, какой статус возвращается в изображении с использованием чистого HTML / CSS / JS (afaik). (даже после того, как я понял, что перенаправляет)

Я могу придумать способ сделать это, , но это не просто и не слишком сложно , но вам придется использовать сервер дополнительный язык, такой как PHP или ASP.NET.

Вы бы изменили этот код на что-то вроде этого:

<a target="_blank" href="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=XXXXXXXXXXX@apps.messenger.live.com&mkt=en-GB">
    <img style="border-style: none;" 
     src="proxyMyMsnImage.php"
     width="16" height="16" />
</a>

proxyMyMsnImage.php будет делать следующие вещи:

  • Выполняет запрос HEAD (или GET, если это не работает) на изображение (http://messenger.services.live.com/users/XXXXXXXXXXX@apps.messenger.live.com/presenceimage?mkt=en-GB)
  • В зависимости от того, на какое изображение вы перенаправлены (например, Offline.gif), вы отправляете собственную версию этого изображения состояния вместе с правильным типом пантомимы, например, image/gif.
  • Вы можете кэшировать результаты этого и обновлять его, только если прошло хотя бы X раз (скажем, 2 минуты).

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

...