Очень часто на порталах техподдержки, бизнес-консультирования и прочего онлайн-саппорта, можно видеть ссылки на ICQ или Skype для живого общения с консультантом.
Недавно и мне понадобилось проставить такие ссылки в одном из
проектов. Чтобы решить, казалось бы, такую простую задачу, пришлось
поискать ответы в google
и отсортировать кучу ненужной информации. Найти сразу все ответы в
одном месте не получилось, поэтому восполню этот информационный пробел в
своём блоге.
Ссылки на Skype
Простейшая ссылка на Skype имеет вид:
1 | <a href= "skype:SkypeUser" >SkypeUser</a> |
Где SkypeUser — нужный ник в Skype. По умолчанию, клик на такой ссылке приведёт к звонку пользователю SkypeUser.
Но есть ещё несколько несколько режимов вызова, которые можно включать, передавая параметры в ссылке:
Звонок пользователю Skype-to-Skype или на телефон
1 | <a href= "skype:SkypeUser?call" >SkypeUser</a> |
2 | <a href= "skype:+12345678?call" >+12345678</a> |
Так же, как и в первом примере, звонок пользователю SkypeUser. Второй
вариант — звонок из Skype на обычный телефон (вместо +12345678 следует
поменять на нужный номер).
Звонок нескольким пользователям (конференция)
1 | <a href= "skype:SkypeUser1;SkypeUser2;SkypeUser3?call" >SkypeUser</a> |
По ссылке осуществится вызов сразу трёх пользователей.
Добавить пользователя или номер в список контактов
1 | <a href= "skype:SkypeUser?add" >SkypeUser</a> |
2 | <a href= "skype:+12345678?add" >+12345678</a> |
В первом случае в список контактов добавится пользователь с ником SkypeUser, во втором — номер телефона.
Текстовый чат и мультичат
1 | <a href= "skype:SkypeUser?chat" >SkypeUser</a> |
2 | <a href= "skype:SkypeUser1;SkypeUser2;SkypeUser3;?chat" >SkypeUsers Multichat</a> |
Соответственно, чат с одним и тремя пользователями одновременно.
Голосовая почта
1 | <a href= "skype:SkypeUser?voicemail" >SkypeUser</a> |
Можно оставить голосовое сообщение оффлайн-пользователю.
Передача файлов по Skype
1 | <a href= "skype:SkypeUser?sendfile" >SkypeUser</a> |
2 | <a href= "skype:SkypeUser1;SkypeUser2;SkypeUser3;?sendfile" >SkypeUsers</a> |
Отправить файл одному или сразу нескольким пользователям (в примере
трём). По клику откроется диалоговое окно, в котором можно выбрать файл
для загрузки. Отправлять файл могут только авторизованные у получателя
пользователи.
Посмотреть профиль пользователя
1 | <a href= "skype:SkypeUser?userinfo" >SkypeUser</a> |
Ну, тут, вроде бы, всё понятно.
Возможные проблемы
Стоит отметить, что все эти ссылки будут работать, если Skype уже
установлен на компьютере пользователя, иначе браузер выдаст
предупреждение типа:
FireFox не может определить как открыть данный адрес, так как протокол (skype) не связан ни с одним приложением
Чтобы избежать таких ошибок, разработчики предлагают решение в виде JavaScript-сценария (3 KB),
который перехватывает ошибку и выводит на сайте всплывающее окно с
предложением скачать Skype. Его нужно вставить на странице между тегами <head>…</head>.
1 | <script type= "text/javascript" |
2 | src= "http://download.skype.com/share/skypebuttons/js/skypeCheck.js" > |
В этом случае ещё понадобится повесить на ссылку обработчик вызывающий сценарий, например:
1 | <a href= "skype:SkypeUser?call" onclick= "return skypeCheck()" >skypeUser</a> |
Кнопочки
Найти различные варианты стандартных кнопок, с подтверждением
онлайн/оффлайн статуса, или создать свой вариант, вы можете на сайте skype.com.
Разбираемся с ICQ
С ICQ всё не так просто, из-за того что клиентами могут быть не только ICQ, но и Qip, Miranda, Trillian и другие. Поэтому стандартная ссылка вызова ICQ может не сработать, из-за того, что невозможно заранее предугадать, какой ICQ-клиент установлен на компьютере пользователя.
1 | <a href= "http://www.icq.com/whitepages/cmd.php?uin=UserNumber&action=message" >UserNumber</a> |
Стандартный вызов ICQ с сайта. Вместо UserNumber нужно вставить нужный номер.
Я пользуюсь Qip 2005 (Buid 8070), и эта ссылка вызывала закачку
исполняемого php-файла с сервера, а не вызов клиента. Так что вызывать
программу непосредственно с сайта не получилось
Из этой ситуации можно найти два выхода:
- Вызывать по ссылке один из веб-клиентов ICQ (например icq2go.)
- Вывести статус-значок ICQ на сайте и позволить пользователю скопировать номер, расположенный рядом с иконкой, в свой ICQ-клиент, установленный на компьютере.
Первый вариант показался мне некрасивым из-за дополнительной нагрузки
на нервы пользователя и его принудительного редиректа на новый
интерфейс, поэтому я не стал особо заострять на нём внимания. А вот для
второго статус-значок ICQ можно вывести на сайте так:
1 | <img src= "http://web.icq.com/whitepages/online?icq=UserNumber&img=5" alt= "Статус ICQ пользователя UserNumber" /> |
Где UserNumber — нужный номер, а &img=27 — вид статус-иконки.
Примеры ужасных статус-иконок, предлагаемых на выбор, можно посмотреть тут. Ну и не менее «привлекательные» ещё и тут.
Полезные мелочи
Чтобы ваш статус отображался на сайте, в Qip на вкладке настройки -> общие, нужно отметить галочкой пункт «Показывать мой онлайн-статус для web и поиска»
Автор статьи - Евгений Якимович, Rotorweb.ru
Источник: http://infa24.ucoz.ru/publ/88 |