IM软件在智能电话终端上的设计与实现

[09-14 01:05:09]   来源:http://www.88dzw.com  电子制作   阅读:8623

文章摘要:1.4 IM软件的系统结构本系统主要由显示界面、登录模块、联系人管理和即时消息收发四个部分组成。(1)显示界面界面设计可以分为登录界面及主界面两个部分。登录界面提供用户账号和密码的输入。主界面由一个菜单栏和三个窗口构成。在用户状态菜单中,用户可以选择联机、离开、忙碌等六种状态;联系人菜单实现了对联系人的增加、删除、修改等工作。三个窗口分别为联系人列表窗口、消息发送窗口和会话窗口。联系人列表窗口列出所有联系人的昵称及其状态信息;消息发送窗口用于输入需要发送的内容;会话窗口中按顺序依次显示用户所发送的消息和对方的应答消息。(2)登录模块与NS服务器建立连接,传输加密的用户账号和密码信息,接收NS返

IM软件在智能电话终端上的设计与实现,标签:电子小制作,http://www.88dzw.com

1.4 IM软件的系统结构
  本系统主要由显示界面、登录模块、联系人管理和即时消息收发四个部分组成。
  (1)显示界面
  界面设计可以分为登录界面及主界面两个部分。登录界面提供用户账号和密码的输入。主界面由一个菜单栏和三个窗口构成。在用户状态菜单中,用户可以选择联机、离开、忙碌等六种状态;联系人菜单实现了对联系人的增加、删除、修改等工作。三个窗口分别为联系人列表窗口、消息发送窗口和会话窗口。联系人列表窗口列出所有联系人的昵称及其状态信息;消息发送窗口用于输入需要发送的内容;会话窗口中按顺序依次显示用户所发送的消息和对方的应答消息。
  (2)登录模块
  与NS服务器建立连接,传输加密的用户账号和密码信息,接收NS返回的应答信息,并从应答信息中抽取出SBS服务器的地址和用于登录到该服务器上的Cookie令牌。
  (3)联系人管理
  提供对联系人的增加、删除和修改等功能。在MSN中为了便于管理,联系人可以分成不同的队列,如好友、家庭成员和商务伙伴等。在新增加联系人时,应提示用户选择要加入的队列,而对于曾经添加过后又删除的联系人则直接将其恢复到原先所在的队列。联系人的删除又分为阻止联系人和彻底删除两种情况。阻止联系人就是将其放入阻止队列,使该联系人无法看到用户的状态并且不能给用户发送即时消息;而彻底删除联系人,则会删除与该联系人有关的所有信息。
  (4)即时消息的收发模块
        负责发送和接收即时消息的工作。当用户想同一个联系人发起会话时,首先同SBS服务器创建连接,将Cookie令牌交给它进行验证。验证通过后就可以调用Socket接口向SBS服务器发送信息,而从服务器收到的消息则在会话窗口中显示。
2  IM软件的实现步骤及关键技术
2.1 开发平台的选择
  Linux操作系统因其开放源码、容易定制和扩展、多硬件平台支持和内置网络功能等优良特性,早已成为嵌入式应用开发的首选平台,因此本文使用定制的嵌入式Linux系统[1]。
  另外本文选择了Qt-Embeded开发工具,它是由著名的Qt库开发商Trolltech针对嵌入式Linux系统推出的构建GUI和应用的C++开发包。Qt-Embeded的移植性较好,支持ARM、PowerPC、MIPS和Dragonball等多种CPU体系结构。同时又有QMake、QVFB、Qt Designer等众多强大开发支撑工具的支持,大大提高了Qt-Embeded系统的开发效率。Qt设计器(Qt Designer)是用来设计和实现用户界面并能够在多平台下运行的一种开发支撑工具,用以简化用户界面的设计。QVFB即虚拟帧缓冲技术,是用于在PC机上运行和测试嵌入式应用程序的工具。

www.88dzw.com2.2 IM开放源码的选择
  从底层开始实现一个完整的MSN客户端软件需要一定的时间。为了缩短开发周期、节省开发成本,本文采用开源项目的方式,即在第三方MSN客户端软件的基础上进行修改,使之满足要求。这样做的另外原因是可以从这些开放源码的软件中进一步剖析出MSN的协议格式,即使MSN协议有了新的版本,只要这个软件仍然可用,它所使用的新的协议格式级仍对开发调整有重要的参考价值,可以据此重新调整软件而无须去通过逆向工程的方法对MSN协议进行分析。
  支持MSN协议的IM客户端软件很多,必须选择适合于剪裁并且是基于Linux的开放源码系统,Gaim和Kmess都是不错的选择。其中Gaim是为Linux操作系统而设计的一种即时消息传递软件,它可以同时支持MSN、ICQ、AIM和Yohoo等多种客户端通信,但是它的软件结构比较复杂。Kmess也是基于Linux的开放源码系统,它只能支持MSN客户端,从开发者的角度而言,Kmess因其结构相对简单则更易于分析和改进。所以这里选择了Kmess作为MSN客户端软件的开发蓝本。
2.3 IM开放源码的修改
  尽管Kmess是基于Linux平台的支持MSN客户端的即时消息传递软件,但并不是直接搬过来就能用,必须进行大量的修改工作。首先Kmess是基于KDE环境而开发的应用程序,在源代码中大量使用KDE库函数,而KDE库本身就有数百兆,受到原型机存储容量的限制,不可能在原型机上实现KDE环境;其次Kmess是一个功能完善的MSN客户端,其中包括许多增强功能如文件传送、多方聊天、语音聊天和视频聊天等,由于在目前的智能电话终端上暂不考虑实现这些功能,因此对源码的修改和剪裁是必不可少的。

上一页  [1] [2] [3]  下一页


Tag:电子制作电子小制作维修教程知识 - 电子制作

《IM软件在智能电话终端上的设计与实现》相关文章