[TicketMessages] Обзор новых возможностей
Так как спрос на дальнейшее развитие оказался достаточно высоким, то решил выделить сегодня денек. Предложений было много, поэтому было над чем подумать. Да еще всё усложнялось из-за ограничения — не трогать ядро Tickets. Вот что с наскока получилось сделать.
Что теперь может:
— Добавлять и удалять пользователей в сообщение — аватарки пользователей появляются на панели.
— Проверять на новые сообщения в ветках. Работает кривовато из-за ограничения Tickets.
— Можно блокировать и удалять диалоги в веб интерфейсе.
В виде пакета я пока не оформлял, так как остались еще вопросы. Жду ваших предложений или замечаний по сделанным доработкам.
Что теперь может:
— Добавлять и удалять пользователей в сообщение — аватарки пользователей появляются на панели.
— Проверять на новые сообщения в ветках. Работает кривовато из-за ограничения Tickets.
— Можно блокировать и удалять диалоги в веб интерфейсе.
В виде пакета я пока не оформлял, так как остались еще вопросы. Жду ваших предложений или замечаний по сделанным доработкам.
Поблагодарить автора
Отправить деньги
Комментарии: 45
Добавлять и удалять пользователейКуда?
В сообщения как многие просили.
Круто наверное. От нас, что требуется?
Да собственно, ничего особенного не требуется. Если есть предложения или замечания, озвучить. А я в выходные постараюсь все привести к окончательному варианту.
время добавить в колонку
Время чего и в какую колонку?
Время последнего ответа в переписке в левой колонке. Возможно и начала диалога. Как вариант сортировка переписок перетаскиванием. Сортировка какая-то нужна короче. Или по последнему ответу или вручную пользователем или по времени создания диалога. А ещё круче, если пользователь сможет пометить как-то диалог, например «Обсуждение встречи».
Вывод уведомлений о новом сообщении в любом месте на сайте.
Вывод уведомлений о новом сообщении в любом месте на сайте.
Сейчас сортировка по времени создания диалога, новые сверху. Но сортировка по последнему ответу наверно будет удобнее.
Pusher. там бесплатно 100.000 сообщений в день, пользователей можно определять через callback «user_id_[[!+modx.user.id]]»
Через js ничего ставить надо, по php пока не понятно
На этой основе можно и сделать сообщения без tickets
Через js ничего ставить надо, по php пока не понятно
На этой основе можно и сделать сообщения без tickets
А ссылочку можно.
pusher.com/
key можно получить после создания приложения на сайте.
Ограничения на триале: 20 подключенных пользователей, 100.000 сообщений в день.
channel: test_channel
event: my_event_guest (пришлет сообщение всем не залогиненным, если пользователь с айди 5 то my_event_5)
data: `{«message»:«test»}`
логика: пользователь при заходе на сайт подписывается на канал оповещений через channel.bing(event), данные можно из php высылать на pusher, а он в свою очередь вышлет на канал. Каждому залогиненному пользователю можно сделать свой канал через подписку на канал.
Осталось разобраться в php части, что бы сообщения лились в бд и выводились в диалоге.
вот php server side:
github.com/pusher/pusher-http-php
key можно получить после создания приложения на сайте.
Ограничения на триале: 20 подключенных пользователей, 100.000 сообщений в день.
<script src="//js.pusher.com/2.2/pusher.min.js"></script>
<script>
var pusher = new Pusher('key');
var channel = pusher.subscribe('test_channel');
channel.bind('my_event_[[!+modx.user.id:empty=`guest`]]', function(data) {
console.log(data);
});
</script>
а на сайте pusher в разделе debug:channel: test_channel
event: my_event_guest (пришлет сообщение всем не залогиненным, если пользователь с айди 5 то my_event_5)
data: `{«message»:«test»}`
логика: пользователь при заходе на сайт подписывается на канал оповещений через channel.bing(event), данные можно из php высылать на pusher, а он в свою очередь вышлет на канал. Каждому залогиненному пользователю можно сделать свой канал через подписку на канал.
Осталось разобраться в php части, что бы сообщения лились в бд и выводились в диалоге.
вот php server side:
github.com/pusher/pusher-http-php
require('Pusher.php');
$app_id = 'app_id';
$app_key = 'app_key';
$app_secret = 'app_secret';
$pusher = new Pusher($app_key, $app_secret, $app_id);
$data['message'] = 'hello world';
$pusher->trigger('test_channel', 'my_event', $data);
p.s. можем вместе заняться разработкой, тоже в этом заинтересован. skype: nikoz-spb
Это еще один чат. Типа Чатры, который у modstore.pro.
p.s. можем вместе заняться разработкой, тоже в этом заинтересован.А какая там нужна разработка. Там просто подключение и все.
Этот чат через каналы = личным сообщения, «как вконтакте» ©
Нормальный чат. Как и другие. А я для MODX решение предлагаю. Простенькое.
П.С. Нормальный чат и должен быть через вэбсокеты.
П.С. Нормальный чат и должен быть через вэбсокеты.
Норм. Но тестирование нужно. Добавлять людей отличная возможность. А если их 300 будет? Там клиенты, там продавцы?
Не потянет он 300. И использовать его для чата я бы не советовал. Он больше подойдет для общения с сотрудниками компании.
Для чата нужно другое решение, через вэбсокеты. И таких решений уже достаточно в сети. Иначе это будет настоящая DDOS атака на твой сервер — 300 человек ходят по сайту + каждую секунду идут запросы по чату. Хана сайту.
Еще раз напомню. Это для решение для тех, кто уже использует Tickets и хочет кроме комментариев еще и сообщения получить. Два в одном. Например, на этом ресурсе это вполне могло бы пригодится. Иногда возникает какой-то вопрос к конкретному человеку. И тут TicketMessages мог бы помочь. Т.е. онлайн не нужен.
Для чата нужно другое решение, через вэбсокеты. И таких решений уже достаточно в сети. Иначе это будет настоящая DDOS атака на твой сервер — 300 человек ходят по сайту + каждую секунду идут запросы по чату. Хана сайту.
Еще раз напомню. Это для решение для тех, кто уже использует Tickets и хочет кроме комментариев еще и сообщения получить. Два в одном. Например, на этом ресурсе это вполне могло бы пригодится. Иногда возникает какой-то вопрос к конкретному человеку. И тут TicketMessages мог бы помочь. Т.е. онлайн не нужен.
Привет! Только ты не учитываешь, что это будут только
зарегистрированные пользователи. Поэтому нет смысла им проводить такие
атаки. Особенно после модерации.
Для гостей нужен отдельный подход.
зарегистрированные пользователи. Поэтому нет смысла им проводить такие
атаки. Особенно после модерации.
Для гостей нужен отдельный подход.
А в целом, я не ошибся, это хорошая штука. Еще нужно загрузку файлов добавить.
Он использует функционал Tickets, а там такой возможности нет. Вернее, у тикетов есть, а у комментариев нет. А мессаджи — это комментарии. Будет это у Tickets, будет и тут.
ну и еще по группам пользователей разделять. это просто я так делал.
Сформулируйте предназначение, от этого и будем отталкиваться.
Как я это вижу:
Modx+Tickets подойдёт для небольших и средних сообществ, например, как здесь. Исходя из этого личка нужна по сути перекинутся сообщениями, например контактами или что-то в этом духе. Максимум пригласить несколько человек в беседу, чтобы обсудить какой-то момент.
Все эти мульки с мегачатами нафик не нужны. Нужны нормальные уведомления и навигация по диалогам. Блокировка пользователя от которого не желаете получать сообщения.
Как я это вижу:
Modx+Tickets подойдёт для небольших и средних сообществ, например, как здесь. Исходя из этого личка нужна по сути перекинутся сообщениями, например контактами или что-то в этом духе. Максимум пригласить несколько человек в беседу, чтобы обсудить какой-то момент.
Все эти мульки с мегачатами нафик не нужны. Нужны нормальные уведомления и навигация по диалогам. Блокировка пользователя от которого не желаете получать сообщения.
Не добавить, не убавить. Именно так это вижу и я.
Просто представьте, что разбираясь с Tickets вы увидели, что заложенный в него функционал позволяет использовать комментарии как личные сообщения. Нужно лишь немнооооожечко доработать. Некоторым это показалось интересным и вы свое решение предложили сообществу. Это не какой-то супер-пупер мегачат. Это тот же замечательный Tickets с небольшой плюшкой. Вот и все.
Кроме того, я показал еще один вариант использования Tickets — в качестве симпатичной книги отзывов.
Т.е. это просто небольшие расширения для Tickets. Не больше не меньше.
П.С. А возможность расширять диалог люди просили, поэтому я это и сделал.
П.П.С. Думаю, что Tickets подойдет и для большого сообщества. Люди вот на нем не хилые форумы делают. Наверно, такие личные сообщения на форумах могли бы пригодится.
Просто представьте, что разбираясь с Tickets вы увидели, что заложенный в него функционал позволяет использовать комментарии как личные сообщения. Нужно лишь немнооооожечко доработать. Некоторым это показалось интересным и вы свое решение предложили сообществу. Это не какой-то супер-пупер мегачат. Это тот же замечательный Tickets с небольшой плюшкой. Вот и все.
Кроме того, я показал еще один вариант использования Tickets — в качестве симпатичной книги отзывов.
Т.е. это просто небольшие расширения для Tickets. Не больше не меньше.
П.С. А возможность расширять диалог люди просили, поэтому я это и сделал.
П.П.С. Думаю, что Tickets подойдет и для большого сообщества. Люди вот на нем не хилые форумы делают. Наверно, такие личные сообщения на форумах могли бы пригодится.
Ради интереса посмотрите, как реализована личка (приватные топики) в esotalk.org/
Например на этом сайте. Здесь человек не меньше 500. Я предлагаю чат делать в полном объеме только для зарегистрированных. Кто будет спамить, отключить не проблема.
Всего пользователей: 3 025Понятное дело, что тут троллинг и горячие темы отсутствуют. Давайте теперь представим сколько тут будет сообщений в личку. Да их почти не будет. Нет смысла огород городить.
Тикетов в день: 4.51
Комментариев в день: 28.73
Я считаю, что это вполне среднее по размеру сообщество.
и учтите, сейчас многие коммерческие сайты требуют сохранять переписку
с клиентами.
Ваше дело не отказываться от своего детища, а найти ему применение. А
оно есть, я уверен, я редко ошибаюсь в таких вещах.
с клиентами.
Ваше дело не отказываться от своего детища, а найти ему применение. А
оно есть, я уверен, я редко ошибаюсь в таких вещах.
ох вас и занесло…
После клика по одному из представителей снизу
выдвигается форма для обмена сообщениями.
Система помнит все сообщения. Каждое
сообщение идет с датой и временем.
Сообщения визуально уходят под плашку с ником
представителя. Справа — полоса скроллинга,
позволяющая прокрутить сообщения. На плашке
— кнопка с меню и крест “закрыть”.
При нажатии на ключ появляется доп. меню,
позволяющее в том числе развернуть переписку
во весь экран
Меню также позволяет прикрепить файл
до 150 кБ или пожаловаться на спам.
При клике на “новые сообшения”
сверху выдвигается окно с сообщениями.
Если новых сообщений нет,
Поля сообщений окрашены в 20%
от цвета статуса.
На начало сообщения отводится 1 строчка.
Продолжение текста автоматически
отсекается и заменяется на многоточие.
Слова не обрубаются.
иконка прикрепленного файла
выравнивается по юзерпику и отстоит
от краю поля на такой же интервал.
Ник, текст и время выравниваются слева:
при клике на “все сообщения”
попадаем на список входящих
(см. следующую страницу)
при клике на поле сообщения здесь (внизу) выходит
окно для обмена сообщениями с данным посетителем
(см. предыдущие страницы)
после клика на “все сообщения”
попадаем сюда — на список входящих
сообщений с возможностью развернуть
переписку с каждым контактным лицом
выдвигается форма для обмена сообщениями.
Система помнит все сообщения. Каждое
сообщение идет с датой и временем.
Сообщения визуально уходят под плашку с ником
представителя. Справа — полоса скроллинга,
позволяющая прокрутить сообщения. На плашке
— кнопка с меню и крест “закрыть”.
При нажатии на ключ появляется доп. меню,
позволяющее в том числе развернуть переписку
во весь экран
Меню также позволяет прикрепить файл
до 150 кБ или пожаловаться на спам.
При клике на “новые сообшения”
сверху выдвигается окно с сообщениями.
Если новых сообщений нет,
Поля сообщений окрашены в 20%
от цвета статуса.
На начало сообщения отводится 1 строчка.
Продолжение текста автоматически
отсекается и заменяется на многоточие.
Слова не обрубаются.
иконка прикрепленного файла
выравнивается по юзерпику и отстоит
от краю поля на такой же интервал.
Ник, текст и время выравниваются слева:
при клике на “все сообщения”
попадаем на список входящих
(см. следующую страницу)
при клике на поле сообщения здесь (внизу) выходит
окно для обмена сообщениями с данным посетителем
(см. предыдущие страницы)
после клика на “все сообщения”
попадаем сюда — на список входящих
сообщений с возможностью развернуть
переписку с каждым контактным лицом
а ты говоришь — меня занесло
и учтите, сейчас многие коммерческие сайты требуют сохранять переписку с клиентами.
Саиое главное — это здесь
Система помнит все сообщения. Каждое
сообщение идет с датой и временем.
Система помнит все сообщения. Каждое
сообщение идет с датой и временем.
Работа идет хотя б или нет?
Если нет хотя б решение выложил, а то так обнадежил.
Если нет хотя б решение выложил, а то так обнадежил.
Я пока не знаю как решить проблему с показом непрочитанных сообщений. А это важная вещь. В текущей модели Tickets факт просмотра комментариев завязан на ресурс, а не на ветки. Т.е. если на одной странице несколько веток (а у меня каждая переписка — это ветка) и в каждой есть новые комментарии (сообщения), то при просмотре одной ветки во всех остальных ветках счетчик новых комментариев обнуляется. Так что разработка этого компонента зашла в тупик. Перспективы не наблюдается.
Ну и незачем тогда цепляться за Tickets. Делай, как считаешь нужным.
Затем, что вся базовая логика компонента прицеплена к Tickets.
Затем, что тогда придётся писать всё самостоятельно и у нас будет еще один очень похожий компонент, но со своими особенностями. А Tickets при этом всё равно никуда не денется.
Можно добавить новую таблицу и фиксировать туда именно время просмотра ветки при её загрузке.
Это не требует модификации Tickeеs — своя сторонняя таблица.
Можно добавить новую таблицу и фиксировать туда именно время просмотра ветки при её загрузке.
Это не требует модификации Tickeеs — своя сторонняя таблица.
Почему-то сразу подумал про таблицу. Я к тому, что можно что-то добавить, а не переделывать сам Tickets.
html5 умеет использовать websocket, копай в этом направлении
Не планируете пока выкладывать эту бета версию?
Да забросил я это дело. Василий озвучил, что в планах есть создание решения для сообщений, поэтому я решил, что не имеет смысла городить огород.
А можете выложить на гит тот вариант что в этом топике?
Как минимум, надо причесать сначала. Щас не до этого. После Нового года постараюсь.
когда ждать обновления?
Не знаю. Я уже не помню чего я там понаделал. А разбираться ни времени, ни желания нету.
а то что в видео можно, можно прикрутить есть ссылка на файлы или на гигхаб?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.