RealMessenger v2 - компонент для обмена личными сообщениями

Новая версия RealMessenger -компонент для обмена личными сообщениями.
Теперь gtsNotify, требующийся для него, работает через comet-server.ru. Также добавлены смайлики и онлайн-офлайн статус, и доработана верстка.

До скайпа далеко, но реализован минимальный набор мессенджера.

Установка
Установить с modstore gtsNotify, настроить его на comet-server.ru.
Установить и настроить UserFiles.
Устанавливаем RealMessenger и на нужной странице вызываем сниппет:
{'!RealMessenger' | snippet}

Для bootstrap v4 указываем чанки:
{'!RealMessenger' | snippet :[ 
'OuterTpl'=>'b4.tpl.RealMessenger.outer', 
'SearchContactTpl'=>'b4.tpl.RealMessenger.search.contact', 
]}
Поправить стили если возникнут проблемы. Для смайликов требуется база utf8mb4.
Оплата
За доработки беру 1000р. в час. gtsNotify стоит 90р. UserFiles — 990р.
Пакеты
gettables.ru/assets/packages/realmessenger-2.0.0-beta.transport.zip
Пакет на gettables.ru не обновляется. Качать либо с modstore.pro либо с гитхаба.
realmessenger modstore
gtsnotify
userfiles
GitHub
https://github.com/touol/gtsNotify
https://github.com/touol/RealMessenger

Демо
Демонстрация работы на https://gettables.ru/. Требуется авторизация.

П.С. Демо не работает. Что-то снова сломалось. Счас разберусь :-)
П.С. Теперь работает. Я оказывается тупо провайдера не настроил.
Александр Туниеков
17 марта 2022, 14:25
modx.pro
2
1 153
+8
Поблагодарить автора Отправить деньги

Комментарии: 20

Павел Гвоздь
17 марта 2022, 15:36
-1
Илья Уткин выпустил свой компонент reMessages. И я не успел на поезд
А это нормально в пику платному компоненту выпускать тот же функционал бесплатно? Я может чего не понимаю…
    Александр Туниеков
    17 марта 2022, 15:48
    +1
    Думаешь мне охота было сидеть париться, чтоб просто в пику выпустить такой же компонент?
    Клиент просил обновить компонент. И пришлось сделать. А выпустить? Так компонент нормальный -пусть юзают :-).
    Не парься будут и тем и тем компонентом пользоваться. И у одного и другого свои достоинства и не достатки.
    И еще спроси у сисадмина linux бесплатный? Ответит бесплатный, но поддерживать его заколебешься.
    Мой компонент сложнее и точек потенциальных ошибок гораздо больше :-)
      Геннадий
      17 марта 2022, 20:53
      +1
      А почему это должно быть не нормально? В Modstore есть политика, исходя из которой схожий функционал не принимают и которую надо давно уже пересмотреть, на мой взгляд.
      Но уж в сообществе Александр имеет право выкладывать что угодно и когда угодно, не нарушая при этом авторские права других участников конечно.
        Николай Савин
        18 марта 2022, 08:52
        +2
        Строго говоря, фактическим владельцем и основателем данного сообщества является modstore. Хоть владельцы проекта и не вмешиваются в его деятельность, но свои интересы просят соблюдать. Это нужно учитывать.
        Мое мнение — политика монополии ни к чему хорошему не приводит. Сделал и забыл. У людей нет выбора — они покупают. Конкурирование в схожих компонентах ведет к развитию, модернизации.
          Павел Гвоздь
          18 марта 2022, 09:26
          0
          А где тут конкуренция, если один платный, а второй бесплатный?
            Николай Савин
            18 марта 2022, 09:30
            0
            Конкуренция не в ценовой политике же, а в функционале.
            Сложновато назначать цену, если в магазине не дают продавать. Здесь неравные условия изначально.
              Павел Гвоздь
              18 марта 2022, 09:37
              0
              если в магазине не дают продавать
              А не дают? Вроде, если компонент не повторяет точь в точь, а реализует что-то новое или большее, то берут в магазин? Или я ошибаюсь?

              Здесь неравные условия изначально.
              Ну и конкуренция между платным и бесплатным пакетом тоже априори на неравных условиях.
                Александр Туниеков
                18 марта 2022, 09:47
                0
                Или я ошибаюсь?
                В магазин не взяли. Я пробовал подавал. И есть подозрение что отказал тот Илья Уткин :-). Он там модератером не работает?
                Чисто подозрение. Не знаю какой модератор отказал.
                  Павел Гвоздь
                  18 марта 2022, 09:49
                  0
                  В магазин не взяли.
                  Так может не взяли как раз, потому что он точь в точь, как аналог?
                    Александр Туниеков
                    18 марта 2022, 10:12
                    0
                    Хм… а сравнить не пробовали?
                    У меня счас код открытый. remessages на modhost можно посмотреть
                      Павел Гвоздь
                      18 марта 2022, 10:14
                      0
                      Нет. А в чём разница-то?
                        Александр Туниеков
                        18 марта 2022, 10:31
                        +1
                        Ну компонент делался независимо от Ильи. И подали их почти одновременно.
                        Так разница:
                        1) Я сделал 3 компонента RealMessenger, gtsNotify и сервер уведомлений на nodejs.
                        gtsNotify — общая система уведомлений, которая позволяет вотнуть на сайт любые уведомления и писать компоненты с realTime уведомлениями. Например, чат, мессенджер, уведомления о новых товарах и т.д. RealMessenger работает через gtsNotify.
                        От сервер уведомлений на nodejs счас отказался.
                        В reMessages общей сиистемы уведомлений нет.
                        2) RealMessenger сделан как стандартный мессенджер. С полем чатов, поиска чатов и контактов слева и полем сообщений справа. Ориентировался на скайп.
                        В reMessages поле чатов и поле сообщений заменяют друг друга. По видимому удобно для мобильных. Нет поиска чатов и контактов.
                        3) В reMessages добавление чата по ссылке. А в RealMessenger чаты добавляются из поиска, который ищет по группе пользователей MODX
                        Вроде все :-)
    Leonid Krylov
    18 марта 2022, 10:39
    +3
    Выдержка из правил:
    «…В случае возникновения пересечения функциональных возможностей администрация вправе отклонить размещение дополнения в маркетплейсе».

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

    Новое правило модерации будет таким:
    «Функциональные возможности присланного дополнения могут повторять функциональные возможности дополнений, размещенных в маркетплейсе в том случае, если его стоимость выше на 10+%».

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

    >> Он там модератером не работает?
    Да, Илья Уткин — модератор Modstore.
      Александр Туниеков
      18 марта 2022, 10:45
      +4
      Ок сегодня попробую опубликовать. выше на 10+%. Но шифровать пакет и скрывать исходники уже не буду :-). Отгорело. Чисто плата за техподдержку.
      maxgmm
      08 августа 2022, 06:29
      0
      Подскажите как сделать чтобы сообщения сразу отправлялись администратору без выбора пользователя и был открыт чат с ним
        Александр Туниеков
        11 августа 2022, 14:28
        +1
        Чтобы сразу был открыт чат с каким-то определенным юзаром надо добавить в ссылку GET-параметр user_id. урл_страницы_мессенджера?user_id=20
        Чтобы убрать поиск юзера, чатов и список чатов, надо скопировать чанк tpl.RealMessenger.outer закомментировать в нем панель ctrl-panel. Например my.b4.tpl.RealMessenger.outer
        <div id="realmessenger" data-hash="{$hash}">
            <div class="row">
                {*<div class="ctrl-panel">
                    {$search_contact}
                    {$search_chat}
                    {$chats}
                </div>*}
                <div class="mess-panel">
                    {$messages}
                    {$form}
        
                </div>
            </div>
        </div>
        Иназначить этот чанк сниппету:
        {'!RealMessenger' | snippet :[
            'OuterTpl'=>'my.b4.tpl.RealMessenger.outer',
        ]}
        maxgmm
        11 августа 2022, 17:02
        0
        А есть возможность реализовать всплывающие уведомления о сообщениях?
          Александр Туниеков
          11 августа 2022, 17:09
          0
          В операционке? Это надо в гугл ключ брать и писать отправку уведомлений через гугл. Пока не до этого.
            maxgmm
            11 августа 2022, 21:02
            0
            В операционке это круто, я имею введу на сайте типа как вконтакте
              Александр Туниеков
              11 августа 2022, 21:40
              0
              А как там вконтакте уведомления? я там обычно с почты захожу.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          20