RailsChat是一款由Rails开发的实时Web聊天室

栏目: Ruby on Rails · 发布时间: 7年前

内容简介:RailsChat是一款由Rails开发的实时Web聊天室

RailsChat

RailsChat是一款由Rails开发的实时Web聊天室,在 Render_sync 的基础上完成,有需要即时通讯的应用可以考虑这个Example

目前功能

  • 即时通讯
  • 增添好友
  • 创建聊天
  • 拉人,删人
  • 转移房屋权限

Todo

  1. UI界面修改(类似WeChat)
  2. 未读信息的提醒(包括声音)
  3. 加入更多的ajax提高用户体验

Usage

  1. Fork项目

    git clone https://github.com/your_user_name/RailsChat
    cd RailsChat
    bundle install
    rails server
  2. 然后再打开另外一个终端,运行以下命令启动另外一个server来监听聊天室的用户并实时推送最新的消息:

    rackup sync.ru -E production

Note:如果要部署到云上或者本地局域网内,需要修改 config/sync.yml 文件

以本地局域网为例:

  1. 若本机的ip地址为192.168.0.14(使用 ifconfig 查看),那么需要将config/sync.yml中的localhost全改为此ip地址,例如

    development:
      server: "http://192.168.0.14:9292/faye"
      adapter_javascript_url: "http://192.168.0.14:9292/faye/faye.js"
      auth_token:  "97c42058e1466902d5adfac0f83e84c1794b9c3390e3b0824be9db8344eae82b"
      adapter: "Faye"
      async: true
    
    test:
      ...
    production:
      ...
  2. 然后运行rake tmp:clear来清除缓存,不然修改不会生效(运行前先将所有相关的运行停止:如rails s,rackup sync.ru等)

  3. 再次运行rails服务器和监听程序,并指定监听程序运行的ip地址

    rails s
    rackup sync.ru -E production --host 192.168.0.14

Debug

  1. 当遇到消息并没有实时推送的情况时,先F12查看浏览器的Js文件加载情况,若faye.js加载成功则一般不会出现问题

  2. 以上加载完成但是仍然没有推送的时候,请查看Rails服务器的log文件

  3. 需要在两个浏览器中登录不同的账号来检验聊天室功能

截图

RailsChat是一款由Rails开发的实时Web聊天室

RailsChat是一款由Rails开发的实时Web聊天室

RailsChat是一款由Rails开发的实时Web聊天室

RailsChat是一款由Rails开发的实时Web聊天室

如果觉得好,请给项目点颗星来支持吧~~

有什么好的建议,请在issue中提出,欢迎contributors!


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python源码剖析

Python源码剖析

陈儒 / 电子工业出版社 / 2008-6 / 69.80元

作为主流的动态语言,Python不仅简单易学、移植性好,而且拥有强大丰富的库的支持。此外,Python强大的可扩展性,让开发人员既可以非常容易地利用C/C++编写Python的扩展模块,还能将Python嵌入到C/C++程序中,为自己的系统添加动态扩展和动态编程的能力。. 为了更好地利用Python语言,无论是使用Python语言本身,还是将Python与C/C++交互使用,深刻理解Pyth......一起来看看 《Python源码剖析》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具