收藏 分享(赏)

智能家居系统客户端设计方案 IOS版.doc

上传人:scg750829 文档编号:4468656 上传时间:2018-12-29 格式:DOC 页数:70 大小:12.14MB
下载 相关 举报
智能家居系统客户端设计方案  IOS版.doc_第1页
第1页 / 共70页
智能家居系统客户端设计方案  IOS版.doc_第2页
第2页 / 共70页
智能家居系统客户端设计方案  IOS版.doc_第3页
第3页 / 共70页
智能家居系统客户端设计方案  IOS版.doc_第4页
第4页 / 共70页
智能家居系统客户端设计方案  IOS版.doc_第5页
第5页 / 共70页
点击查看更多>>
资源描述

1、 智能家居系统客户端设计方案Version 0.12018 年 12 月 29 日XX 软件股份有限公司设计方案江苏润和软件股份有限公司 第 2 页目录目录 2修改记录 7读者对象 7参考文档 71 概述 .81.1 目的 81.2 系统总体描述 .81.2.1 系统功能 81.2.2 系统组成 91.2.3 网络拓扑结构 101.2.4 系统层次架构 101.3 名词解释 112 界面结构 .123 界面详细说明 133.1 登录界面详解 .133.1.1 场景 133.1.2 界面功能及效果图 133.1.3 界面布局 133.1.4 界面输入与输出 143.1.5 数据存储 143.1.

2、6 异常处理 143.1.7 关键函数 143.2 主界面详解 .153.2.1 场景 153.2.2 界面功能及效果图 153.2.3 界面布局 163.2.4 数据存储 163.2.5 异常处理 163.3 房间列表界面(房间) 163.3.1 场景 163.3.2 界面功能及效果图 173.3.3 界面设计 173.3.4 数据存储 173.3.5 异常处理 183.3.6 关键函数 183.4 新增房间界面 .19设计方案江苏润和软件股份有限公司 第 3 页3.4.1 场景 193.4.2 界面功能及效果图 193.4.3 界面设计 203.4.4 输入设计 203.4.5 数据存储

3、203.4.6 异常处理 203.4.7 关键函数 213.5 设备列表界面 .213.5.1 场景 213.5.2 界面功能及效果图 213.5.3 界面设计 223.5.4 数据存储 223.5.5 异常处理 223.5.6 关键函数 223.6 新增设备界面 .253.6.1 场景 253.6.2 界面功能及效果图 253.6.3 界面设计 263.6.4 输入设计 263.6.5 温湿度感应器唯一性设计 263.6.6 异常处理 263.6.7 关键函数 263.7 新增空调驱动下载界面 273.7.1 场景 273.7.2 界面功能及效果图 273.7.3 界面设计 283.7.4

4、异常处理 283.7.5 关键函数 283.8 空调学习功能界面 .293.8.1 场景 293.8.2 界面功能及效果图 293.8.3 界面设计 303.8.4 异常处理 303.8.5 关键函数 303.9 摄像头监控界面 .313.9.1 场景 313.9.2 界面功能及效果图 323.9.3 数据来源 323.9.4 界面设计 333.9.5 异常处理 333.9.6 关键函数 333.10 摄像头历史记录查看界面 33设计方案江苏润和软件股份有限公司 第 4 页3.10.1 场景 333.10.2 界面功能及效果图 333.10.3 界面设计 343.10.4 异常处理 353.1

5、0.5 关键函数 353.11 空调控制界面 .363.11.1 场景 363.11.2 界面功能及效果图 363.11.3 界面设计 373.11.4 控制设计 373.11.5 数据来源 383.11.6 异常处理 383.11.7 关键函数 383.12 照明设备列表界面(照明) .393.12.1 场景 393.12.2 界面功能及效果图 393.12.3 界面设计 403.12.4 数据存储 403.12.5 异常处理 403.12.6 关键函数 403.13 摄像头列表界面(监控) 413.13.1 场景 413.13.2 界面功能及效果图 413.13.3 界面设计 413.13

6、.4 数据存储 423.13.5 异常处理 423.13.6 关键函数 423.14 空调列表界面(空调) 433.14.1 场景 433.14.2 界面功能及效果图 433.14.3 界面设计 433.14.4 数据存储 433.14.5 异常处理 443.14.6 关键函数 443.15 场景模式列表界面(场景) .443.15.1 场景 443.15.2 界面功能及效果图 443.15.3 界面设计 453.15.4 数据存储 453.15.5 异常处理 453.15.6 关键函数 463.16 新增场景模式界面 47设计方案江苏润和软件股份有限公司 第 5 页3.16.1 场景 473

7、.16.2 界面功能及效果图 473.16.3 界面设计 483.16.4 输入设计 483.16.5 数据存储 483.16.6 异常处理 493.16.7 关键函数 493.17 编辑场景模式界面 503.17.1 场景 503.17.2 界面功能及效果图 503.17.3 界面设计 513.17.4 输入设计 513.17.5 数据存储 513.17.6 异常处理 523.17.7 关键函数 523.18 温湿度列表界面(温度) 533.18.1 场景 533.18.2 界面功能及效果图 533.18.3 界面设计 543.18.4 数据存储 543.18.5 异常处理 543.18.6

8、 关键函数 543.19 智能插座列表界面 553.19.1 场景 553.19.2 界面功能及效果图 563.19.3 界面设计 563.19.4 数据存储 563.19.5 异常处理 563.19.6 关键函数 563.20 网络设置界面(网络) 583.20.1 场景 583.20.2 界面功能及效果图 583.20.3 界面设计 583.20.4 数据存储 583.20.5 异常处理 583.21 上网设置界面 .593.21.1 场景 593.21.2 界面功能及效果图 593.21.3 界面设计 593.21.4 数据存储 603.21.5 异常处理 603.21.6 关键函数 6

9、0设计方案江苏润和软件股份有限公司 第 6 页3.22 无线设置界面 .613.22.1 场景 613.22.2 界面功能及效果图 613.22.3 界面设计 623.22.4 界面输入 623.22.5 数据存储 623.22.6 异常处理 633.22.7 关键函数 633.23 文件浏览界面(文件) 633.23.1 场景 633.23.2 界面功能及效果图 643.23.3 界面设计 643.23.4 异常处理 643.24 我的资料库 .643.24.1 场景 643.24.2 界面功能及效果图 653.24.3 界面设计 653.24.4 数据存储 663.24.5 异常处理 66

10、3.24.6 关键函数 663.25 本地资料库 .673.25.1 场景 673.25.2 界面功能及效果图 673.25.3 界面设计 673.25.4 数据存储 683.25.5 异常处理 683.25.6 关键函数 683.26 管理设置界面(管理) 683.26.1 场景 683.26.2 界面功能及效果图 683.26.3 界面设计 693.26.4 数据存储 693.26.5 异常处理 693.26.6 关键函数 69设计方案江苏润和软件股份有限公司 第 7 页修改记录Revision NumberRevision Date Summary of Changes Author0.

11、1 2012/10/18 Initial draft 高敏1.0 2013/5/14 场景、空调、文件接口更新 高敏读者对象Smarthome 项目组的开发人员,系统架构师,项目经理等。仅供内部使用。参考文档Document Name Version Author LinkSmarthome_comm_spec_v0_1_20121022.doc0.1 蒋生栋Smarthome_database_20121022.doc 0.1 蒋生栋Smarthome_UE_Spec_v1_2_20121113.doc1.2 蒋生栋大亚智能家居远程系统基本设计方案1.doc1.0 蒋生栋设计方案江苏润和软件

12、股份有限公司 第 8 页1 概述1.1 目的智能家居是提升家居安全性、便利性、舒适性、艺术性,并实现环保节能的软件系统。本文档描述了智能家居客户端系统架构,设计布局,设计约束以及相应接口,用于指导智能家居客户端系统的后续开发工作。1.2 系统总体描述1.2.1 系统功能(一)远程视频监控功能 实时监控通过智能手机、电脑、PAD 等设备远程实时观看摄像头画面,画面要求VGA 15 帧/s 。 (二)远程文件共享功能 1、资料共享通过智能手机、电脑、 PAD 等设备远程复制、查看、删除 icon 硬盘数据库资料; 2、录像回放通过智能手机、电脑、 PAD 等设备远程查看视频监控历史资料; (三)远

13、程家居控制功能 1、灯光控制通过智能手机、电脑、 PAD 等设备远程控制灯光的打开与关闭; 2、窗帘控制通过智能手机、电脑、 PAD 等设备远程控制窗帘的打开与关闭; 3、空调控制通过智能手机、电脑、 PAD 等设备远程控制空调的开启与关闭,空调温度控制; 4、电器控制通过智能手机、电脑、 PAD 等设备远程控制电视机、热水器、电动窗、饮水机、排风扇、地暖等家用电器设备. 5、定时控制通过智能手机、电脑、 PAD 等设备远程灯光、窗帘、空调和其它家用电器的定时开启与关闭,每周 7 天每天两个定时时段; 6、组合场景控制通过智能手机、电脑、 PAD 等设备远程将灯光、窗帘、空调和其它家用电器的若

14、干个设备任意组合,形成场景模式,一键开启;设计方案江苏润和软件股份有限公司 第 9 页1.2.2 系统组成(一)客户端软件-ios/android/windows 三套 app(包含本地应用) 登录服务器窗口 NAT 穿透控制 文件传输完整性控制 远程摄像头显示及控制界面 家居系统控制界面(二)Linux 远程嵌入式客户端(Icon) 视频传输控制 文件传输完整性控制 家居状态检测及更新到服务器 家居控制命令执行 NAT 穿透控制,心跳信息 视频录像(三)登陆/配置/状态服务器端软件 用户 ID 数据库建立和维护 Icon 状态更新维护 用户登录控制 家居系统状态更新 NAT 穿透控制(四)S

15、tun 服务器端软件 NAT 穿透实现 视频或文件传输中转控制(五)中转服务器端软件(二期应用) 视频流传输协议 文件传输完整性控制设计方案江苏润和软件股份有限公司 第 10 页1.2.3 网络拓扑结构智能家居系统主要由服务器,客户端,ICON 以及网络等部分组成。他们的拓扑结构如下图所示。I n t e r n e t登陆 / 状态 / 配置服务器S t u n 服务器中转服务器( 二期 )大亚服务器平台N A Ti o s 设备A n d r i o d 设备 W i n d o w s 设备N A TI c o n硬盘I p 摄像头家居控制器I c o n 本地系统1.2.4 系统层次架

16、构客户端可以运行在 ios,Android ,Windows 三种操作系统上。将 pjsips 封装成库的形式,提供给应用程序调用。Icon 端软件运行在 Linux 操作系统上。Pjsip 和 BOA server 作为应用程序运行在 Linux 上。Pjsip 用以与客户端通信和交互,并将客户端发送过来的控制指令传递给 BOA web server。BOA web server 直接对家电发送控制指令进行控制。即 Pjsip 通过 BOA web server对家电进行控制。登陆/配置/状态服务器端,stun 服务器端和中转服务器端运行 Linux 操作系统,例如ubuntu,debian

17、 等。在 Linux 系统上直接安装 opensips, stun server,rtp proxy server 等开源软件即可。设计方案江苏润和软件股份有限公司 第 11 页1.3 名词解释Smarthome:智能家居,是以住宅为平台,利用综合布线技术、网络通信技术、安全防自动控制系统、音视频技术等多种技术将家居生活有关的设施集成,构建高效的住宅设施与家庭日程事务的管理系统,提升家具安全性、便利性、舒适性、艺术性,并实现环保节能的居住环境。Icon:智能家居系统中的家电集中控制装置,包括软件和硬件。SIP:Session Initiation Protocol,会话发起协议,是一个点对点协

18、议,是用于 VoIP 最主要的信令协议之一。OpenSIPS:一个成熟的开源 SIP 服务器,除了提供基本的 SIP 代理及路由功能外,还提供了一些应用级的功能。OpenSIPS 结构灵活,性能优越,可灵活定制各种路由策略,应用于语音、视频通信、IM 以及 Presence 等多种应用。PJSIP:P JSIP 是 一 个 开 源 的 SIP 协 议 库 , 它 实 现 了 SIP、 SDP、 RTP、 STUN、 TURN 和ICE。 PJSIP 作 为 基 于 SIP 的 一 个 多 媒 体 通 信 框 架 , 提 供 NAT 穿 越 功 能 , 具 有 很 好 的 移植 性 , 同 时

19、支 持 语 音 、 视 频 、 状 态 呈 现 和 即 时 通 讯 。BOA:BOA 是一种开源的 web server。它占用空间小,适用于嵌入式应用。STUN:是 Simple Traversal of UDP through NAT 的简写,也可以说是 Session Traversal Utilities for NAT,是一种网络协议,它允许位于 NAT 后的客户端找出自己的公网地址,查出自己位于哪种类型的 NAT 之后以及 NAT 为某一个本地端口所绑定的 Internet 端端口。这些信息被用来在两个同时处于 NAT 路由器之后的主机之间建立 UDP 通信。设计方案江苏润和软件股

20、份有限公司 第 12 页2 界面结构主界面摄像头列表文件浏览界面下载管理管理设置场景模式列表照明设备列表网络设置设备列表控制房间列表新增房间摄像头监控摄像头历史记录上网设定无线设置新增下载空调列表第一页第二页新增设备空调控制摄像头控制温湿度列表智能插座列表 新增智能插座空调控制驱动下载空调学习新增感应器驱动下载空调学习新增自定义模式编辑模式设计方案江苏润和软件股份有限公司 第 13 页3 界面详细说明3.1 登录界面详解3.1.1 场景用户登录 smarthome 客户端,输入正确的用户名和密码,点击登录按钮若网络异常则弹出“没有网络”的提示;若网络正常,则手机端自动识别手机上网方式是 wif

21、i 还是数据流量,若是 wifi 上网方式则获取网关地址,直接登录到网关地址对应的服务器,身份验证失败则提示,若是其他原因失败则直接登录外网服务器;若是数据流量上网方式则直接登录外网服务器。3.1.2 界面功能及效果图在用户登录界面,当网络连接正常时,输入正确的帐号和密码,点击登陆按钮,即可登陆智能家居客户端。在登录前勾选“记住密码” ,在退出智能家居客户端后,再次进入客户端账号和密码都会保存,若不勾选则自动保存账号。3.1.3 界面布局界面最上方是一个 UIImageView,显示大亚 logo;用于输入帐号密码的是 TextFeildView,设计方案江苏润和软件股份有限公司 第 14 页

22、登录按钮是一个普通的 UIButton。下方的勾选按钮和“记住密码”都是一个 UIButton。3.1.4 界面输入与输出界面输入有帐号和密码两项。(1 ) 帐号帐号由数字和英文字符组成,长度限制在 15 个字符内,不能为空,不能为空格。(2 ) 密码密码由数字和英文字符组成,用掩码显示,长度限制在 15 个字符内,不能为空,不能为空格。当满足以下条件:(1 ) 网络连接正常(2 ) 帐号和密码都输入正确点击“登录”按钮,进入主界面。3.1.5 数据存储用户名和密码存储在 OpenSIPS 服务器上。3.1.6 异常处理(1 ) 网络连接异常若网络异常则弹出“没有网络”的提示;若网络正常,则手

23、机端自动识别手机上网方式是 wifi 还是数据流量,若是 wifi 上网方式则获取网关地址,直接登录到网关地址对应的服务器,身份验证失败则提示,若是其他原因失败则直接登录外网服务器;若是数据流量上网方式则直接登录外网服务器。(2 ) 帐号或密码输入错误若帐号或密码输入错误,点击“登录”按钮,弹出错误提示,要求重新输入。(3 ) 帐号或密码为空若帐号为空,弹出框提示“帐号不能为空!” ;若密码为空,弹出框提示“密码不能为空!” 。(4 ) 记住密码没有勾选记住密码,成功登录系统再退出系统,再次打开应用程序后账号输入框自动填充上次登录的账号。(5 ) 勾选记住密码,成功登录系统再退出系统,再次打开

24、应用程序后账号和密码输入框自动填充上次登录的账号和密码,密码以掩码方式呈现。3.1.7 关键函数打开应用程序时,需要做一些初始化的工作,调用 Native 方法int smarthome_pjsuaInit(void)设计方案江苏润和软件股份有限公司 第 15 页将帐号和密码向服务器提交,进行身份验证时,使用 Native 方法int SipUtil_pjsuaRegister(const char *pSipserver, const char * pUsername,const char *pPassword,int netType) Native 方法: int smarthome_pj

25、suaInit(void)函数功能:初始化Param:无return:int 类型,注册结果的返回值。为 0 则初始化成功,其他值则表示初始化失败,不同的错误码代表不同的错误。具体返回值可参考源码资料。Native 方法: int SipUtil_pjsuaRegister(const char *pSipserver, const char * pUsername,const char *pPassword,int netType) 函数功能:注册帐号Param pSipserver:const char *类型,即将登陆的服务器的 IP 地址。Param pUsername:const c

26、har *类型,用户名。Param pPassword:const char *类型,密码。Param netType:int 类型,网络状态,内网 (1),外网(2)。return:int 类型,注册结果的返回值。为 0 则注册消息发送成功,其他值则注册消息发送失败,不同的错误码代表不同的错误。注:该方法会回调返回一个注册返回码,注册返回码为 200 时表示注册成功,其他不同的错误码代表不同的错误。3.2 主界面详解3.2.1 场景当用户身份验证通过,即进入系统主功能界面。该界面显示系统主功能菜单,若登录内网服务器则功能包括 “房间” 、 “照明” 、 “监控”、 “空调”、 “场景、 “温

27、度” 、 “智能插座”、 “网络”、 “文件”、及“ 管理”,共 10 项;若登录外网服务器则功能包括 “房间”、 “照明”、 “监控” 、 “空调” 、“场景、 “温度” 、 “智能插座”、 “文件”、及“管理” , 共 9 项。页面显示为 23,超过 6 个功能排列在第二页,左右滑屏显示。每个功能项均是带图标的按钮形式。点击主界面中的任一条目,则进入相应的功能界面。点击功能菜单中“退出”条目,或者点击返回按钮,弹出提示对话框“确认退出系统?” 。3.2.2 界面功能及效果图主界面的每个元素代表不同的功能模块,这些模块囊括了本应用程序的所有功能。点击任一图标,即进入响应的功能界面。主界面是进

28、入任一模块的必经之路。外网登录不显示网络模块,内网显示。设计方案江苏润和软件股份有限公司 第 16 页3.2.3 界面布局界面最上方是一个 navigationBar,中间的 title 显示“大亚智能家居” 。navigationBar 下方是一个 UIScrollView,里面放了若干自定的 view,由 UIButton 和 UILabel组成。点击每个自定义的 view,进入相应的功能界面。界面的最下面是重写的 pageController,scrollview 滑动时改变其图片,表明具体在主界面的哪一页。3.2.4 数据存储主界面的图片/文字/界面跳转等数据保存在本地配置文件中。3.

29、2.5 异常处理当出现网络异常时,与 ICON 的通信将失败,需要对用户作出“网络异常”的提示提示并退出应用程序。3.3 房间列表界面(房间)3.3.1 场景用户登录后,进入主界面,点击“房间”按钮,进入房间列表界面。列表显示当前所有房间信息,标题栏提供“返回” 、 “新增”按钮,标题栏下方。显示房间列表,页面显示为 3N,超设计方案江苏润和软件股份有限公司 第 17 页过屏幕部分上下滑动显示。每个房间项均是带图标的按钮形式。点击“ 新增 ”按钮进入新增房间页面。点击“返回”按钮则返回主界面。点击任一条目,进入该房间的设备列表。长按任一条目,弹出菜单提供“编辑”及“ 删除”功能, “编辑”功能

30、可修改房间名称,不支持修改房间类型,只能通过删除后新增实现房间类型的修改,只能删除没有设备的房间,不支持级联删除。3.3.2 界面功能及效果图房间列表界面列出用户建立的所有房间。3.3.3 界面设计界面最上方是一个 navigationBar,中间的 title 显示“房间” ;左侧的返回按钮,点击返回主界面;右侧是 UIButton,点击添加房间。navigationBar 下面是 GrideView,里面放的是自定的 view,包含一个 UIButton 和 UILabel,点击 UIButton 进入相应房间的设备列表界面,label 显示房间名称。3.3.4 数据存储房间信息存储在 o

31、pensips 服务器上。房间信息包含房间 ID、房间类型 ID 和房间描述。3.3.5 异常处理当出现网络异常时,与 ICON 的通信将失败,需要对用户作出“网络异常”的提示提示并设计方案江苏润和软件股份有限公司 第 18 页退出应用程序。3.3.6 关键函数Native 方法: int SipUtil_pjsuaSendIM( const char* pUri, const char * pMsg)函数功能:向 ICON 发送请求param pUri:ICON 的 urlparam pMsg:JSON 对象转化而来的字符串,表示请求的信息。return value:int 型,200 表示

32、成功发送请求;其他值表示请求分发送失败,不同的值表示不同的失败原因。方法:-(void)getTheRoomsList函数功能:发送获取房间列表请求param :无 return:void方法:-(void)allRoomsCallBack:(NSNotification*)notif函数功能:界面接收获取到的房间列表信息param notif:接收的返回信息return:void方法:-(void)modifyRoomName函数功能:重命名房间param :无 return:void方法:-(void)modifyRoomNameCallBack:(NSNotification *)not

33、if函数功能:界面接收重命名房间的返回信息param notif:接收的返回信息return:void方法:-(void)deleteRoom函数功能:删除房间param :无return:void方法:-(void)deleteRoomCallBack:(NSNotification *)notif函数功能:界面接收删除房间的返回信息param notif:接收的返回信息return:void方法:-(void)checkEquipInroom函数功能:获取指定房间的设备param :无设计方案江苏润和软件股份有限公司 第 19 页return:void方法:-(void)checkEqui

34、pInroomCallBack:(NSNotification *)notif函数功能:界面接收获取指定房间的设备的返回信息param notif:接收的返回信息return:void方法:-(void)deleteEquipCallBack:(NSNotification *)notif函数功能:界面接收删除设备的返回信息param notif:接收的返回信息return:void3.4 新增房间界面3.4.1 场景用户在主界面点击“房间” 按钮进入房间列表界面,再点击“新增” 按钮进入新增房间界面。新增房间列表界面标题栏为“新增房间” ,标题下方显示房间类型列表,页面显示为 3N,超过屏幕

35、部分上下滑动显示。标题栏提供“返回”按钮。点击“返回”按钮,返回房间列表界面。房间类型有“卧室” 、 “客厅”、 “书房”、 “餐厅”、 “厨房”、 “卫生间 ”、 “阳台” 及“自定义” 类型。点击任一条目弹出对话框提示输入房间名称,提供“继续添加 ”与“完成添加” 按钮。点击“ 继续添加” ,对话框消失。点击“ 完成添加” ,返回房间列表界面。3.4.2 界面功能及效果图本界面列出所有的房间类型,供用户选择用于添加房间。通过该界面,可以返回到房间列表界面。界面效果见下图所示。设计方案江苏润和软件股份有限公司 第 20 页3.4.3 界面设计界面最上方是一个 navigationBar,中间

36、的 title 显示“新增房间” ;左侧的返回按钮,点击返回房间列表界面。navigationBar 下方放了若干自定义的 view 来显示房间,自定义的 view 由一个 UIButton 和UILabel 组成,点击 UIButton 进入相应房间类型的新增界面,label 显示房间类型。3.4.4 输入设计在新增房间界面,当点击某一房间类型进行新增时,弹出对话框,要求用户输入房间名称。房间名称由数字/英文字母/汉字/下划线/ 空格组成,要求不能超过 20 个字符,不能为空。当房间名称输入框未输入任何字符时,若用户点击“继续添加”或“完成添加”按钮,弹出提示“房间名称不能为空” ;若“返回

37、”按钮,则可返回“房间列表”界面。3.4.5 数据存储当进入新增房间界面时,获取所有现有房间类型。房间类型存储在本地数据库,包含房间类型 ID、房间类型名称和房间类型三项。本文档中用到数据库存储的,参看数据库设计文档。3.4.6 异常处理当出现网络异常时,与 ICON 的通信将失败,需要对用户作出“网络异常”的提示提示并退出应用程序。设计方案江苏润和软件股份有限公司 第 21 页3.4.7 关键函数Native 方法: int SipUtil_pjsuaSendIM( const char* pUri, const char * pMsg)函数功能:向 ICON 发送请求param pUri:

38、ICON 的 urlparam pMsg:JSON 对象转化而来的字符串,表示请求的信息。return value:int 型,200 表示成功发送请求;其他值表示请求分发送失败,不同的值表示不同的失败原因。方法:-(void)addRoomFunction函数功能:添加房间param :无return:void方法:-(void)addRoomCallBack:(NSNotification *)notif函数功能:界面接收添加房间的返回信息param notif:接收的返回信息return:void3.5 设备列表界面3.5.1 场景用户在主界面点击“房间” 按钮,进入房间列表界面,在房间

39、列表界面点击任一条目即可进入设备列表界面,显示指定房间内设备列表,标题为“* 的设备” ,其中* 代表指定房间的名称,例如“主卧的设备” ,页面显示为 3N,超过屏幕部分上下滑动显示,标题栏提供“返回 ”、 “新增”按钮。点击“返回”按钮,返回房间列表界面。点击“新增”按钮,进入新增设备界面。长按任一条目,弹出菜单提供“编辑”及“ 删除”功能, “编辑”功能可修改设备名称,不支持修改设备类型,只能通过删除后新增设备实现设备类型的修改。界面上的照明/窗帘/插座/自定义设备,采用 switch 开关,点击进行开关控制设备开关;温湿度设备显示出当前温湿度;点击任一监控设备,进入相应摄像头控制界面;点

40、击任一空调设备,则进入相应空调控制界面。3.5.2 界面功能及效果图本界面列出指定房间的所有设备。通过该界面,可以返回到房间列表,可以添加该房间内的设备,可以对照明设备、窗帘设备等进行控制,可以进入监控设备或空调设备的控制界面。设备列表界面效果图如下图所示。设计方案江苏润和软件股份有限公司 第 22 页3.5.3 界面设计界面最上方是一个 navigationBar,中间的 title 显示“新增房间” ;左侧的返回按钮,点击返回房间列表界面;右侧的添加按纽,点击进入添加设备界面。navigationBar 下方是 UITableView, cell 中放置的控件控件为 UIImageView

41、,UILabel 和UIButton。根据设备类型,这些控件的显示有所差别。如果是照明、插座或窗帘,UIButton显示为开关按钮,点击 UIButton 控制开关状态;如果为监控设备或空调设备,UIButton 显示为箭头,点击 cell 进入设备的控制界面。3.5.4 数据存储房间的设备列表存储在 opensip 服务器上。3.5.5 异常处理当出现网络异常时,与 ICON 的通信将失败,需要对用户作出“网络异常”的提示提示并退出应用程序。3.5.6 关键函数进入房间设备列表界面时,向服务器请求获取房间内的设备信息。在设备列表界面,当点击照明设备或窗帘设备上的 OFF/ON 开关时, 对相

42、应设备发送开关控制指令;当点击监控设备时,需要获取指定监控设备的安全等级状态。Native 方法: int SipUtil_pjsuaSendIM( const char* pUri, const char * pMsg)函数功能:向 ICON 发送请求设计方案江苏润和软件股份有限公司 第 23 页param pUri:ICON 的 urlparam pMsg:JSON 对象转化而来的字符串,表示请求的信息。return value:int 型,200 表示成功发送请求;其他值表示请求分发送失败,不同的值表示不同的失败原因。方法:-(void)getEquipInRoomData函数功能:获取

43、指定房间的所有设备param:无return:void方法:-(void)EquipsInRoomCallBack:(NSNotification *)notif函数功能:界面接收获取到的指定房间的设备信息param notif:接收的返回信息return:void方法:-(void)getEquipState:(EquipInfo *)equip_info函数功能:获取指定设备的开关状态param info:指定的设备 return:void方法:-(void)getSocketPower:(EquipInfo *)info函数功能:获取指定插座的电量param info:指定的设备retu

44、rn:void方法:-(void)getTempAndHumi:(EquipInfo *)info函数功能:获取指定温湿度设备的温湿度param info:指定的设备return:void方法:-(void)equipStateCallBack:(NSNotification *)notif函数功能:界面接收获取指定设备的开关状态的返回信息param notif:接收的返回信息return:void方法:-(void)socketPowerCallBack:(NSNotification *)notif函数功能:界面接收获取指定插座的电量的返回信息param notif:接收的返回信息retu

45、rn:void方法:-(void)tempCallBack:(NSNotification *)notif函数功能:界面接收获取指定温湿度设备的温度的返回信息param notif:接收的返回信息设计方案江苏润和软件股份有限公司 第 24 页return:void方法:-(void)humiCallBack:(NSNotification *)notif函数功能:界面接收获取指定温湿度设备的湿度的返回信息param notif:接收的返回信息return:void方法:-(void)modifyEquipName函数功能:修改设备名称param:无return:void方法:-(void)mo

46、difyEquipNameCallBack:(NSNotification *)notif函数功能:界面接收修改设备名称的返回信息param notif:接收的返回信息return:void方法:-(void)deleteEquip函数功能:删除设备param:无return:void方法:-(void)deleteEquipCallBack:(NSNotification *)notif函数功能:界面接收删除设备的返回信息param notif:接收的返回信息return:void方法:-(void)controlOnOrOff函数功能:控制设备开关param:无return:void方法:

47、-(void)controlOnOrOffCallBack:(NSNotification *)notif函数功能:界面接收控制设备开关的返回信息param notif:接收的返回信息return:void方法:-(void)getCameraSecurityLevel函数功能:获取摄像头安全等级param:无return:void方法:-(void)securityLevelCallBack:(NSNotification *)notif函数功能:界面接收获取摄像头安全等级的返回信息设计方案江苏润和软件股份有限公司 第 25 页param notif:接收的返回信息return:void3.

48、6 新增设备界面3.6.1 场景用户在主界面点击“房间” 按钮,进入房间列表界面,在房间列表界面点击任一条目进入设备列表界面,用户在设备列表界面点击“新增”按钮进入新增设备界面。界面显示设备类型列表,有“灯光” 、 “摄像头”、 “空调”、 “窗帘”, ”温湿度”, ”智能插座 ”及“自定义” 类型,页面显示为 3N,超过屏幕部分上下滑动显示,标题栏提供“ 返回”按钮。点击“返回”按钮,返回设备列表界面。点击任一条目弹出该类型设备列表(通过向 icon 请求获得) ,提示输入设备名称,提供“ 继续添加”与“ 完成添加 ”按钮。点击“ 继续添加” ,对话框消失;用户点击“ 完成添加”,返回设备列

49、表界面。点击空调设备时完成名称输入后并成功添加后直接跳转至“驱动下载”界面。 点击“自定义” ,弹出自定义设备对话框,供用户自定义设备。3.6.2 界面功能及效果图新增设备界面用于新增设备,列出现有的设备类型,供用户选择。用户可新增照明/监控/空调/窗帘/温湿度/智能插座/自定义 7 种类型的设备。可通过该界面返回设备列表。界面效果图如下图所示。设计方案江苏润和软件股份有限公司 第 26 页3.6.3 界面设计界面上方是 navigationBar,左侧是一个“返回”按钮,点击返回到主界面;中间的 title 显示界面标题“新增设备” 。navigationBar 下方是一个 GridView,cell 中显示自定义的 view,包含 UIButton,按设备类型显示设备的图标;UILabel,显示设备类型名称。3.6.4 输入设计在新增设备界面,当点击某一类型设备进行新增设备时,弹出对话框要求输入设备名称。设备名称由数字/英文字母/汉字/下划线/ 空格组成,要求不能超过 20 个字符,不能为空。如果设备名称编辑框为空时点击“继续添加”或“完成添加”按钮,则弹出提示“设备名称不

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 实用文档 > 解决方案

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报