Shoutbox (чат) о плагине.

В последнее время для своего проекта делаю shoutbox (простой чат).

тестируем тут -> livestreet.ru/blog/addons/12003.html

Картинка кликабельна. (не актуально)




ОБНОВЛЕНО

Плагин будет полностью бесплатным со всем его функционалом. Если есть идеи по поводу плагина пишите в комменты.

На данный момент у меня примерно такое ТЗ:
— Быстрое и удобное добавление сообщений
— Быстрая модерациия (слева от каждого сообщения есть кнопка X), работает в 3 режима:
  • Удаляет нормальные сообщения, либо восстанавливает удаленные
  • При нажатие на нее с ctrl полностью удаляет пост из базы.
— Два способа обновления.
  • Первый легкий, тянет через ajax только новые посты (работает автоматически и обновляется в зависимости от выставленного таймера)
  • Второй обновляет чат полностью (последние n сообщений). Запускается при загрузке страницы, при нажатие кнопки «обновить», при любом действие с постом (удаление).
— Возможность просматривать историю сообщений
— Возможность настроить отображение аватарок, способ вывода сообщений (сверху или снизу новые)
— Возможность использовать чат как консоль для админа. При вводе следующих команд:
— Чат использует стандартный парсер html. (Т.е какие теги и как он будет обрабатывать зависит от ваших правок соответствующего файла. Обрабатывает идентично комментариям)

/ban %user_name% (банит пользователя с ником %user_name%, переводит в режим «только чтение»)
/kick $user_name$ (удаляет пользователя а также всего его записи, топики и комментарии)
/kill $user_name$ (тоже самое что и kick, только удаляет все это хардово из базы)
/admin $message$ (выводит в чат специальное админ сообщение, оно отличается от остальных)



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

Теперь полностью бесплатно!


config, на данный момент доступны такие настройки:


// Настройка плагина
$config['show_avatars']       = false; //Показывать аватары или нет. (по умолчанию false)

$config['show_nicknames']     = true; // показывать ники пользователей в чате (по умолчанию true) 
				      // ЛУЧШЕ НЕ СКРЫВАТЬ НИКИ БЕЗ ОТОБРАЖЕНИЯ АВАТАРОВ

$config['sort_reverse']       = false; //Если true, то новые сообщения выводятся внизу. (по умолчанию false)

$config['allow_view_history'] = true; //Дает возможность просматривать историю сообщений (по умолчанию true)

$config['count_in_chat']      = 15; //Количество сообщений в чате (по умолчанию 15)

$config['count_in_history']   = 5; //Количество сообщений на одну страницу в истории (по умолчанию 30)

$config['admins']	= array (); // перечислите тут ид юзеров которые могут управлять чатом.				    // например array (1,3,232,100)
                                    // по умолчанию array ()
                                    // также чатом могут управлять все юзеры являющиеся админами
                                    // сайта, так что перечислять их тут дополнительно не нужно

$config['SkillPerShout']    = 0.00; // Сколько юзер получает силы за каждое сообщение. 
                                    // Можно использовать  дробные и отрицательные числа

$config['RatingPerShout']   = 0.00; // Сколько юзер получает рейтинга за каждое сообщение. 
				    // Можно использовать дробные и отрицательные числа


Предлагайте доп. настройки в комментах.
Последний раз обновлено 6 сентября 2012, 16:07

Немного поработал над стилями, от twitterbootstrap пришлось отказаться =(

Вид из глаз пользователя (synio)


Вид из глаз модератора (lightblue)


Удаленные сообщения (lightblue)


Прогресс разработки плагина 75%

86 комментариев

avatar
Работает все на ajax естественно )
Чат обновляется автоматически или по нажатию «обновить».
avatar
> /kill $user_name$ (тоже самое что и kick, только удаляет все это хардово из базы)
такой командой будет легко бороться со спамерами. Одно сообщение и из базы летят все их коменты, топики и все остальное )
avatar
с радостью возьму на 0.5.1
avatar
Маладес! :) Хорошая веСчь:) Как сильно грузит сервер?
  • aex
  • 0
avatar
Не больше других модулей. Кеш делать не вижу смысла, хотя все зависит от посещаемости сайта.
avatar
Да, а насчет цены :) Если бесплатная будет хорошо работать в рамках отведенного ей функционала, платную никто не купит даже за цент :) Все будит сидеть и тупо пилить шару, пытаясь довести её до платного функционала :)))
  • aex
  • 0
avatar
отнють, посмотрите openid и auto openid, все звисит от функционала
avatar
Не спорю, все может быть :)
avatar
С платным функционалом можно удалять флудеров всего одной командой.

Представьте что у вас зарегистрировалось 3 спам бота, они целый день добавляют контент, топики и комменты связанные с увеличением пениса, лучшими казино итп. Вы заходите на сайт, вводите в чат одну команду и эти юзеры летят вместе со всей их деятельностью. Т.е не придется вручную лазить по сайту и все это чистить.
avatar
А насчет идей :) Я не очень понял, будет ли чат выходить в отдельном окне? Или всплывающем? И будет ли там возможность приватных чатов, т.е. разговор один-на один? Добавления при разговоре всяких подарков-картинок? И т.п. Это было бы интересно :)
  • aex
  • 0
avatar
Разместить можно где угодно, по умолчанию на главной странице внизу.

На счет лишних фич, то нет. Меня например отпугивают чаты с кучей кнопок. Так же не будет смайликов и прочих несуразных имхо вещей.
avatar
Ну, ты Автор, тебе видней :) Мне нравится вот так: Находишь юзера с которым хочешь побазарить, нажимаешь Начать чат, открывается небольшое отдельное окно и ты с ним базаришь в приватном чате, даришь цветы, подарки, деньги… Переписка сохраняется и ты можешь продолжить чат на следующий день с прерванного места :) Когда-то такое делал на сайтах знакомств, юзерам нравилось :)
avatar
Для этого есть стандартный функционал ls. Называется личные сообщения.
avatar
Да? :) Как по мне, это две большие разницы :)))
avatar
В чем разница? Дублировать функционал я не буду точно. При желание конечно можно добавить небольшую ссылку из чата на создание нового диалога с автором.
avatar
добавь смайлы в платную версию ;)
мож и несуразная, а для некоторых локальных сообществ очень здорово, привносит немного тепла в текстовое общение.

Платную версию купил бы за 10-20 долларов, все зависит от того, насколько он будет удобен. Например, в конфиге можно указать, куда выводить новые сообщения — наверх или вниз? от этого зависит и расположение формы. В комментах в топиках, к примеру, новые комменты внизу. И форма соответственно внизу. Имхо.

Также хотелось бы отправку сообщений сочетанием клавиш, можно Enter (для чата вполне сойдет, кто ж там пишет такие комменты, как этот, к примеру), или Ctrl+Enter. Как вариант, можно определить это в конфиге.

Все-таки можно было бы сделать вывод аватарок (24х24) — как никак чат относится к системе, где у каждого она есть. И от этого узнаваемость авторов сообщений будет лучше. Да и внешне будет привлекательней смотрется и вписываться в дизайн сайта. Ну или хотя бы сделать возможноть в шаблоне вывести аву руками, меня такой вариант устроит.
avatar
Также хотелось бы отправку сообщений сочетанием клавиш, можно Enter
На на enter можно отправлять по умолчанию, так как поле ввода относится к кнопки submit.

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

Например, в конфиге можно указать, куда выводить новые сообщения — наверх или вниз? от этого зависит и расположение формы. В комментах в топиках, к примеру, новые комменты внизу. И форма соответственно внизу. Имхо.
Хорошо, добавлю в настройки.
avatar
И еще. Надо продумать, как отвечать конкретным пользователям. Например, нажал на ник — в форме проставилось
Username,
. и курсор сразу. Сообщений, адресованные МНЕ — выделять другим цветом и сопровождать каким то ненапряжным звуком (щелчок какой то). Аналогично — выделять СОБСТВЕННЫЕ сообщения, чтобы их было видно в общем потоке.
avatar
Можно но мне кажется там должна быть ссылка на профиль пользователя. Подумаю над этим.
avatar
вот вот, я тоже так думаю. надо продумать этот момент. вариант с маленькой кнопкой не оч крут — попади по ней! можно знаешь как — нажатием на само сообщение: то есть если нажать на логин автора — попадаешь к нему в профиль. Если на текст его сообщения — это и есть ссылка на ответ. И попасть легко, и ссылка на профиль сохранена.
avatar
а вообще, насчет цены — сколько скажешь, столько и заплатят. и я в том числе :) главное, чтобы человека устраивал функционал, а деньги он найдет.
avatar
Еще забыл упомянуть про сумрак. Эта спонтанная возможность видеть скрытые сообщения. Т.е сообщения можно как удалять так и скрывать одним щелчком, причем админы видят скрытые сообщения. Таким образом можно общаться в чате без лишних глаз )
avatar
Да, хорошая плюшка :) Давай уже, доделывай, выкладывай. Я думаю, этот чат многом понравится :)
  • aex
  • 0
avatar
пару лет назад сделал такой же, блоком в прямой эфир на всех страницах. Плюс — «боты», выдающие персонализированные теглайны в ответ на случайные сообщения
avatar
Внимание.
Рад сообщить хорошие новости.
1) Плагин изначально разворачивал прямо в системе ls, сегодня все перенес на функционал плагинов. Т.е можно включать и отключать как и все остальные плагины.

2) Решил сделать плагин полностью бесплатным включая весь его функционал.

(картинка кликабельна)


На данный момент дорабатываю основное тз, и буду допиливать некоторые фичи по вашим просьбам. Всем кому нужен такой плагин пишите свои идеи по его улучшению и разработке.
avatar
Отличная новость :) А на github.com не планируете выложить?
avatar
Да, как только доведу до ума версию 1.0
avatar
Есть идея, но врятли осуществлима) Идея такая — в чате добавить кнопочку например «Отойти», после которой можно переходить по сайту, а если Вам кто-то, что то напишет, появляется всплывающее окно с возможностью быстрого ответа) Просто так народ и в чате будет общаться и на сайте топике читать.
avatar
Нет такое делать не буду. Не хочу захламлять чат кучей кнопок.
Опять же это лишний трафик, опять как определить что вам что-то написали если отключено обновление чата )
avatar
Добавил config и возможность костюмизации: (предлагайте доп. настройки)


avatar


Примерно так это выглядит на разных шаблонах (lightblue2)
Мне вот интересно как лучше делать для него стили? Я до этого использовал bootstrap, но тянуть его захотят далеко не все
avatar
охренеть! я полагаю, шаблон вы купили? :) будет жаль, если такой перспективный разработчик станет пользоваться ворованными шаблонами. Сорри за оффтоп.
avatar
Эм нет, не покупал.
Я уже не помню кто, но мне его присылали в личку. Я еще удивился и спросил зачем, я думал это был ты. Сейчас поискал в личке, то сообщение уже удалили.

По факту самим шаблоном пользоваться я не буду, у меня свой собственный дизайн на бутстрапе, а там я просто тестировал плагин на разных шаблонах. Но у меня из доступных под рукой оказался только твой и девелоперский )
avatar
собственно, я так и думал. Ок)
avatar
Насколько я знаю ты в свой блог выкладываешь шаблоны. Я видел ссылку на скачивание. Мне кажется это приманка для Alice2k…
avatar
я шаблон выкладываю только в одном месте — в каталоге. Во всех остальных случаях это не я. Зарегаться под ником nickostyle любой может)
avatar
Как это? Разве ники не уникальны? Во блин, а я и не знал :)
avatar
вы не поняли) просто на разных сайтах в сети выкладывают мой шаблон от моего имени. Понятное дело, что на подобных сайтах я не зарегистрирован, так что ник свободен.
avatar
От гады. Надо как-то защищать шаблон.
комментарий был удален
avatar
кстати, почему то чат уехал сильно влево (ориентируюсь по логотипу и навигации, это, по идее, левый край шаблона.
avatar
Знаю, это чат его размазал. Вообщем впереди работа над стилями чата, самое трудное сделать его подходящим под основные шаблоны.
avatar
Начал работу над консольными командами доступными для администраторов. Первая уже готова
/admin some text.


(картинка кликабельна)
avatar
Закончил работу над возможность просмотра истории. Дизайн нет пока, но функционал рабочий )
avatar
Еще просьба — перед релизом сделать демку.
avatar
Если кто нибудь предоставит свой хостинг )
Ну или по крайней мере сайт на ls, с активированным плагином то нет проблем.
avatar
это не проблема. как будет нужно, обращайся.
avatar
ок, как только допилю до беты )
avatar
И у меня можно демо разметить.
avatar
буду ждать прикольная вещь! автор красавчик)
avatar
предлагаю сделать чат как в контакте, грузился в низу страницы + возможность перемещать по странице, сворачивать
  • Rix
  • 0
avatar
Дайте человеку реализовать как есть, а потом уже и «хотелками» заваливайте
avatar
$config['sort_reverse'] = false; //Если true, то новые сообщения выводятся внизу. (по умолчанию false)
а форма меняет свое положение? логично если новые сообщения будут внизу, то и форму там расположить
avatar
можно. Но мне кажется форма всегда должна быть вверху )
По крайней мере никогда не видел что бы форма была где-то внизу под новыми комментами
avatar
:) комментарии — отличный пример. Переписка вконтакте — отличный пример.
avatar
также предложу сделать кнопку «показать еще сообщения» при достижении конца листинга («показывать в чате 15 сообщений»). Кнопку размеется ajax.
Ну и про отдельные стили для собственных и адресованных мне сообщений не забудь :) чтобы различать их в потоке.
Кстати, что тем, как реализовать ответ на сообщение?
avatar
технически очень просто. А вот как лучше будет сделать это на интерфейсе не знаю. Думал сначала на ник, но там должен быть профиль. Сама строка тоже не должна быть каким то действием, ибо иногда текст с нее выделяется/копируется. Можно сделать всплывающую ссылку при наведение, но не очень красиво.

Вообщем еще думал как лучше это сделать.
avatar
Хорошая затея, автор молодец. А предполагается поддержка двух стандартных шаблонов из коробки?
avatar
Теоретически будут использоваться ссылки на классы из cynio, так что все шаблоны которые используют теже классы должны адекватно отображать чат. Но конечно для некоторых шаблонов придется ручками править «под себя». Что касается стандартных, то да. Все будет.
avatar
Спасибо, именно это и интересовало. А из функций рассматривали возможность создания тематических и приватных комнат в чате? Скажем для приватных, можно задавать по никам доступ в комнату.
avatar
Думаю сейчас на это у меня нет время. В ближайшем времени брошу остальные дела и доделаю до 1.0. А потом в будущем думаю все возможно.
avatar
Ну это я высказал идею на возможные улучшения м доп. функционал, как вы и просили выше n-ое количество сообщений вверху.
avatar
как то затихло все, разработка продолжается?
avatar
Пока совсем нет времени, но как только будет свободная минутка обязательно продолжу.
avatar
Было бы неплохо если разработчики ls добавят хук между content_end и footer, и хук footer_begin.
Пока даже не знаю куда можно встроить чат )
Вариантов не так много, перед контентом, после шапки, и в самом низу после всех ссылок в футере.
avatar
Для таких предложений есть тикеты на гитхабе и пулреквесты
avatar
Ну раз уж ты прочитал, больше ничего не надо )
avatar
с верху над топиками
avatar
Кому то покажется это не слишком удобно. Мне например хотелось бы разместить чат внизу )
Скорее всего я конечно сделаю настройку, что бы можно было поменять его расположение.
avatar
да хоть в сайдбаре
выкладуй ужо: )))
avatar
Немного поработал над стилями, от twitterbootstrap пришлось отказаться =(

Вид из глаз пользователя (synio)


Вид из глаз модератора (lightblue)


Удаленные сообщения (lightblue)
avatar
картинки кликабельны ^^
avatar
1. Форму можно будет разместить внизу? Это, я так понимаю, решается в шаблоне?
2. Для лайтблу стилизация не соблюдена :) если планируешь выпустить час сразу с адаптацией под лайтблу, я могу заранее ее подготовить.
avatar
Стилизация под лайтблу не причем, должно примерно одинаково выглядеть на всех шаблонах )
Просто у меня под рукой только стандартный и лайтблу.

Насчет формы да, весь чат находится в одном шаблоне shoutbox.tpl, там можно изменить расположение любых элементов. Все стили также хранятся в одном css shoutbox.css. Так что под себя настроить не проблема.
avatar
Насчет админ-команд, может сделать команду отправки сообщения в инбокс? Ну например:
/private %user_name% Привет, как дела, блабла

ну или хотя бы сделать галочку «приват» при отправке сообщения. Поставил галку и эти сообщения отображаются только для адресата. Ну и в самом сообщении поставить иконку глаза закрытого, чтобы получатель видел что это приватное сообщений. Ну иногда бывает хочется сказать кому то что то плохое, лично, так сказать, а в личку лезть лень )))
avatar
Это будет нагружать базу. Придется для каждого юзера проверять еще является ли это сообщение приватным. Хотя дело даже не в нагрузке. Насчет /private %text$ есть же специальное окошко для отправки лс. Можно просто сделать что бы оно появлялась при нажатие на иконку почты рядом с ником юзера.
avatar
Перенес весь текст в языковые файлы
Добавил некоторые настройки (админы чата по юзер ид)
Текущая версия 0.8 готова, скоро на главной опубликую ссылку на сайт для тестирования.
avatar
avatar
Привет. Из за слишком долгой модерации у меня появилось несколько неплохих идей по доработке, также хочется сделать плагин максимально совместимым со всеми браузерами/версиями ls. В результате чего я принял решение снять плагин с публикации и доработать его до версии 1.1.

Релиз перенесен на несколько дней =(
В новой версии будет добавлено:

Благодаря донату nickostyle :
— мягкий скрулл (jquery) с возможностью настройки
— возможность отвечать пользователю
— подсветка своих сообщений и адресованных вам

Дополнительные исправления:
— лучшая совместимость, исправлены маленькие баги со стилями
— улучшен базовый стиль
— больше настроек по отображению чата на отдельной странице, или в сайдбаре.
avatar
мы всё прастим ))
не спеши
модерация упоротая
avatar
откуда ты знаешь o_O
avatar
надо поставить человека для модерирования
извечно долгая модерацию играет злую шутку с ЛС
так был случай с плагином супер спойлер
у меня было стойкое желание его купить
но его так и не хотели аппровить, в итоге забил на оный)
avatar
А лол, я думал ты говоришь про функционал «Модерация чата», который туда встроен. Ну там удаление сообщений… =)
avatar
Что-то я так и не нашел ссылку на плагин :(
avatar
avatar
Спасибо!
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.