Git Product home page Git Product logo

chat's Introduction

What Is Tornado WebChat

基于tornado websocket的web聊天应用,底层使用了redis的发布/订阅机制

Browser Support

  • chrome
  • safari
  • firefox

Dependences

Runtime

  • Ubuntu 12.04
  • Python 2.7+

Python Packages

  • BeautifulSoup==3.2.1
  • redis==2.8.0
  • tornado==3.1.1

How To Install

  1. install python dependences

    pip install -r requirements.txt
  2. install redis server

    sudo apt-get install redis-server
  3. configuration

    vim $PROJECT_HOME/conf/application.conf
    redis_host = "YOUR REDIS SERVER IP"
    
    redis_db = 'REDIS DB'
    
    redis_channel = "YOUR SUB/PUB CHANNEL"
    
  4. run server

    python server.py

Screenshot

  1. 登录页面

screenshot

  1. 聊天页面

screenshot

Changelog

  • 群聊功能
  • ctrl+enter 快捷键发送消息
  • emoji 表情支持(这个非常有趣)
  • 添加私聊功能
  • 使用脚本动态抓取tumblr登录页面的背景图片,应用到系统页面(借用)
  • 使用github Identicons服务生成动态头像
  • 添加了消息提示功能,主要包括desktop notification桌面通知,Html audio播放提示音, 以及未读消息提示
  • 解决同一用户打开多个浏览器窗口导致的问题

TODOS

  • 如果没有聊天记录,Who才知道你一天到晚说了些什么东西
  • 如果没有用户管理,鬼才能知道那些是你说的~
  • 某人说只能发文字,发表情都OUT了,还要能发图片
  • 除了发图片以外,截图也是很牛叉的一个功能,当然还是必须要浏览器支持canvas才行

chat's People

Contributors

yunlzheng avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.