Мессенджер, встраиваемый в ваш сайт

    В этом посте я хочу рассказать о новом продукте, которым я воспользовался, но не являюсь его создателем. В один прекрасный момент у меня появилась необходимость разработать мессенджер, подобрый месседжеру Facebook, для одного из моих сайтов. Задача была совсем не тривиальная. Я не стал изобретать «велосипед» (болезнь многих менеджеров проектов и разработчиков) и нашел готовое решение Imsgr.ru, с помощью которого можно установить мессенджер на любой сайт.



    Все что нужно сделать, чтобы установит мессенджер на ваш сайт — это:

    1. Зайти на сайт мессенджера
    2. Получить PHP-код
    3. Вставить его на сайт

    Мессенджер будет показываться прямо внутри вашего сайта (не в отдельном окне, а именно внутри) в правом нижнем углу. Его можно также свернуть и развернуть. Вот как это выглядит:



    Для того, чтобы пользователи узнали о новой «фиче» вашего сайта, достаточно разместить специальный код, который будет показывать картинку-конвертик со ссылкой. Клик на нее открывает окно переписки с этим пользователем (и он автоматом добавляется в список контактов, если его там еще нет).

    Дизайн у мессенджера нейтральный. Мессенджер пока в стадии альфы и распространяется бесплатно, поэтому можно скачать js файл и изменить дизайн.

    «Альфость» его выражается в наличии критического бага: мессенджер не работает ни в одном из IE. В остальных браузерах (FF, Opera, Chrome) — работает.

    Similar posts

    Ads
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More

    Comments 61

      +1
      > «Альфость» его выражается в наличии критического бага: мессенджер не работает ни в одном из IE.
      Вы точно уверены, что это _критический_ баг? :)
        +2
        Ну как бы да, а то некрасиво получается :) Но мы его поправим обязательно. Кстати, не попробовали еще установить мессенджер?
          0
          Нет, я еще не пробовал :) Сайта еще нету, есть только свой личный для тестов. Соберу сервер, а это гдето этак через два месяца — обязательно попробую на сайте.
          Но привлекателен. Спасибо :)
          Кстати да, спасибо за фичу, теперь мне не придется верстать сайт под IE, чтобы дать посетителям возможность общаться через этот ваш чатик :)
          Кстати зайдя на ваш сайт кое-что нашел:
          1. Лишний пробел на странице выдачи кода в кнопке «пишите нам, если что-то не так» — mailto: support@imsgr.ru.
          2. > MesSenGeR — зачет :))
            0
            1. Не нашел нигде лишнего пробела. Может скрин покажите?
            2. Спасибо :)
              0
              habreffect.ru/files/1b4/7c30d4c0c/kbiybq_space.jpg
              На странице выдачи кода после кнопки.
              Хотя пробел не критичен и не влияет на работоспособность, но спецификацией HTML предусмотрено именно написание без пробела.
                0
                Да, нашел и устранил. Спасибо!
          0
          Это скорее фича :)
            0
            функцией не смогут воспользоваться 50% посетителей.
            для конверсии — невероятно критично.
              0
              Абсолютно с вами согласен. Поэтому чиню.
                0
                В IE8, кстати, работает уже.
              0
              Bukasa, написал тебе тестовое сообщение на кафе))
                0
                Ну и как, работает?
                Самое главное, что он встраивается в сайт, а не как отдельная ссылка. Например, если у вас есть сайт с форумом, то вы помещаете на свой сайт код, и сразу получаете приватное общение для пользователей.
                  0
                  Сервис понравился.
                  Вот, что я пока успел заметить:
                  1) Пользователя на добавить в контакт другому пользователю, пока он (первый пользователь) не обратится к скрипту. Может быть стоит добавить какие-то инструменты для администратора, чтобы можно было сразу добавить всю базу идентификаторов пользователей в сервис.
                  2) Если код вставлен на «голую» страницу (без html тегов), то в Firefox следующая появляется ошибка: window.document.getElementById(«msgr_elementID») is null и не загружается окошко чата. В Chrome окно грузится. В принципе это не критично.
                    0
                    Баг 2) починил.
                    0
                    1) Да, есть такое. У меня будет API для этих целей.
                    2) Понял. Буду разбираться, что там за баг :)
                    • UFO just landed and posted this here
                        0
                        Нельзя пока. Но в планах такое есть.
                        • UFO just landed and posted this here
                            0
                            Ok, обязательно буду!
                        0
                        А что за сайт на котором установлен этот мессенджер, последняя картинка из топика?
                          0
                            0
                            клёвый сайт
                              0
                              спасибо =)
                              0

                              Так и висит. Поиск пользователей ничего не выдает. Что я делаю не так?
                                0
                                Внезапно заработало. С кем-то из хабраюзеров уже потестировали :)
                                  0
                                  Там изначально пользователей нет. Нужно их добавлять, нажимая на плюсик. Либо разместить на вашем сайте около каждого пользователя конвертик со ссылкой на добавление контакта. Вот тут: imsgr.ru/features.html про это написано.
                                    0
                                    Теперь в контакт-лист автоматом добавляются все пользователи, которые сейчас на сайте в онлайне.
                                0
                                Но там надо авторизоваться, чтобы мессенджер показывался.
                                0
                                Видел подобную фичу на нескольких западных сайтах (мессенджеры были другие). Также заметил на одном отечественном блог-проекте.

                                Удобная «штучка» содействующая социализации и коммуникации юзеров на сайте.
                                  0
                                  Я видел подобные вещи, например, meebo, webim и talkdriver. Но это все не то, что у меня.
                                  1. meebo — это тоже мессенджер, встраиваемый прямо в сайт. Но там требуется авторизации или регистрации пользователя в их сети (либо ввода своего логина пароля от какой-нибудь IM-сети). Т.е. вы не сможете интегрировать их мессенджер с авторизацией на вашем собственном сайте. А это, как мне кажется, убивает всю идею. Общение должно происходит без дополнительных действий со стороны пользователя (без ввода дополнительных логинов-паролей, кроме того, что он уже ввел однажды авторизовавшись на сайте).
                                  2. webim — похоже, но не то. Оно лишь для общения между пользователем и техподдержкой, а не для общения пользователей между друг другом.
                                  3. talkdriver — тоже очень похоже. Этот мессенджер, как и мой легко интегрируется с авторизацией на сайте. Но он не встраивается в сайт, а открывается по отдельной ссылке. Что также, кажется, убивает всю идею, т.к. мало кто будет кликать на дополнительные ссылки, чтобы общаться.
                                  +4
                                  порнушно так выглядит…
                                    +1
                                    Посмотрев на дизайн, я как будто вернулся лет на 5-10 назад. Вроде, есть очевидная попытка сделать аккуратно. Но получилось все равно неряшливо во всем.
                                      0
                                      Дизайн мессенджера сделали на коленке, уж извините, пока это глубокая альфа :) Но, кстати, вы дизайн можете поменять при желании, все исходники клиентской части же открыты.
                                      0
                                      Какую нагрузку сможет выдержать сервис?
                                        0
                                        Хороший вопрос. Надеюсь какой-нибудь проект потолще его поставит и мы всё узнаем из новостей :)
                                          0
                                          Сам сервер написан так, что сможет выдержать на том дохлом железе, на котором он работает, 10000 параллельных соединений. Но узкое место — сеть (т.к. все хостится в США). Я, в общем, мониторю все. Если начнется затык, то я быстро все перенесу на российский хостинг.
                                          0
                                          «Пользователь кликает на конвертик около ника другого пользователя (в данном случае его зовут uni) ...»
                                          Спалили меня! :)
                                            0
                                            Извините, я не хотел. Просто сделал скриншот своего контакт листа с ca-fe.ru :)
                                            0
                                            вместо открытого публичного апи, 5 строк пхп-говнокода. атас.

                                            пользуйтесь, чо.
                                              0
                                              Собственно, API в том и состоит, что надо сгенерировать ссылку на мессенджер по идентификатору клиента и уникальному ключу. Я решил вместо описания API разместить пример кода (5 строк для вставки кода мессенджера на PHPшный сайт), т.к. это проще для многих. Если у вас сайт, не на PHP, то я помогу вам встроить его. Напишите на support@imsgr.ru.
                                              0
                                              В опере отработал нормально, в мозиле и хроме не разворачивается окно чата.
                                                0
                                                Можете прислать на support@imsgr.ru ссылку на ваш сайт. Я посмотрю, что там не так и помогу.
                                                  0
                                                  выслал
                                                    0
                                                    Спасибо! Уже чиню.
                                                      0
                                                      Чинится это убиранием DOCTYPE в начале страницы или его заменой на <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">. Но, правда, сразу появляется побочный эффект — увеличиваются шрифты на самом сайте. Сейчас борюсь с этим.
                                                        0
                                                        Проблема полностью решена. Работает с любыми DOCTYPE'ами.
                                                +2
                                                где то я эти иконки уже видел… ах да… JAJC
                                                нет бы взять оттуда все лучшее — идею использовать XMPP… ан нет взяли только иконки…
                                                  0
                                                  Использовать XMPP, вы имеете в виду, чтобы пользователи мессенджеры были бы полноценными джабберными пользователями (имели jid, и, чтобы с ними можно было общаться из других джабберных сетей)? Это планируется. Не все сразу :)
                                                    0
                                                    да именно это я и имел ввиду.
                                                    просто не очень понятно зачем сначала было изобретать чтото своё если все равно планируется впоследствии переделать под XMPP…

                                                    столько вебчатов расплодилось все юзают какие то свои движки… вместо того чтобы просто взять и обернуть XMPP вебом… там уже и конференции и модерирование и pub-sub и все это уже готовоё уже отлаженное уже выдерживающее high-load нагрузки…
                                                      0
                                                      95% моего движка это и есть та самая веб-обертка. Когда будете разрабатывать собственный веб-мессенджер, то поймете, что наличие ejabberd в качестве back-end'а ни каким образом не убыстряет разработку (а наоборот даже сильно ее затормаживает, т.к. требуется много возни для преобразования XMPP в http, кроме того ejabberd сам по себе надо допиливать, чтобы он нормально работал.
                                                        0
                                                        У XMPP очень много заморочек при использовании в web'е…
                                                          0
                                                          web = http
                                                            0
                                                            Вот именно. Нужно поверх писать http-обертку, которая по сложности равносильно написанию собственного мессенджера.
                                                          0
                                                          столько вебчатов расплодилось все юзают какие то свои движки…

                                                          Приведите примеры, пожалуйста. Я как-раз сейчас пишу свой* (поскольку всё, что я видел, не вызывает никаких тёплых чувств вообще :) ).

                                                          * Обычный веб-чат, который никуда не будет встраиваться. Но должен быть красив и очень удобен в использовании.
                                                      +2
                                                      гм, зачем php если хватило бы подключить js-файл?
                                                        +1
                                                        Код нужно встраивать имено в PHP (или другой серверный язык), а не в HTML. Потому что в мессенджер надо передать логин текущего пользователя, а также уникальный ключ сайта. Если это все формировать на стороне клиента (в js), то кто угодно может вместо вас размещать у себя на сайте мессенджер от имени вас. Таким образом, будет получен длоступ к сообщениям и спискам контактов ваших пользователей, которые используют мессенджер на вашем сайте.
                                                          0
                                                          Кто угодно все равно сможет подсмотреть — посмотрев HTML код c сайта. Разве не так?
                                                            0
                                                            Смотрите. На стороне сервера выполняется md5 (все параметры + текущая дата + ключ). И этот md5 передается на клиент. Т.е. сам ключ вообще не посылается по сети. Таким образом, если вы подсмотрите код сайта, возьмете оттуда ссылку на мессенджер и попробуйте подставить в нее чужой логин, то у вас мессенджер работать не будет, потому что на стороне сервера мессенджера произойдет проверка соответствия md5 и переданных параметров.
                                                            Если же все формируется на клиенте, то вы можете тупо подставить в ссылку любой логин и наслаждаться чтением чужой переписки.
                                                              0
                                                              понял :) спасибо
                                                        0
                                                        Э-э-х, еще бы видео (поддержку камеры и микрофона) в чат встроить…
                                                          0
                                                          Это в планах есть.

                                                        Only users with full accounts can post comments. Log in, please.