zoukankan      html  css  js  c++  java
  • 最终项目 XMessenger Client

    最终项目 X-Messenger Client

    最终项目 X-Messenger Client

    X-Messenger Client是轩辕高端IT培训中心推出的支持多协议(包括XMMEP)、多帐户、多会话的现代即时通信客户端,作为一个新的实战项目,X-Messenger Client旨在锻炼学员对网络、多线程、数据库以及Linux API的运用、对软件架构的认识。

    X-Messenger Client


    X-Messenger
    Client的关键特性:

    • 支持多协议,不论是轩辕高端IT培训中心自定义的XMMEP消息协议,还是Jabber/XMPP、MSN、QQ、ICQ、AIM等其它协议,都可在X-Messenger Client下实现;
    • 支持多帐户、多会话,同QQ和MSN等IM Client不同,X-Messenger支持在同一个客户端进程中支持多个不同协议的帐户,如X-Messenger帐户、MSN账户;也可以是同一个协议下的多个帐户,如同时使用两个不同的X-Messenger帐户;
    • 基于局域网的P2P文字聊天、群聊、文件共享、文件传输;
    • 支持XMMEP协议下的P2P文字聊天、群聊、离线消息、文件传输;
    • 好友管理,聊天室/群管理;
    • 优秀的架构和设计,清晰的模块划分,将UI与后台、模块与模块之间的耦合降到最低。

    涉及技术:

    • C++:使用C++语言实现,充分融合面向对象和泛型编程;
    • UI:gtkmm-2.4;
    • 网络I/O:Boost.Asio、ACE、Linux Socket + Epoll三种方案之一;
    • 并发:Boost.Thread、ACE、Linux Pthread三种方案之一;
    • 客户端数据持久化:sqlite3;
    • 声音组件:GStreamer-0.10;
    • 以及其它一些技术。

    屏幕截图:

    以下为X-Messenger-0.2.10的屏幕截图:

    Main Window with Tooltips

    X-Messenger 主窗口

    (Buddy和Group、Chatroom的Tooltips不同)

     

    Chat Window

    Chat Window - Smileys

    Chat Window - Picture

    X-Messenger 聊天窗口

    (支持互联网/局域网 P2P一对一文字聊天、P2P群聊)

     

    Add Files

    X-Messenger 文件提交窗口

    (可为各个文件设置不同的下载密码,或批量设置相同的下载密码)

     

    Shared Files

    X-Messenger 共享文件列表

    (第四列标示:是否为本地文件(即由“我”提交共享)还是由其它用户提交共享的远程文件;第五列标示:是否需要下载密码)

     

    File Transfers

    X-Messenger 文件传输管理

    (支持取消正在进行的文件传输)

  • 相关阅读:
    POJ 1987
    POJ 3107
    POJ 1984
    POJ 1985
    【50】目标检测之目标定位
    【49】计算机视觉现状
    【48】数据扩充(Data augmentation)
    【47】迁移学习(Transfer Learning)
    【46】谷歌 Inception 网络简介Inception(2)
    【45】谷歌 Inception 网络简介Inception(1)
  • 原文地址:https://www.cnblogs.com/lexus/p/2565872.html
Copyright © 2011-2022 走看看