Почти любой пример websocket (
например на javascript и nodejs) это простейший чат без авторизации.
Так как речь идет о курсовой, т.е. это вопрос обучения, настоятельно не рекомендую брать готовую инфраструктуру (коих не мало в опенсорсе, и не дай бог полезешь во что монструозное то типа jabber) а реализовать все самому, чтобы прочувствовать.
Тем более задача не такая уж и сложная.
* тебе нужен интерфейс пользователя и возможно администратора
* тебе нужна серверная часть, поддерживающая: авторизацию пользователей, хранение и доставку сообщений
Используя браузер в качестве платформы пользовательского интерфейса можно значительно сэкономить на разработке (отображение любой мультимедиа и даже простой апгрейд до аудио/видео чата, например на основе webrtc).