Coder Social home page Coder Social logo

youim's Introduction

YouIM

Travis Travis Travis

基于t-io的轻巧部署的IM服务,支持tcp和ws连接。

使用

通过maven:

    <dependency>
        <groupId>com.github.youyinnn</groupId>
        <artifactId>you-im</artifactId>
        <version>0.7.1</version>
    </dependency>

特点

  • 基于tio
  • 实现了绝大部分的IM业务的处理,开箱即用

TODO

  • logout(done)

  • 群消息服务(done)

  • 适合用户的接口(done)

  • 离线消息服务如何实现?

  • 聊天记录本地存储服务?

    • 点对点聊天记录
    • 群组聊天记录
    • 聊天记录应该和离线消息挂钩
  • 离线消息系统至关重要.

  • 加群/加好友的申请使用:异步+离线的方式解决, 绝不使用同步方式解决

  • 已确定的群组关系如何离线保持?(done)

    • 用于群组关系的消息布告(done)
    • 用户所属群组确认(done)
    • 群组管理员关系确认, 可同意/拒绝加群申请(done)
    • 群主确认,可解散该群, 可同意/拒绝加群申请(done)
  • 已确定的好友关如何离线保持?(done)

    • 用于好友关系的消息布告(done)
    • 好友关系确认(done)
  • 建立基本的IM用户关系管理, 用以消息布告:

    • 好友关系消息布告,接受其好友消息的消息布告:

      • 上线提醒(done)
      • 个人信息的更新(这个布告可以不用im来实现, 而是用户主动走http请求去用户管理系统获取)
      • 好友添加的请求,请求到对方(done)
    • 群组关系消息布告,接受其群组成员消息的消息布告(done):

      • 上线提醒(done)
      • 加群请求,请求到该群所有的管理员(done)
      • 退群提醒,提醒到该群的所有管理员(done)
      • 群解散提醒, 提醒到该群所有用户(done)

youim's People

Contributors

youyinnn 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.