社交媒体平台的制作方法

文档序号:10494428阅读:304来源:国知局
社交媒体平台的制作方法
【专利摘要】本发明公开一种改进的社交媒体或即时消息平台,它在不牺牲更能表现出电子邮件和类似的即时消息平台的特性的益处诸如异步调度、带宽效率和各种管理性记录保存益处的同时,在很大程度上保留视频会议的即时性和会面性两者。用户结合图像数据记录音频数据和相关联姿势数据(例如,平移和缩放),并且与会话进程中的其他用户共享这些数据,从而允许在无相关联带宽负担的情况下有视频样体验。
【专利说明】社交媒体平台 发明领域
[0001] 本发明涉及社交媒体和即时消息服务,并且更广泛地涉及用于在电子网络之上创 建和共享语义内容消息的系统和方法。
[0002] 发明背景
[0003] 通常,视频会议、电子邮件或即时消息用作用于商业合作的通信媒体。
[0004] 视频会议可能是面对面会谈的"足够好的"替代,但视频会议是带宽密集型的并且 依赖于各方的调度可用性。电话会话也得到广泛地使用,但缺乏视频会议的视觉提示。不管 这些限制,视频会议和会谈常常是受人喜欢的,因为它们提供即时性和会面性。
[0005] 电子邮件和即时消息同样是流行的,因为它们允许延迟接收和应答,并且由于这 个原因而实质上可表征为"异步的"。所有通信的基于文本的完整记录还可供以后参考,并 且通常以各种方式来存储、编入索引并且是在需要时可搜索的。
[0006] 电子邮件和即时消息是有吸引力的,这一方面是因为它们避免了同步通信媒体的 调度问题,并且还保留方便的通信记录。这类形式的通信的具体限制在于:它们通常缺乏如 以上所提及的视频会议及类似形式的交流的即时性和会面性。
[0007] 此外,常常可能相当难以将电子邮件和即时消息撰写到期望的清晰度。即使最清 楚的表达也可能难以在电子邮件和即时消息媒体中呈现某些想法、内容或消息。这些形式 的通信的众所周知的限制是:不能或确定地难以传达"语气这伴随着错误交流的可能性, 尤其是如果主题在任何情况下都敏感的话。
[0008] 电子邮件和类似的即时消息平台的限制在这种意义上是多方面的:一方面落在撰 写消息以仔细地制作充分传达预期含义的消息的人身上,而另一方面则落在由于媒体的限 制而力图辨别含义的受众身上。
[0009] 本发明的目标是提供至少试图应对现有形式的通信的这些和其它限制的一种形 式的电子通信,并且具体地是提供解决或至少减轻通过现有渠道进行通信所经历的这些和 其它困难的异步通信媒体。
[0010] 发明概述
[0011] 发明构思源自以下认识:出于以带宽有效的方式异步传达语义内容的目的,现有 互联网媒体在某些方面并不是完全令人满意的。
[0012] 为此可提供以下改进的社交媒体或即时消息平台:在不牺牲更能表现出电子邮件 和类似的即时消息平台的特性的益处诸如异步调度、带宽效率和各种管理性记录保存益处 的同时,在很大程度上保留视频会议的即时性和会面性两者。
[0013] 本发明广泛地涉及结构化文件格式以及用于在计算装置的电子网络之上记录、存 储和再创建此类文件格式作为通信媒体的系统。"Blrt"文件格式将压缩音频、动画姿势数 据以及多种数字媒体格式组合到轻型封包中。
[0014] 媒体文件与音频/姿势分开地存储但是享有一种关系,这主要在创建时促进封包 数据和媒体的渐进式传输,从而给用户带来无缝且快速的体验。媒体与音频/姿势的分开还 在单次"会话"中复制数据,其中回复使用相同的媒体文件,因此它们无需不止一次地下载 或上传。
[0015] 为了方便起见,如通常所理解的,消息在其之上被共享的网络在本文中是指互联 网,但也可以是任何合适的计算机网络,包括公用网络以及封闭或专用网络。作为示例,此 类网络可包括设有防火墙的企业网或虚拟专用网络,不管它们是否使用以各种方式实现的 互联网协议。换言之,本发明并不知道任何特定网络中所使用的联网硬件的具体形式或协 议。
[0016] 虽然可通过各种不同的硬件装置和操作系统平台上的通用网页浏览器或应用程 序来提供界面,但优选地使用在客户端装置上运行的专用应用程序或app来写作、分配和查 看消息。
[0017]虽然消息可由用户定向到单个接收方或多个接收方,但消息也可被"广播"给更广 泛的受众(即,广大受众),或甚至选定的认可受众。可根据需要实现权限和控制的系统以便 规定谁能够查看并回应消息。此外,消息选集可作为用于一般消费的流或订阅的流来组织。
[0018] 在一个方面,本发明提供在服务器上托管供用户通过与服务器通信的客户端装置 来使用的即时消息服务的计算机实现的方法。客户端装置执行用于始发并且在用户之间共 享包括图像数据、音频数据和姿势数据的消息的应用程序,服务器包括适于执行以下步骤 的硬件部件:
[0019] 在服务器处接收与来自始发客户端装置的消息相关的音频数据和姿势数据;
[0020] 在服务器处存储音频数据和姿势数据结合音频数据和姿势数据所相关的图像数 据;以及
[0021 ]将所存储的音频数据和姿势数据从服务器分配给接收方客户端装置;
[0022] 其中所接收的音频数据和姿势数据结合图像数据在始发客户端装置处被记录,并 且结合图像数据被分配给接收方客户端装置以用于由接收方客户端装置再现。
[0023] 优选地,该方法还包括:在服务器处接收来自始发客户端装置的图像数据,并且将 图像数据分配给接收方客户端装置。
[0024] 图像数据是在记录音频数据和姿势数据之时或之前被接收,这有助于网络流量和 网络延迟。
[0025] 在服务器处,图像数据优选地结合图像数据所相关的音频数据和姿势数据被存 储。
[0026] 姿势数据有利地包括对图像数据进行的平移、缩放和旋转以及层叠在图像数据上 的视觉注释。
[0027] 在另一个方面,本发明提供用于托管即时消息服务的服务器,即时消息服务供用 户通过与服务器通信的客户端装置来使用,客户端装置执行用于始发并且在用户之间共享 包括图像数据、音频数据和姿势数据的消息的应用程序,服务器包括适于执行根据本发明 最先提及的方面的步骤的硬件部件。
[0028] 在另一个方面,本发明提供使用客户端装置以用于通过在客户端装置上执行的应 用程序与托管在服务器上的即时消息服务交互的计算机实现的方法,应用程序用于始发并 且在用户之间共享包括图像数据、音频数据和姿势数据的消息,应用程序适于执行以下步 骤:
[0029] 使用客户端装置将图像数据上传到服务器;
[0030] 使用客户端装置记录与图像数据相关的音频数据和姿势数据;以及
[0031] 将来自客户端装置的音频数据和姿势数据上传到服务器以便结合音频数据和姿 势数据所相关的图像数据进行存储。
[0032] 图像数据优选地在记录音频数据和姿势数据之前或之时被上传。
[0033] 在另一个方面,本发明提供被配置为在根据本发明的以上提及的方面的客户端装 置上执行的应用程序。
[0034] 如以各种方式所体现的,本发明具有本领域的技术人员将显而易见的许多优点。 有利地,从用户的角度来看,应用程序旨在提供会谈、电话和电子邮件的令人满意的替代。
[0035] 具体地,消息格式和应用程序界面试图涵盖电子邮件、电话和会谈的益处,同时基 本上避免它们的固有限制。另外,即时消息服务提供常常与视频会议相关联的益处,但无相 同的带宽负担并且不会必然地存在调度困难。本发明的优选实施例旨在使通信合理化,并 且允许更有效的合作。
[0036] -旦记录开始,用户就可开始讲话、然后叙述他们的消息,并且放大图像并在需要 时潦草地写出注释。此类姿势与伴随的音频同步地捕获,以用于由接收方同步回放或再现。 用户可将他们的消息发送给许多指定接收方。源图像可从不同的源提取,不论是从本机存 储还是网络存储。
[0037] 由于即时消息格式包括图像并且使用源图像(而不是视频格式)来回放,所需要的 带宽与视频文件的分配相比是很小的。通常所提议的用法显示:即时消息服务的带宽覆盖 比现有视频格式的能与之相比的服务轻50倍。此外,一旦媒体被分配在可应用装置上,以云 为中心的服务器模型就允许媒体在客户端装置处再利用,从而进一步减少带宽流量。
[0038] 本发明力图将电子邮件和即时消息的"方便时回答"、会话记录以及低带宽优点与 会谈和视频会议的优异的人际沟通性质结合起来。
[0039] 这通过将压缩音频、动画姿势数据(在客户端侧上呈现)以及各种数字媒体附件组 合成轻型封包(即,Blrt文件格式)而成为可能。
[0040] 当在客户端装置上回放时,这个封包有效地是用户对具有记录的音频评注的所附 媒体的标记的视频样呈现。
[0041 ] Blrt封包作为三个关键组成部分来传达:音频、姿势数据和所附媒体。Blrt封包在 任何时刻都不转码成视频文件,这允许格式保持具有显著更小的文件大小,文件大小是三 个关键组成部分的总文件大小。
[0042]附带地讲,这个特征在允许有合理的带宽性能的同时,允许传输和标记高分辨率 所附媒体而具有零或极小的质量损失。
[0043]每次进行交流时并不完全地传输Blrt软件。相反,所附媒体文件(通常包括文件大 小的大部分)在会话中仅下载一次。
[0044]回复("Blrt回复")使用相同的媒体附件进行,并且因此在大多数情况下,只需要 上传音频数据和姿势数据以进行回复。例外情况是用户将新图像/页面添加到会话的情况, 在这种情况下,系统将只将新的媒体元素递送到用户的装置,从而维持服务器/装置数据交 换的高效率水平。
[0045]另外,整个封包是在首次创建会话时渐进地上传的;媒体附件是在用户记录他们 的音频和姿势时上传的;然后音频和姿势数据是在用户选择接收方时记录的。一般而言,这 给用户带来几乎无可察觉的等待时间的无缝上传体验。
[0046] 可设想各种示例性应用。首先,可使用常规的一对一即时消息,以及以与常规的电 子邮件即时消息和("To"和"cc"接收方)的系统类似的方式进行的一对多即时消息。本文中 主要描述这个方面,并且优选地通过专用本机app、或移动或网页app实行这个方面,尽管可 通过多种装备对即时消息平台进行访问。
[0047] 然而,还可在其它方面提供即时消息服务。作为示例,可提供公共账户以允许对消 息连同伴随的标签进行公共广播馈送-诸如通过方式与Twitter、Instagram或其它社交媒 体服务类似的可浏览域和URL(例如,blrt.com/用户名/)。当然,用户可以是个体(不论是普 通公民还是名人),或实际上是公司或品牌。此外,用户可以是人物或机关(例如,澳洲电信 帮助台、澳大利亚总理等)。
[0048] 另外,还可基于内容体裁、事件或其它主题来提供所组织的"信道"(例如, !^!^?!^/(^!!^(^/,!^!^?!^/^!^(^![。!^?…等穴公共消息还可通过信道~或标签~点击~相关 性、点击数或其它形式的过滤来浏览。
[0049] 消息还可作为植入内容以多种方式分配或散布,以适应主导要求或品位。
[0050] 如上所述,本发明涉及源图像(在本文中也称为图像数据或媒体文件)而不是视频 的使用。归于本发明的实施例的优点取决于图像数据而不是视频数据本身的使用,主要与 可通过使用图像数据获得视频样体验来实现的带宽效率相关。图像数据在本文中相应地根 据其理解意义来使用,也就是说,作为与单个静态帧而不是表征视频数据的多个帧(不管如 何编码)有关的数据来使用。
[0051] 如还理解的,图像数据可被定义为栅格数据或矢量数据。典型的栅格图像数据格 式的示例是-参照它们常用的文件扩展名_开6、6正、?如、1'正?等。常用的矢量文件格式的示 例是SVG,尽管也可利用在更多专门应用中使用的各种专有格式。一些文件格式包括栅格图 像数据和矢量图像数据的组合-诸如Adobe可移植文档格式(PDF),其中文本可例如以矢量 形式呈现在栅格图像旁边。
[0052]如还将理解的,图像数据可作为视频数据的帧从视频数据提取,或可以是从构成 视频数据的帧得出的一些合成数据。
【附图说明】
[0053] 图1是根据本发明的实施例的与托管在平台上的会话相关的用例图。
[0054] 图2是与云服务和客户端应用程序相关的另一个用例图。
[0055]图3是描绘客户端应用程序的状态的状态机图。
[0056] 图4是Blrt封包的封包结构图。
[0057]图5是图4的封包结构的类图。
[0058]图6是Blrt文件格式的概念图。
[0059]图7是Blrt封包的会话项目类的概念图。
[0060]图8是描绘用户如何上传 Blrt的流程图。
[0061]图9是上传 Blrt时用户和服务器之间的事件的序列图。
[0062]图10是下载Blrt时用户和服务器之间的事件的序列图。
[0063]图11至图29是根据本发明的优选实施例的示例性用户界面,示出了用户与客户端 装置上的应用程序进行的交互的各方面。
【具体实施方式】 [0064] 用例图
[0065]图1和图2是用户如何在会话中交互、以及用户如何与云交互的用例图。
[0066]参照图1,用户可创建会话、打开会话或给会话加标签。创建会话包括:上传媒体、 记录Blrt以及将用户添加到会话。打开会话包括:记录Blrt、将用户添加到会话、评论会话、 刷新会话或给会话加标签。这些动作包括与云服务进行交互,如所描绘的。
[0067] 参照图2,用户通过上传媒体、查看Blrt、评论Blrt或将用户添加到Blrt来与Blrt app交互。记录Blrt包括:使用所上传的媒体。Blrt app与云服务交互,云服务托管媒体资 产、会话和用户并且由管理员管理。
[0068] 在云服务处,媒体资产接收所上传的媒体,并且当要查看Blrt时将媒体分配给 Blrt app。会话接收在Blrt app处记录的Blrt,并且将Blrt分配给Blrt app以便允许用户 查看Blrt和评论。在云服务处,当由用户在Blrt app处更新时,维持用户的记录。
[0069] 状态机
[0070]图3是描绘在使用Blrt app时的状态的状态机图。实心圆描绘起始点-起始点可以 是打开Blrt app的时间(作为标准),打开原型或URL的时间,打开来自Blrt app的推送通知 的时间,或打开外部媒体(诸如可存储在托管服务上,例如Dropbox)的时间。
[0071]如所描绘的,加粗的双向箭头指示标准导航路径(标准导航路径可容易通过返回 来反向)。
[0072] app没有明显的结束状态,因为用户可在任何状态下或期间技术性地退出app。 [0073]双圆状态是在过渡到其它状态之前保持并等待用户输入的状态(然而,可能存在 例外情况:它将在用户未提供输入的情况下独立地过渡,诸如如果接收到更新设置的"推送 通知",那么app决定进入维护模式)。
[0074]在所有情况下,不管app是如何打开的,如果用户未登录,那么状态转到登录屏幕。 否则(如果已登录),用户转到相应的可用加载屏幕。
[0075]如果用户打开了应用程序(作为标准),或如果没有会话要打开,或原型或URL已打 开,那么呈现收件箱。
[0076]从收件箱状态,用户可往返会话状态,或往返我的Blrt状态,或往返创建会话状 态,或往返存档状态。另外,当在收件箱状态下时,app可往返配置文件屏幕状态,或往返共 享屏幕状态。当在配置文件屏幕状态和共享屏幕状态中的任一状态下时,app可在两者之间 调换。
[0077]当在会话状态下时,用户可往返我的Blrt状态,往返Blrt回复状态,或往返查看 Blrt状态。app可根据需要在Blrt回复状态和查看Blrt状态之间调换。
[0078]当在Blrt回复状态下时,app可往返配置文件屏幕状态,往返共享屏幕状态,往返 存档状态或往返创建会话状态。
[0079] Blrt封包结构
[0080]图4描绘Blrt的封包结构。Blrt回复以与Blrt相同的方式构造并且包括媒体资产、 音频文件、姿势数据的组合。媒体资产包括组成媒体文件。
[0081] 图5进一步详细描绘图4的封包结构。BlrtBase类具有以下特性和相关联类型:
[0082] · createdAt:DateTime
[0083] · updatedAt:Datetlme
[0084] · changedAt:DateType
[0085] · deleteAt:DateTime
[0086] BlrtBase 的子类是:
[0087] ?会话
[0088] ?会话项目
[0089] ?媒体资产
[0090] ?会话用户关系
[0091 ]会话包括以下特性和相关联类型:
[0092] · name:string
[0093] · thumbnail:MediaFiIe
[0094] · items[]:Conversation Items[]
[0095] · hasConversationStarted:bool
[0096] · creationType:int
[0097] · statusCode:int
[0098] · specialConversationSlug:string
[0099] 会话项目包括以下特性和相关联类型:
[0100] · argument:string
[0101 ] · type: int
[0102] · conversationlndex:int
[0103] · conversation:Conversation
[0104] · media:MediaAsset[]
[0105] 此外,会话项目包括以下方法:
[0106] · transIateArgument()
[0107] 媒体资产包括以下特性和相关联类型:
[0108] · name:string
[0109] · file:MediaFile
[0110] · format:int
[0111] 会话用户关系包括以下特性和相关联类型:
[0112] · user:User
[0113] · viewedlndexs:int[]
[0114] 会话项目还包括以下子类:
[0115] ?内容项目
[0116] · Blrt项目
[0117] ?请求项目
[0118] ?事件项目
[0119] 内容项目包括具有特性"string"的特性"comment",而Blrt项目包括以下特性和 相关联类型:
[0120] · audioLength:int
[0121] · audio:AudioFtle
[0122] · touch:Touch File
[0123] 事件项目具有子类添加用户事件项目,添加用户事件项目包括具有类型 ConversationUserRelation的特性 "addedRelation"。
[0124] 图6是Blrt文件格式的概念图,并且描绘以下组成部分及其特性:
[0125] . Blrt
[0126] ?对象 ID
[0127] ?会话索引
[0128] ?论证
[0129] ?媒体资产
[0130] ?对象 id
[0131] ?名称
[0132] ?格式
[0133] ?媒体文件
[0134] ?大小
[0135] ?名称
[0136] ?数据
[0137] .Blrt 音频
[0138] ?大小
[0139] ?名称
[0140] ?数据
[0141] ?页面索引列表
[0142] 〇总页数
[0143] ?页面索引
[0144] 〇页面
[0145] ?媒体对象id
[0146] ?媒体上的页面
[0147] 组成部分之间的关联如下。Blrt使用包括媒体文件的媒体资产。Blrt可包括Blrt 音频和姿势数据。Blrt还具有页面索引列表,页面索引列表包括将媒体资产编入索引的页 面索引。
[0148] 图7是会话项目的概念图。使用了与图6相同的组成部分,但添加了以下各项:
[0149] ?会话项目
[0150] ?对象 id
[0151] ?会话索引
[0152] ?论证
[0153] ?会话
[0154] ?对象 id
[0155] ?名称
[0156] ?缩略图
[0157] ?项目计数
[0158] ?会话用户关系
[0159] ?对象 id
[0160] ?用户
[0161]组成部分之间的关联如下。会话项目可包括Blrt音频和姿势数据。会话项目使用 各自包括媒体文件的媒体资产。会话项目包括可由会话用户关系使用的会话。
[0162] 图8是用户使用Blrt app所包括的步骤(以简化概览形式)的流程图。首先,用户选 择媒体文件,并且在预览屏幕上执行所选择的媒体文件的动作。关于是否添加另外的媒体 文件做出确定。用户可选择另一个媒体文件,在这种情况下,由app关于媒体包装程序的大 小是否达到极限做出确定。如果达到的话,则不添加媒体,否则添加媒体。
[0163] -旦选择了媒体文件,并且将不再添加另外的媒体文件,用户就点击"下一步",并 且打开app中的Blrt记录画布。
[0164] 实际的画布使用可根据需要和指示单独地指定。
[0165] -旦打开记录画布,就开始了媒体包装程序的内容的传输,直到上传完成为止。稍 后,一旦上传了触摸、媒体和音频数据,就在云上创建联系这三者的对象:Blrt消息。向用户 提供数据已上传的指示。
[0166] 如上所述,无论是否需要都使用记录画布,并且一旦完成,用户就按下保存按钮。 通常,在使用记录画布完结时,媒体上传完成或至少上传到一定程度。无论如何,触摸和音 频数据一旦记录就必须完成,并且用于构造与媒体文件相关联的Blrt消息格式。
[0167] 图9和图10是描绘用户、视图、控制器和服务器之间的交互的序列图,用于突出显 示上述静态部件的操作。
[0168] 参照图9,用户接通视图层以添加媒体,并且随后开始记录。视图层继而接通控制 器层以上传新媒体。所上传的媒体通过上传媒体文件来从控制器层传递到服务器。服务器 向控制器层返回所上传的媒体文件的媒体资产id。随后,用户指示视图层结束记录,并且视 图层继而力图向控制器层上传 Blrt数据。
[0169] 控制器层和服务器之间的一系列通信接踵而来。控制器层发起上传音频,并且服 务器返回音频Url。类似地,控制器层发起上传姿势,并且服务器返回姿势Url。
[0170] 控制器层然后向服务器请求创建Blrt对象,并且服务器答应请求并向控制器层返 回blrt id,blrt id被往回传递到视图层、然后传递到用户。
[0171] 值得注意的是,服务器并不需要在记录结束之前向控制器层返回。过程创建Blrt 对象将等待记录完成、之后才开始。此外,媒体文件、音频记录和姿势数据的上传异步地执 行,这有利于服务的执行。
[0172]参照图10,总体描述了使用Blrt app的步骤。
[0173]首先,用户向视图层请求打开Blrt app,并且视图层向控制器层请求启动查询引 擎。控制器层然后向服务器请求获得设置,并且服务器返回app设置。控制器层更新视图层 (更新显示)。控制器还向服务器请求获得收件箱数据,服务器及时地向控制器层返回用户 的收件箱数据。视图层再次被更新(再次更新显示)。
[0174] 当用户向视图层请求刷新收件箱时,视图层向控制器层请求运行刷新查询。之后 是相同的过程:向服务器请求获得收件箱数据,并且服务器返回收件箱数据,然后控制器层 向视图层返回更新显示。
[0175] 当用户向视图层请求打开会话时,视图层向控制器层请求运行会话查询。类似地, 控制器层向服务器请求获得会话数据,并且服务器及时地向控制器层返回会话数据。控制 器层力图更新视图层的显示。
[0176]随后,控制器还向服务器请求获得最新Blrt内容并获得会话媒体,并且服务器(分 另Ij)返回Blrt内容和媒体文件。
[0177] 当用户向视图层请求打开Blrt时,视图层向控制器层请求获得Blrt内容。控制器 层将这个请求传递给服务器,服务器返回Blrt内容。控制器稍后向视图层返回打开Blrt查 看器以向用户显示。
[0178] 选择媒体
[0179] 为了创建Blrt,用户选择收件箱上的新Blrt按钮或我的Blrt屏幕。他们必须首先 选择媒体的至少一 "页"。媒体可以是:
[0180] ?存储在装置上的图像
[0181] ?从装置照相机取得的图像
[0182] ?直接从用户的Dropbox账户下载的图像或PDF
[0183] ?预定义图像模板
[0184] ?来源于网站的图像
[0185] 媒体预览
[0186] 一旦选择媒体的一页,这页就作为预览被显示。可缩放并检查预览。这是媒体预览 屏幕。
[0187] 用户然后可添加媒体的另外的"页"。不同媒体类型可作为单个Blrt中的单独页面 一起使用。用户可添加与他们的用户约束所允许一样多的页面(由基于订阅等级的服务器 云代码限定)。默认情况下,用户可使用高达10个标准页。
[0188] 用户可轻击"回收站"图标以删除他们现阶段添加到Blrt的页面。一旦Blrt已保存 到云或装置,就不能再进行这种删除。
[0189] 导入的PDF将被导入以使用PDF的实际页面作为Blrt的页面。与最大Blrt页数相 反,存在针对最大TOF页数限定的单独的用户约束。
[0190] Blrt 标题
[0191] 当用户选择"下一步"以确认他们对作为页面添加到Blrt的媒体的挑选时,他们被 提示来给出Blrt标题。这是强制性的。
[0192] Blrt标题将是Blrt的内容的主要描述词,这很像电子邮件的主题行。
[0193] 画布-记录
[0194] 用户现在看见"画布"屏幕。画布屏幕具有两个主要状态-记录和回放。记录状态下 的画布屏幕将显示Blrt的第一页。
[0195] 此时,媒体附件(Blrt页)开始在后台上传到云。
[0196] 最初UI上存在以下交互式元素:
[0197] ?绘图工具栏(以下进一步描述的工具)
[0198] ?"后退"按钮-这将使用户返回到媒体预览屏幕
[0199] ?记录按钮-这将开始记录并且启用绘图工具栏
[0200] ?时间线-在记录之前不能与之交互,因为尚不存在要回放的内容
[0201] ?页面选择器-这将显示Blrt中的并且可在记录前后以及期间跳转的总页数。 [0202] 在轻击记录按钮后,Blrt的记录得以开始。现在:
[0203] ?记录按钮变成停止按钮
[0204] ?播放头开始移动并且时间向上计数
[0205] ?记录来自装置的麦克风的音频
[0206] ?绘图工具得以启用
[0207] 当记录继续时,用户可使用可用的绘图工具。用户所进行的每个动作在记录期间 被本地记录到轻型"触摸"数据文件中。这包括所绘制的线条和形状、指针移动、画布变换、 翻页以及撤消/重做。
[0208]可用的绘图工具如下:
[0209] ?铅笔工具-这将徒手在画布上绘制线条
[0210] ?形状工具-这可以是以下各项中的一项:
[0211] ?圆形工具-在画布上绘制圆形,其中宽度和高度通过拖动来限定
[0212] ?矩形工具-在画布上绘制矩形,其中宽度和高度通过拖动来限定
[0213] ?线条工具-在画布上绘制直线,其中起点和终点通过拖动来限定
[0214] ?单点工具-这将在用户的手指按压期间在画布上显示像圆圈的"激光指针"。当 用户提起他的手指时,指针将消失
[0215] ?变换工具-允许用户自由缩放和重新定位画布(在所选择的其它工具的情况下, 通过拖动画布或用两根手指捏缩画布,这仍然是可能的)
[0216] ?颜色选择器-飞出以显示颜色选择器。所选择的颜色将是利用铅笔、形状或指针 工具所绘制的任何东西的颜色
[0217] ?笔画粗细选择器-飞出以显示具有三个选项的笔画粗细选择器。所选择的粗细 将是利用铅笔或形状工具绘制的任何东西的笔画粗细。
[0218] ?撤消/重做-撤消先前的画图更改,或重做画图更改。这不包括翻页、指向或变 换。
[0219] 当允许用于Blrt的时间(取决于订阅等级的用户约束)剩余10秒时,大大的"10"在 屏幕上闪烁以指示时间即将耗尽。当剩余5秒时,大大的"5"将出现并且将倒计时,直到剩余 时间达到零为止。这时,记录将结束。
[0220]在媒体选择步骤中可选择web URL而不是媒体。app将取得具有那个URL的网站的 滚动屏幕截图,并且将滚动屏幕截图作为图像媒体导入。这种功能可扩展以拼凑网页的 HTML/CSS/img封包(很像互联网浏览器所使用的MHT文件),HTML/CSS/img封包在大小上将 与网站下载完全相同或接近。
[0221] 画布-回放(在记录之后)
[0222] 当记录停止时,UI现在处于回放(在记录之后)状态。UI现在包括以下交互式元素:
[0223] ?"清除"按钮(代替"后退"按钮)-这将擦除刚做出的记录并且将画布
[0224] ?屏幕改变到记录前状态(在用户在另外的弹出菜单中确认这个动作之后)。
[0225] ?记录按钮(代替停止按钮)-这将从当前停止位置继续记录。如果
[0226] ?记录已经达到最大允许时间的尽头,
[0227] 这个按钮将是不可见的。
[0228] ?播放按钮-这将从头开始回放记录。注意:
[0229] -般地,这将意味着你不能
[0230] ?再继续记录。
[0231] ?时间线的播放头在停止位置处。时间线变灰并且现阶段不可交互。
[0232] ?保存按钮-将开始保存/发送过程(以下详述)
[0233] 当轻击播放按钮时,所记录的Blrt将实时回放,其中音频和姿势与它们被记录时 一样精确地同步。播放按钮在回放期间改变成暂停按钮,暂停按钮将暂停音频和姿势的回 放并且显示记录在暂停时的冻结帧。在回放状态下,播放头还可被拖动以"擦过"所记录的 Blrt。按压播放将从播放头的位置继续回放。
[0234] 保存
[0235] 保存按钮在记录停止之后出现在UI上,并且还将在记录之后当画布处于回放状态 时出现。一旦按压保存按钮:
[0236] ?在云上创建Blrt对象
[0237] ?创建Blrt对象和媒体(已经在记录阶段期间上传)之间的关系
[0238] ?音频和姿势数据开始上传到云。
[0239] -旦轻击保存按钮,用户就立即看到发送屏幕。发送屏幕是位于画布屏幕顶部的 弹出菜单。
[0240]发送屏幕
[0241] 发送屏幕包括以下UI元素:
[0242] · "To"字段-这是用户可将初始的接收方添加到Blrt的地方。他们可按以下方式 中的一种来添加:
[0243] ?在To字段中手动打入电子邮件地址,之后键入逗号符号或返回确认。
[0244] ?开始将电子邮件地址或名字键入到To字段中。弹出菜单将在用户打入时出现以 从以下
[0245] ?概述的各种来源自动搜索匹配的联系人。
[0246] ?轻击"+"按钮,这将使联系人弹出菜单出现。这个弹出菜单可通过以下各项来过 滤:
[0247] 按照字母表次序的所有联系人
[0248] 最近-基于最近通过Blrt与用户联系的人而本地保存在装置上的联系人。这包 括在任何时刻与用户在相同Blrt会话中的所有用户或电子邮件地址。
[0249] 装置联系人(取决于装置而命名为iPad或iPhone)-本地保存在iOS装置上的嵌 入式联系人app中的所有联系人。必须给予Blrt app访问这些联系人的权限,用户在联系人 弹出菜单首次打开时被提示给予Blrt app此权限。
[0250] _Facebook_列出用户的Facebook"好友",如果用户已将他们的Facebook账户链 接到他们的Blrt账户的话。
[0251] 权限必须在用户首次登陆Facebook时授予以允许Blrt访问他们的好友列表。
[0252] _LinkedIn和其它社交媒体平台-app允许用户以类似于Facebook的方式链接他 们用于其它在线服务的账户。
[0253] · Blrt标题字段-这将预填有在媒体预览屏幕和画布屏幕之间的步骤中所指定的 Blrt标题。这使得用户有机会在将用户添加到Blrt会话之前编辑Blrt标题。
[0254] ?添加备注-这是任选字段。用户可在这个字段中键入"备注","备注"将作为事件 添加在Blrt会话中,并且将添加到发送至Blrt的接收方的通知电子邮件。
[0255] ?上传进度条-这向用户显示Blrt的媒体、音频和姿势组成部分的上传进度。当这 个进度条显示100%时,Blrt的三个关键组成部分则已经成功上传到云。
[0256] ?取消
[0257] ?发送
[0258] 如果媒体附件未在记录阶段期间结束上传,那么它们的上传作为这个步骤的一部 分在音频和姿势数据上传到云之前完成。
[0259] 在数据上传时,发送屏幕上的"取消"和"发送"按钮都被禁用。如果上传超时或失 败(由于任何原因,通常是由于失去互联网连接),那么用户有机会:
[0260] ?重试-app将试图上传尚未上传的剩余数据。
[0261] ?保存-所有文件本地缓存到装置。缓存的Blrt将记载在另一段中。
[0262] ?取消-将清除Blrt的所有组成部分-媒体、音频和姿势,并且使得用户返回到收 件箱屏蒂。
[0263] 一旦数据已100%上传,Blrt对象就成功地在云上得到创建并且完成。现在发送屏 幕上的"取消"和"发送"按钮可使用。
[0264] 如果用户在现阶段轻击取消,那么他们得以返回到用于新创建的Blrt会话的会话 屏幕(其中他们自己是会话中的仅有用户)。因为上传完成,Blrt对象成功地在云上得到创 建。
[0265] 如果用户轻击发送,那么app核实To字段中的接收方:
[0266] ?手动键入的电子邮件地址必须符合有效电子邮件地址的正则表达式。如果一个 或多个不符合,则用户被提示修复错误。
[0267] ?接收方的数量不得超过关于用户的账户类型的用户约束所允许的最大数量。如 果超过这个数量,则用户被提示移除接收方,直到接收方的数量落入可允许范围内为止。
[0268] 如果指定接收方的电子邮件地址(或Facebook ID)成功地验证,那么服务器将检 查指定电子邮件地址是否已经存在Blrt账户。
[0269] 如果电子邮件地址或Facebook ID匹配数据库中的注册Blrt账户,那么这个Blrt 会话和接收方的Blrt账户之间的关系得以创建,从而给予受试者访问这个Blrt会话和Blrt 对象的权限。一旦已成功地形成关系,就生成给接收方的电子邮件通知和推送通知。
[0270] 如果电子邮件地址或Facebook ID并未成功地匹配数据库中的注册Blrt账户,那 么仍创建用户对象。这个Blrt会话和接收方的用户对象之间的关系得以创建。这稍后可在 注册时发现,使得接收方将能够查看这个Blrt会话,即使他们在接收后注册加入也是如此。 如果已经针对这个电子邮件地址或Facebook ID创建了用户对象(诸如当给定的电子邮件 或Facebook ID在它们注册加入Blrt账户前已被添加到多个Blrt会话时),那么这个Blrt会 话和现有用户对象之间的关系得以创建。
[0271]在这种未注册接收方的情况下,生成使用特定模板的电子邮件通知。
[0272] 一旦已经形成Blrt会话和所有指定接收方之间的适当关系,就向用户显示确认。 用户然后可选择完成、转到用于新创建Blrt的会话屏幕。
[0273] BIrt 会话 [0274]会话屏幕
[0275]会话屏幕按创建日期/时间的时间顺序来显示以下与正被查看的指定Blrt会话相 关的元素:
[0278] 会话屏幕上的其它UI元素是:
[0279] ?"后退"按钮-使用户返回至收件箱或我的Blrt屏幕,这取决于用户来自哪里
[0280] · Blrt标题-显示正查看的Blrt会话的标题
[0281] ?刷新-迫使Blrt会话从与这个Blrt会话相关的服务器攫取任何新内容并且刷新 会话屏幕
[0282] ?"将人添加到Blrt"按钮。这将使发送屏幕作为弹出菜单出现。它将以在保存 Blrt之后在画布屏幕上弹出的发送屏幕相同的方式起作用,但Blrt标题无法改变。用户可 添加备注,备注可包括在电子邮件通知中并且作为单独事件出现在会话中。当新用户添加 到Blrt会话时,事件将在会话中显示。
[0283] ?"管理标签"按钮。这使与"管理标签"弹出菜单完全相同的弹出菜单出现在收件 箱屏幕上,这在存档和标签段中详述。
[0284] ?"按照人过滤"按钮。这将使"按照人过滤"弹出菜单出现,这显示会话中的用户 的名称和电子邮件地址的列表。这些分成已查看会话的注册用户、尚未查看会话的注册用 户以及未注册Blrt账户的其他用户。在这个弹出菜单上的用户上轻击将过滤会话屏幕中的 所有元素以仅显示由这个用户创建的元素。在过滤器中可选择多个用户。可利用弹出菜单 中的"清除"按钮清除过滤器。
[0285] · "Blrt回复"按钮-使用户转到画布记录屏幕以创建Blrt回复。
[0286] ?评论框-当被轻击时,飞出键盘以供用户键入评论。
[0287] 评论
[0288] 当轻击位于会话屏幕底部的评论框时,装置的本机屏幕上键盘将向上飞出,从而 允许用户键入文本评论。
[0289] 在已键入评论文本后,用户可通过轻击发送按钮将评论文本添加到会话。这将立 即将评论本地保存在装置上并且将其作为新元素显示在会话的底部处。它还将立即开始上 传到云。
[0290]当评论上传到云时,在元素旁边显示"上传"图标。如果用户离开会话屏幕,这将继 续在后台上传。一旦评论已成功上传到云,它就将是会话中的其他用户可见的。它将向会话 中的所有用户递送推送通知,以及每小时最多生成一次的聚合电子邮件通知。
[0291] 如果评论出于任何原因而上传失败,那么将在评论元素旁边显示"红色云"图标, 以便指示评论存储在本地但未存储在云上。可轻击这个图标以重试上传。
[0292] BIrt 回复
[0293] 通过在会话屏幕的右上方轻击Blrt回复按钮,用户可使用与会话中的原始Blrt相 同的媒体附件创建叫作Blrt回复的Blrt。当轻击Blrt回复按钮时,用户转到画布记录屏幕, 其中用于这个Blrt会话的媒体附件已预加载。这些媒体附件不需要在创建Blrt回复期间的 任何时刻再次上传到云。
[0294] 用于Blrt回复的画布记录屏幕与创建新Blrt时的画布记录屏幕完全相同并且以 相同方式工作,除了
[0295] 保存按钮。对照回复的保存过程是不同的。当轻击保存按钮时:
[0296] ?用户立即返回到会话屏幕
[0297] · Blrt回复元素立即作为新项目显示在会话中,它旁边有加载图标
[0298] ?音频和姿势数据开始上传到云
[0299] 用户未被约束在保存过程的任何阶段期间执行任何其它动作。
[0300] 当Blrt回复的音频和姿势数据已成功上传到云时,Blrt回复元素旁边的加载图标 消失。
[0301] 这指示Blrt回复在云中并且将是会话中的其他用户可见的。当Blrt回复已成功上 传时,就生成给会话中的所有其他用户的推送通知和电子邮件通知。
[0302] 如果Blrt回复出于任何原因而上传失败,那么将在Blrt回复元素旁边显示"红色 云"图标,以便指示Blrt回复存储在本地但未存储在云上。可轻击这个图标以重试上传。 [0303] Blrt收件箱屏幕 [0304]收件箱
[0305] Blrt收件箱屏幕显示当前用户有权限访问的所有Blrt会话,所有Blrt会话按照每 个会话最近更新的时间来排序。
[0306] "收件箱"屏幕(对照"我的Blrt"或"存档")仅显示包括来自当前用户之外的用户 的至少一个会话项目的会话。这个屏幕的UI包括以下项目:
[0307] ?存档按钮-使用户转到存档屏幕。
[0308] · Blrt徽标和"收件箱,,标头
[0309] ?"按照标签过滤"按钮-这将使"按照标签过滤"弹出菜单出现。用户可从出现在 这个屏幕上的任何会话所使用的
[0310] ?所有标签的列表中选择。选择标签将过滤收件箱屏幕以仅显示包括所选择标签 的会话。轻击
[0311] ?这个弹出菜单中的清除按钮将取消选择所有标签。如果收件箱当前按照标签来 过滤,那么"按照标签过滤"图标将显示为红色。
[0312] ?"按照人过滤"按钮-这将使"按照人过滤"弹出菜单出现。用户可从已添加到出 现在屏幕上的任何会话的所有用户的列表中选择。选择一个或多个用户将过滤收件箱屏幕 以仅显示所选择用户已添加到的会话。轻击这个弹出菜单中的清除按钮将取消选择所有用 户。如果收件箱当前按照人来过滤,那么"按照人过滤"图标将显示为红色。
[0313] ?"新Blrt"按钮-这将开始在"仓ij建Blrt"中概述的Blrt创建过程。
[0314]收件箱屏幕中列举的每个Blrt会话具有以下元素:
[0315] ?页面图标-显示Blrt中页面的计数
[0316] ?缩略图-Blrt的第一页的缩略图大小的图像(无标记)
[0317] · Blrt标题-显示为红色,如果会话中存在未读项目,则在左侧具有红色圆圈
[0318] ?文本-如果会话中存在未读项目,则显示"来自〈user〉的新建",否则显示"由〈创 建Blrt的用户〉开启"。
[0319] ?会话的最近更新的时间戳
[0320] ?处于以下状态之一下的云图标。在图标上轻击露出解释图标的含义的弹出菜 单。
[0321] ?具有虚线的灰色云-指示会话中存在上传到云的一个或多个项目,但尚未下载 到这个装置
[0322] ?具有勾号的灰色云-指示会话中的每个项都已上传到云并且也都已下载到这个 装置
[0323] ?具有感叹号的红色云-指示会话中存在已创建并保存在本地(缓存)但尚未上传 到云的一个或多个项目;或指示除了当前用户之外尚无人添加到会话
[0324] ?"管理标签"图标-轻击露出"管理标签"弹出菜单
[0325] ?"人"图标-轻击露出具有会话中的用户的逗号分隔列表的弹出菜单
[0326] ?项目计数-显示会话中项目的总计数(不包括事件)的对话框图标。如果存在任 何未读项目,那么在这个图标上方还显示具有未读项目数量的较小的红色圆圈。
[0327] 在收件箱屏幕上除了云以外的任何地方轻击Blrt会话,"管理标签"或"人"图标将 使用户转到用于这个Blrt的会话屏幕。
[0328]如果收件箱屏幕中不存在Blrt会话(诸如如果所有会话都已存档),那么替代地显 示提示用户创建Blrt的图形。
[0329]我的 Blrt
[0330]我的Blrt屏幕可从app的底部选项卡栏访问。我的Blrt具有与收件箱屏幕完全相 同的功能和外观,仅有的差异在于它所显示的会话。我的Blrt屏幕仅显示由当前用户创建 的会话。
[0331 ] 加标签
[0332] 存在加标签功能,以便将短的文本"标签"添加到Blrt会话,以用作收件箱屏幕中 的可定制过滤器。标签通过"管理标签"弹出菜单来添加和移除,"管理标签"弹出菜单可通 过收件箱中的会话列表中的会话上的"管理标签"图标来访问,或通过会话屏幕的标头中的 "管理标签"图标来访问。不管在哪个屏幕上访问"管理标签"弹出菜单,它都具有完全相同 的UI和功能。
[0333] "管理标签"弹出菜单列举附到Blrt会话的标签。标签作为Blrt对象上的阵列存储 在云上。
[0334] 新的标签可通过在"管理标签"弹出菜单的底部处轻击、然后在文本框中键入来添 加。用户然后可轻击"添加标签"按钮以将标签添加到列表。标签将立即上传到云上的标签 阵列,这是会话对象和用户对象之间的关系的一部分。如果失去互联网连接,那么对标签阵 列的改变将在装置下次重新获得互联网连接时上传到云。
[0335] 标签可通过在标签对象上轻击以在"管理标签"弹出菜单中取消选择该标签来从 Blrt会话中移除。用户有机会在他们关闭"管理标签"弹出菜单之前重新选择标签。当"管理 标签"弹出菜单关闭时,任何取消选择的标签都将被移除并且将不再出现在列表中。
[0336] 所选择或创建的任何标签将只对当前用户是可见的或生效的。它将不影响任何其 他用户查看Blrt会话或与Blrt会话交互的方式。
[0337] "管理标签"弹出菜单中存在两个特殊的标签存档"和"有旗帜"。对于每个Blrt 会话,这些标签都默认为是取消选择的并且将总是出现在"管理标签"弹出菜单中的标签列 表的顶部处。
[0338] 存档
[0339]尽管用户不能永久删除Blrt会话,但是如果用户想要整理他们的收件箱/我的 Blrt屏幕,那么他们可将会话移动到存档屏幕。Blrt是通过选择"管理标签"弹出菜单中可 见的特殊"存档"标签来进行存档。
[0340] 当用户对象和会话对象之间的关系中的标签阵列中包括"存档"标签时,收件箱/ 我的Blrt屏幕中并不显示这个Blrt会话。这些Blrt会话仅在"存档"屏幕中是可见的,"存 档"屏幕可通过收件箱/我的Blrt屏幕上的"存档"按钮来访问。
[0341] 不管是从收件箱屏幕还是从我的Blrt屏幕访问,存档屏幕都是相同的。标记有标 签"存档"的所有会话将得以示出。
[0342]会话可通过打开用于这个会话的"管理标签"弹出菜单并且取消选择"存档"标签 来移回到收件箱/我的Blrt屏幕。当"管理标签"弹出菜单关闭时,标签改变将生效。
[0343] 加旗帜
[0344] 可以是"有旗峽"的Blrt会话是在"管理标签"弹出菜单中选择的"有旗峽"标签。
[0345] 当Blrt会话是有旗帜的时,它将在收件箱/我的Blrt/存档屏幕上的所有无旗帜 Blrt上方的另一段中显现。这个段具有跨屏幕延伸的红色栏,如果正查看的屏幕上不存在 有旗帜会话,那么红色栏不可见。有旗帜会话还具有位于Blrt标题左侧的旗标图标以及更 亮的背景。
[0346] 用户配置文件、账户类型和订阅
[0347] 配置文件屏幕
[0348] 配置文件屏幕可通过app底部处的标签栏来访问,并且包括用户的配置文件、账户 明细和设置。
[0349] 这个屏幕上的Ul元素按顺序如下:
[0350] ?反馈和支援链接-打开支援中心弹出菜单,其中用户可搜索Blrt知识库并且向 Blrt团队提交支援请求或反馈。
[0351] ?用户配置文件段-显示用户的配置文件的所有字段,以及允许用户编辑以下任 一项的编辑按钮:
[0352] ?电子邮件-账户的主要电子邮件地址
[0353] ?显示名字-向其他用户显示用户的名字的方式 [0354] ?名字
[0355] ?姓氏
[0356] ?性别
[0357] ?组织
[0358] ?行业
[0359] ?密码
[0360] · Facebook段
[0361] ?如果用户具有连接到他们的Blrt账户的Facebook账户,那么这个段将显示 Facebook用户的名字和"断开连接"按钮。
[0362] ?如果用户不具有连接的Facebook账户,那么这个段将显示"用Facebook登录"按 钮
[0363] · Blrt新建-提取数据库中指定的URL下的JSON文件以呈现新闻项目,新闻项目各 自具有标题、缩略图、描述和任选的链接。Blrt新建在配置文件屏幕每次打开时得到刷新。
[0364] ?账户段-在下一段"账户类型"中详述
[0365] ?设置段
[0366] ?通知设置-滑动到新屏幕,其中用户可在他们是否想要接收用于以下各项的通 知之间进行切换:
[0367] 新 Blrt
[0368] _Blrt 请求
[0369] _Blrt 回复
[0370] 新评论(每小时最多仅发送一次的电子邮件摘要)
[0371] ?装置设置
[0372] ?再次示出帮助覆盖图-切换这个将启动"帮助覆盖图"以再一次为用户示出
[0373] ?版本-显示app版本号
[0374] ?退出-使用户退出app并且使他们返回到登录屏幕。
[0375] 用户类型
[0376]所有Blrt用户账户都具有账户类型,账户类型确定用户的权限以及Blrt app的各 种特征的最大值。受Blrt账户类型影响的特征是:
[0377] ?最大Blrt持续时间-由用户做出的单个Blrt或Blrt回复的最大时间长度
[0378] ?会话中的最大用户数-可添加到会话的用户的最大数量(给定会话将受会话的 创建者的账户最大值约束)
[0379] ?最大媒体大小-可由用户上传的单"页"媒体(或整个PDF)的以MB为单位的最大 文件大小。
[0380] ?最大图像分辨率-所上传图像在其由app调整大小之前可具有的以像素为单位 的最大分辨率
[0381] ?最大图像数-所创建Blrt的图像媒体"页"的最大数量(这不包括PDF)
[0382] ?最大PDF页数-所上传 PDF可包括的最大页数
[0383] 虽然用户的账户类型不具有特定权限,但是他们仍可查看具有权限的用户所创建 的Blrt或会话,或在创建会话时具有权限。例如,如果用户的账户类型仅允许他们做出一分 钟长的Blrt,那么他们仍可接收并查看由具有允许持续三分钟长的账户类型的用户发送的 Blrt0
[0384] 账户类型和约束在数据库中有所限定,并且因此不是硬编码到app中的。现有账户 类型和约束可由Blrt管理员编辑,并且新的用户账户类型可由Blrt管理员创建。存在所有 新账户将自动使用的默认账户类型(在启动时,"Blrt免费版")。账户可由Blrt管理员单独 地手动升级成其它账户类型,或通过免费试用或订阅(在下一段中详述)来升级。
[0385] 示例性账户类型和特征约束

[0388] 订阅和免费试用
[0389] 所有新用户的默认账户类型是"免费"账户,并且不会过期。如果用户发现免费账 户类型中的权限太具约束性,那么他们受到鼓励以将他们的账户升级成"Blrt进阶版"。用 户升级他们的账户的标准途径是通过配置文件屏幕。
[0390]免费试用
[0391] 配置文件屏幕上的账户段显示用户的当前账户类型、订阅截止日期(如果可用)以 及特征约束。如果用户是"免费"账户类型,那么存在用于开始Blrt进阶版的免费试用的按 钮。当用户选择免费试用选项时,并未进行购买或订阅。用户立即升级到具有与Blrt进阶版 相同的用户约束的另一个账户类型"Blrt进阶试用版"。数据库得以更新以改变用户对象的 账户类型,并且"截止日期"字段被设定成自此开始的30天。
[0392] 当用户接近免费试用的截止日期时,将给予他们时限通知(以app对话、推送通知 和电子邮件通知的形式),提醒他们付款订阅,以便保持Blrt进阶版所提供的另外的权限。
[0393] 如果用户账户过去已经用过Blrt进阶版的免费试用版,那么不管他们之前是否还 付款订阅,他们都将不能再获得免费试用版。
[0394] 进阶版订阅
[0395] 用户可通过配置文件屏幕在任何时间付款以开始他们对Blrt进阶版的付款订阅。 轻击"激活订阅"或"获得进阶版"按钮(取决于他们当前是否在免费试用而复制)将调用app 内购买对话。用户然后可从由Blrt管理员限定的app内购买对象的长度中挑选他们的订阅 长度(在启动时,将只存在购买一年订阅的选项)。虽然app内购买称为订阅,但是它被实现 为通过用户的iTunes账户(针对iOS)进行的非续订一次性购买。
[0396] 一旦确认付款,关于数据库上的用户对象的用户的账户类型和截止日期得到相应 改变。如果用户的免费试用版仍有时间剩余,那么这些天数被添加到订阅长度。
[0397] 账户到期
[0398] 数据库上存在关于用户对象的截止日期字段连同用户的当前账户类型。这限定用 户的当前账户类型何时将"到期"。当用户的账户类型到期时,他们立即降级到默认账户类 型(Blrt免费版)。
[0399] 账户截止日期可在到期时或在到期之前的指定天数触发电子邮件和推送通知以 及app内对话。
[0400] 进阶版续订
[0401] 当进阶版订阅在截止日期之前剩余少于30天时,用户以各种时间间隔被提示续订 订阅。由于app内购买实现方式是非续订产品,用户必须再次接受付款。一旦确认付款,所购 买的订阅期就添加到用户的截止日期字段。
[0402]维护模式
[0403] Blrt管理员通过云代码能够基于准则为app的所有或选定用户启用"维护模式"。 这对于服务器维护、app的不兼容旧版本或要求暂时(或永久)禁止用户访问的任何无法预 料的情形可能有用。
[0404] 维护模式存在可启用的多种模式:
[0405] 部分封锁
[0406]部分封锁维护模式允许用户浏览和查看已经下载的回复、会话和评论, 然而他们不能创建内容或做要求更新服务器或数据库或执行云代码的任何事情。给予用户 警报消息以指示他们暂时不能创建内容(Blrt、Blrt回复、会话和评论)。一旦部分封锁解 除,就给予用户另一个警报。
[0407]部分封锁可适用于特定的用户、用户群组或所有用户。
[0408]完全封锁(维护)
[0409]完全封锁维护模式完全禁用app的功能,并且利用具有以云代码形式限定的维护 消息的一个屏幕替换它。当启用这个模式时,用户完全不能使用app的任何功能。当禁用该 模式时,推送通知被发送给所有禁用装置以询问禁用装置来刷新并且恢复app的功能。 [0410]完全封锁(维护)可适用于特定的用户、用户群组或所有用户。
[0411]完全封锁(无效版本)
[0412]如果Blrt管理员确定app的旧版本与当前数据库不兼容,那么他们可在数据库上 设置用于可允许的app版本的阈值的字段。如果低于阈值的任何版本的app试图向服务器做 出请求,那么完全封锁维护模式被敦促用户更新app的消息占用。
[0413] 完全封锁(无效版本)受可允许的app版本阈值控制并且不能针对特定的用户或用 户群组手动地启用。
[0414] Blrt云和本地缓存
[0415] 无法上传后缓存Blrt
[0416]在记录新的Blrt并且轻击"保存"后,用户看见媒体、音频和姿势数据的上传进度。 如果这在完全(100%)成功上传之前的任何时刻由于失去连接或其它原因而失败的话,那 么用户可选择将Blrt本地保存在装置上(缓存的Blrt)。
[0417]媒体、音频和姿势数据本地保存到装置,并且用户看见标准Blrt会话屏幕。贴近原 始Blrt元素显示"红色云"图标,以表示原始Blrt元素尚未上传到云。在云中没有初始Blrt 对象的情况下,整个会话实际上不在云中,因此用户被阻止将其他用户添加到会话,直到 Blrt已上传为止。
[0418] Facebook和其它服务集成
[0419] Blrt利用Facebook API来促进以下连接:
[0420] 用Facebook 登录
[0421] 用户可利用app的登录屏幕上的"用Facebook登录"按钮来创建账户并登录。在首 次登录时,app将验证Facebook并且询问用户以获得以下权限:
[0422] ?基本默认权限(包括用户的姓名、性别、地点)
[0423] ?电子邮件地址
[0424] ?好友列表
[0425] 如果用户不授予这些权限,那么他们不能创建Blrt账户并且将不能通过Facebook 登录。
[0426] 如果授予,那么使用Facebook账户的电子邮件地址作为用户名来创建Blrt账户, Blrt账户与用户的Facebook ID有关系。
[0427] 将来,利用这个Facebook ID登录将自动登录正确的Blrt账户。
[0428] 用户可在任何时间通过配置文件屏幕手动地使Facebook账户与给定Blrt账户连 接或断开连接。断开他们的Facebook账户连接将意味着他们不能再通过Facebook登录,不 能利用app内的Facebook联系人,并且因此在断开连接时,必须使用他们的电子邮件地址和 所设置的密码来登录。
[0429] Facebook 联系人
[0430]由于在Facebook连接期间授予对用户的Facebook好友列表的访问权,Blrt能够交 叉引用这些Facebook ID与跟Blrt用户数据库中的其他用户享有关系的ID。换句话说,Blrt app可显示同样具有Blrt账户的用户Facebook好友的列表。
[0431] 这意味着Facebook可用作将用户添加到会话的方法。在发送屏幕上,当用户限定 接收方时,将列出同样具有Blrt账户的用户Facebook好友的列表,并且如果选择了 Facebook用户,那么Blrt将自动地将对应Blrt用户账户添加到会话。这些用户将接收到他 们的装置的推送通知以及到他们的主要电子邮件地址的电子邮件通知。
[0432] 将来,Blrt app还可能能够利用Facebook API来向尚未具有Blrt账户的Facebook 用户发送app产生的消息。在这种情况下,接收方选择列表中将显示用户的所有Facebook好 友,而不仅仅是现已具有Blrt账户的好友。
[0433] 其它服务
[0434] 许多第三方服务和社交网络具有类似于Facebook的用于验证登录并且授予app访 问用户数据的权限的API。用于登录和发送到联系人的可能的集成的示例是Linkedin、 Google+和Twitter。联系人列表集成将与Facebook类似地实现,其中用户能够连接多个服 务并且按照每个服务过滤他们的联系人列表。
[0435] Blrt API
[0436] Blrt app和Blrt云都将具有其自己的API,用于与其它软件的连接和来自其它软 件的连接,以便创建BIrt、更新会话、上传媒体等。以下是可利用BIrt API来扩展功能的两 个可能的示例。
[0437] 自定义Blrt电子邮件地址
[0438] 每个Blrt用户将被授予自动生成的、唯一的电子邮件地址,诸如姓名_33333@ blrt.co。用户之外的任何人将不知道或不能够确定此电子邮件地址(除非用户有意地与其 他人共享该电子邮件地址)。
[0439] 用户将能够向唯一的电子邮件地址发送电子邮件以容易地创建Blrt。
[0440] ?在电子邮件中没有主题或内容的情况下将媒体文件作为附件来发送,将允许用 户在他们下次启动Blrt app时使用这些附件来创建Blrt
[0441] ?在主题行中具有另一个用户的电子邮件地址的情况下将媒体文件作为附件来 发送,将自动创建对指定电子邮件地址的Blrt请求
[0442] ?将内容添加到电子邮件自身,将生成添加到Blrt请求的备注
[0443]与项目管理软件的连接
[0444]流行的项目管理/问题跟踪软件、诸如JIRA允许第三方发布插件来扩展它们的功 能并且启用与其它服务的连接。可针对JIRA创建允许用户直接由附到JIRA问题的媒体创建 Blrt的插件,或将现有Blrt附到/链接到JIRA问题以便于将来引用。
[0445] 示例性用户界面
[0446] 图11至图29包括示出由苹果公司生产的在iPad上执行的Blrt应用程序的示例性 用户界面(和使用)的一系列屏幕截图。app可根据需要提供用于其它硬件装置和操作系统 平台。
[0447] 图像示例
[0448]图11描绘用户查看"我的尤其是他们的收件箱时的app的屏幕截图。随后的 图12至18描绘与使用图像构建新的Blrt相关联的一些屏幕截图。
[0449] 图12中的用户已点击"新Blrt"按钮以开始生成新Blrt消息的过程。如所描绘的, 用户被给予使用各种来源创建新Blrt的选项,这些来源包括:
[0450] ?照相机
[0451 ] ?照片库
[0452] · Dropbox
[0453] · Box
[0454] · SkyDrive
[0455] · Google Drive
[0456] ?网站
[0457] ?模板
[0458] 图13描绘屏幕截图,其中用户已选择图12中的"照片库",其结果是"照相机相册" 已显现在窗口中,供用户从本地存储在iPad上的图像中选择。
[0459] 图14描绘选择了可从照相机相册中获得的图像,并且该图像在"预览"中全屏示 出。用户被给予以与添加第一图像相同的方式添加大量另外的图像以构建Blrt的选项。 [0460]图15描绘屏幕截图,其中用户受到邀请来在窗口"给你的Blrt命名"中"添加 Blrt 名称"。这基本上是Blrt消息的主题标题。
[0461] 图16描绘在已命名预期Blrt之后的屏幕截图,其中对图像进行预览,并且在界面 的左下方提供(红色的)点以邀请用户开始记录Blrt消息。
[0462] 图17事实上描绘正在使用早先从照相机相册中选择的桥的图像进行这个过程(到 〇:14s)时的屏幕截图。音频被记录,并且界面提供工具盘,用户可根据需要与音频叙述联合 地使用该工具盘,以传达用户所希望的内容。工具盘可包括笔、形状、图标、光标以及根据需 要具有不同厚度、颜色、形状和配置的指针的选集。图像可根据需要使用对iPad的屏幕进行 的触摸姿势来进行平移、缩放和旋转。合适的工具和选项可通过触摸姿势来选择和使用。缺 乏触摸姿势输入的其它客户端装置可使用构建这个伴随姿势注解的其它输入装置的鼠标。
[0463] 图18描绘随后的记录的屏幕截图,其中用户在这种情况下已缩放图像以剪除一些 周边材料,从而集中在桥的一个细节。在这个Blrt中,用户已通过以下方式将注意力转到桥 的结构桅杆:首先进行缩放,其次圈出这个细节,并且此外再使用伴随的箭头。
[0464] 网站示例
[0465] 图19至21描绘屏幕截图,其中使用第三方网站构建Blrt消息。图19描绘屏幕截图, 其中呈现出URL地址栏(默认由google, com填充)以供用户输入或搜索用户期望在他们的 Blrt中突出的网站。
[0466] 图20描绘"披头士乐队"的维基百科条目,其中用户圈出并且注解维基百科条目的 标题以伴随Blrt的音频叙述。
[0467] 图21是正在构建的Blrt的屏幕截图,突出了显示悉尼海港的地图的网站。用户已 经使用笔工具将注意力转到悉尼歌剧院,以及到悉尼歌剧院北部的路。为清楚起见,用户已 在海港上潦草地写出"7K"以阐明地图中哪里是陆地以及哪里是水。伴随的音频向一组接收 方描述所建议的行走路线及随后的目的地。
[0468] 定址
[0469] 图22至27描绘与确定Blrt的地址的各方面相关联的各种屏幕截图。
[0470] 图22返回到早先创建的Blrt(参照图11至18),并且在记录完结时呈现标题为"将 人添加到Blrt"的窗口,从而邀请用户添加将要接收Blrt的用户。下面的图像已经在Blrt的 记录期间上传,并且当用户着手为新创建的Blrt选择接收方时,音频数据和姿势数据正在 上传的过程中。
[0471] 图23描绘屏幕截图,其中用户在界面元素上进行选择,该界面元素允许对用户的 "联系人"进行访问,并且呈现要从其中选择的联系人滚动列表,滚动列表可根据以下各项 来过滤:所有、最近、iPacUFacebook或Link。
[0472] 图24描绘屏幕截图,其中用户在这种情况下已选择预览从他的联系人列表中提名 的联系人("Bruce Banner")。图25描绘另外的屏幕截图,其中正在准备接收方列表。图26描 绘正发送的Blrt,如由标题为"发送至"的窗口以及伴随的"沙漏"形图标所指示。图27描绘 突出确认窗口的屏幕截图,确认窗口突出Blrt的接收方列表。
[0473] 会话
[0474]图28和29描绘示出Blrt app内的示例性会话的屏幕截图。图28描绘屏幕截图,该 屏幕截图突出右上方的由"Tracy McGrady"描绘的初始Blrt,之后是在画布下方的回复中 的来自"Jane Hester"的返回评论,然后是突出相同图像的随后的Blrt回复。"Brad"写出评 论,然后Tracey McGrady继而回复了他自己的Blrt回复以回答Jane和Brad。
[0475] 图29描绘与图28的屏幕截图类似的另外屏幕截图,其中用户已选择界面元素以查 看并任选地添加与图29的会话进程相关联的"标签"。这些"标签"显示在标题为"管理标签" 的窗口中。
[0476] 系统拓朴结构
[0477] 图30描绘允许用户传达数据同时减小与传输媒体相关联的带宽的一种拓扑结构。 拓扑结构100可包括逻辑服务器110、第一客户端计算装置120和第二客户端计算装置125。 拓扑结构100中所描绘的元件可通过网络130彼此可通信地联接。
[0478] 网络130可以是有线或无线网络,诸如互联网、内联网、LAN、WAN、蜂窝网络或另一 种类型的网络。应当理解,网络130可以是多种不同种类的有线或无线网络的组合。网络130 还可由电话线路、光纤电缆、网线、微波传输链路、蜂窝网络、通信卫星、海底电话电缆组成, 以上各项可由交换中心互连。
[0479] 第一客户端计算装置120可以是膝上型电脑、台式电脑、智能电话、平板电脑、个人 数据助理,或具有被配置为处理指令并且连接到网络130以与逻辑服务器110通信的硬件处 理器的任何其他类型的装置。第一客户端计算装置120可包括存储器装置、图形用户界面和 呈现装置。存储器装置可以是存储由逻辑服务器110生成或接收的数据、诸如对应于呈现的 数据封包的装置。存储器装置可包括但不限于硬盘驱动器、光盘驱动器和/或闪存驱动器。 在实施例中,存储器装置可被配置为存储从第二客户端计算装置125和/或逻辑服务器110 接收的信息。用户界面可以是允许用户通过网络130与第一客户端计算装置120、第二客户 端计算装置125或逻辑服务器110交互的装置。虽然示出了一个用户界面,但是术语"用户界 面"可包括但不限于是触摸屏、物理键盘、鼠标、照相机、麦克风和/或扬声器。呈现装置可以 是可接收被配置为在第一客户端计算装置120的用户界面上显示的信息的硬件处理器。例 如,呈现装置可从逻辑服务器110接收数据封包并且向第一客户端计算装置120的用户显示 数据封包的元素。利用用户界面,用户可执行动作以创建包括数据封包的呈现,其中数据封 包可包括媒体数据、姿势数据和/或音频数据。例如,用户可获得图片以创建媒体数据、在屏 幕上执行动作以记录姿势数据和/或讲话以创建音频数据。在实施例中,第一客户端计算装 置120可被配置为生成呈现,呈现可被配置为由第二客户端计算装置125接收并且在第二客 户端计算装置125处再现。
[0480] 第二客户端计算装置125可以是膝上型电脑、台式电脑、智能电话、平板电脑、个人 数据助理,或具有被配置为处理指令并且连接到网络130以与逻辑服务器110通信的硬件处 理器的任何其他类型的装置。第二客户端计算装置125可包括存储器装置、图形用户界面和 呈现装置。存储器装置可以是存储由逻辑服务器110生成或接收的数据、诸如数据封包的装 置。存储器装置可包括但不限于硬盘驱动器、光盘驱动器和/或闪存驱动器。在实施例中,存 储器装置可被配置为存储从第一客户端计算装置120和/或逻辑服务器110接收的信息。用 户界面可以是允许用户通过网络130与第一客户端计算装置120、第二客户端计算装置125 或逻辑服务器110交互的装置。虽然示出了一个用户界面,但是术语"用户界面"可包括但不 限于是触摸屏、物理键盘、鼠标、照相机、摄像机、麦克风和/或扬声器。呈现装置可以是接收 被配置为在第二客户端计算装置125的用户界面上显示的信息的硬件处理器。例如,呈现装 置可从逻辑服务器110接收数据封包并且向第二客户端计算装置125的用户显示数据封包 的元素。利用呈现装置,第二客户端计算装置125可被配置为接收数据封包以在第二客户端 计算装置125处本地重建呈现。
[0481] 逻辑服务器110可以是被配置为支持在第一客户端计算装置120和/或第二客户端 计算装置120上执行的移动应用程序、软件等的计算装置,诸如通用硬件平台服务器。逻辑 服务器110可包括驻留在特定位置处的物理计算装置,或可在云计算网络环境使用中。在本 说明书中,"云计算"可定义为用于实现对可配置计算资源(例如,网络、服务器、存储装置、 应用程序和服务)的共享池的无所不在的、方便的、按需的网络访问的模型,该共享池可通 过虚拟化快速提供并且在极小的管理精力或服务提供商交互下释放、然后相应地按比例缩 放。云模型可由各种特性(例如,按需自助服务、广泛网络访问、资源池化、快速弹性、可测量 服务等)、服务模型(例如,软件即服务("SaaS")、平台即服务("PaaS")、设施即服务 ("laaS")以及部署模型(例如,私有云、社区云、公共云、混合云等)组成。逻辑服务器110可 包括一个或多个计算机可用或计算机可读介质的任何组合。例如,逻辑服务器110可包括计 算机可读介质,计算机可读介质包括以下各项中的一项或多项:便携式计算机磁盘、硬盘、 随机存取存储器(RAM)装置、只读存储器(ROM)装置、可擦除可编程只读存储器(EPROM或闪 存)装置、便携式光盘只读存储器(CD-ROM)、光存储装置以及磁存储装置。
[0482] 在实施例中,逻辑服务器110可被配置为从第一客户端计算装置120接收数据,确 定什么数据被存储在第二客户端计算装置125处,并且将未本地存储在第二客户端计算装 置125处的数据传输到第二客户端计算装置125。逻辑服务器110可被配置为从第一客户端 计算装置120接收数据封包,其中数据封包可包括以各种格式存储的数据,诸如音频数据、 姿势数据和媒体数据。封包内数据的格式可具有不同的存储大小,这需要用于通过网络130 向不同网络元件传输的变化量的带宽。因此,逻辑服务器110可通过仅将需要更高带宽的数 据(例如,媒体数据)传输到第二客户端计算装置125-次来降低通过网络130传输数据封包 所需要的带宽的量。例如,逻辑服务器110可被配置为确定从第一客户端计算装置120接收 的媒体数据是否本地存储在第二客户端计算装置125处,并且如果媒体数据未本地存储在 第二客户端计算装置125处,则将媒体数据传输到第二客户端计算装置125。
[0483] 逻辑服务器110还可被配置为在从第一客户端计算装置120接到收音频数据和/或 姿势数据时将其传输到第二客户端计算装置125。因此,音频数据和/或姿势数据可异步传 输到第二客户端计算装置125。当第一客户端计算装置120处的用户创建音频数据和/或姿 势数据时,音频数据和/或姿势数据可由逻辑服务器110接收并转发到第二客户端计算装置 125〇
[0484] 图31描绘逻辑服务器110的一个实施例。逻辑服务器110可包括处理装置205、通信 装置210、存储器装置215、配置文件模块220、媒体模块225、姿势模块230、音频模块235以及 封包模块240。
[0485] 处理装置205可包括存储处理器可执行指令的存储器、例如只读存储器(ROM)和随 机存取存储器(RAM),以及执行处理器可执行指令的一个或多个处理器。在其中处理装置 205包括两个或更多个处理器的实施例中,处理器可按并行或分布式方式操作。处理装置 205可执行逻辑服务器110的操作系统或与礼品卡服务器110的其它元件相关联的软件。
[0486] 通信装置210可以是允许逻辑服务器110通过网络130与另一个装置通信的装置。 通信装置210可包括用于执行无线通信的一个或多个无线收发器和/或用于通过网络130执 行有线通信的一个或多个通信端口。通信装置210可被配置为通过多个不同的标准和/或协 议传达数据。
[0487] 存储器装置215可以是存储由逻辑服务器110生成或接收的数据的装置。存储器装 置215可包括但不限于硬盘驱动器、光盘驱动器和/或闪存驱动器。在实施例中,存储器装置 215可被配置为存储从第一客户端计算装置120和/或第二客户端计算装置125接收的信息。 存储在存储器装置215内的信息可由处理装置205、通信装置210和/或模块220、225、230、 235、240访问。
[0488] 配置文件模块220可以是被配置为允许客户端计算装置120、125的用户生成并创 建用户配置文件的硬件处理装置。用户的配置文件可包括存储在存储器装置215和/或其它 存储位置的信息。用户的配置文件可包括用户信息、封包信息和回复信息。用户信息可包括 例如识别用户的信息(例如,用户名或别名、号码、识别符和/或其它识别信息)、安全登录信 息(例如,登录代码或密码)、付款信息(例如,信用卡信息)等。封包信息可包括对应于本地 存储在与用户相关联的客户端计算装置处的数据的信息,其中封包信息可用于本地重建呈 现。例如,封包信息可包括与本地存储在与用户相关联的第一客户端计算装置120处的第一 条媒体相关联的标识、标签等。利用封包信息,逻辑服务器110可能能够确定什么媒体数据、 姿势数据和/或音频数据被本地存储在与用户相关联的客户端计算装置处。回复信息可包 括对应于第二客户端计算装置125给第一客户端计算装置120的回复的数据。回复信息可包 括对应于回复封包内的一条媒体数据、音频数据和/或姿势数据的标识。回复信息可包括对 应于数据从第一客户端计算装置120到第二客户端计算装置125的传输的相同媒体数据、音 频数据和/或姿势数据。利用配置文件信息和回复信息,封包模块240可确定什么数据未被 本地存储在接收客户端计算装置120、125处,并且传输未本地存储在接收客户端计算装置 120、125处的数据。
[0489] 媒体模块225可以是被配置为从第一客户端计算装置120和/或第二客户端计算装 置125接收媒体数据的硬件处理装置。所接收的媒体数据可对应于将要呈现给第一计算装 置120和/或第二计算装置125的用户的数据封包,所接收的媒体数据可能是数据封包内的 最大文件类型。媒体数据可按多种不同的类型格式化,诸如pdf、jpg、位图、图像文件、gif 等,也就是图像文件,不管它们在本质上主要是基于栅格的还是基于矢量的,并且不管他们 的语义内容。在实施例中,媒体数据可被用作数据封包的基本的数据文件,其中姿势数据可 覆盖在媒体数据上并且音频数据可与媒体文件向用户的呈现同步。媒体数据可由媒体模块 225在姿势模块230和/或音频模块235之前接收,并且可响应于用户开始在第一客户端计算 装置120上创建呈现来接收。因此,媒体模块225可在完成呈现之前接收媒体数据。
[0490] 姿势模块230可以是被配置为从第一客户端计算装置120和/或第二客户端计算装 置125接收姿势数据的硬件处理装置。姿势数据可响应于用户在图形用户界面上执行动作 或移动来接收,动作或移动可对应于媒体数据。姿势数据可按多种不同类型格式化并且与 媒体数据同步,其中姿势数据可在不同的时间覆盖在媒体数据上。例如,在一个实施例中, 姿势数据可包括在特定的时间范围覆盖在媒体数据上的由用户绘制的圆圈。姿势数据可对 应于由用户执行的单个动作和/或由用户执行的多个动作。姿势数据可以是小于媒体数据 文件的文件大小,并且可独立于媒体数据和/或音频数据被传输到逻辑服务器110、第一客 户端计算装置120和/或第二客户端计算装置125。
[0491] 音频模块235可以是被配置为从第一客户端计算装置120和/或第二客户端计算装 置125接收音频数据的硬件处理装置。音频数据可响应于用户表现以生成音频来接收,音频 可对应于媒体数据。音频数据可按多种不同类型格式化并且可与媒体数据和姿势数据同 步,其中音频数据的片段可对应于与姿势数据相关联的动作和/或媒体数据被呈现给用户 时的时间范围。例如,在一个实施例中,音频数据可以是应当在媒体数据在第一客户端计算 装置120或第二客户端计算装置125上被呈现的前六十秒持续呈现的记录。音频数据可对应 于媒体数据被呈现给用户的整个时间段和/或媒体数据被呈现给用户时的多个时间段。此 外,音频数据可以是小于媒体数据文件的文件大小,并且可独立于媒体数据和/或姿势数据 被传输到逻辑服务器110、第一客户端计算装置120和/或第二客户端计算装置125。
[0492] 封包模块240可以是被配置为从第一客户端计算装置120接收媒体数据、姿势数据 和/或音频数据并且将媒体数据、姿势数据和/或音频数据传输到第二客户端计算装置125 的硬件处理装置。封包模块240可响应于第一客户端装置120的用户创建呈现来从第一客户 端计算装置120接收媒体数据。响应于封包模块240接收媒体数据,封包模块240可被配置 为:基于与媒体数据相关联的元数据确定接收媒体数据的接收方用户;解析与接收方用户 相关联的存储器装置215内的条目;并且确定媒体数据是否本地存储在与接收方用户相关 联的第二客户端计算装置125处,如果媒体数据本地存储在第二客户端计算装置125处,那 么封包模块240可不将媒体数据传输到第二客户端计算装置125,并且如果媒体数据未本地 存储在第二客户端计算装置125处,那么封包模块240可将媒体数据传输到第二客户端装置 125。封包模块240然后可更新与接收方用户相关联的存储器装置215内的条目,以指示媒体 数据被本地存储在第二客户端计算装置125处。因此,可仅需要向第二客户端计算装置125 传输媒体数据一次,这可降低网络130上的带宽。此外,响应于从第一客户端计算装置120接 收将要传输到第二客户端计算装置215的媒体数据,封包模块240可更新与第一客户端计算 装置120的用户相关联的存储器装置215内的条目,以指示媒体数据被本地存储在第一客户 端计算装置120处。因此,可不需要封包模块240向第一客户端计算装置120传输媒体数据。
[0493] 封包模块240还可被配置为响应于从第一客户端计算装置120接收音频数据和/或 姿势数据,将音频数据和/或姿势数据传输到第二客户端计算装置125。在实施例中,封包模 块240可自动将音频数据和/或姿势数据传输到第二客户端计算装置125,其中音频数据和/ 或姿势数据用于在第二客户端计算装置125上再现在第一客户端计算装置120上创建的初 始呈现。因此,封包模块240可被配置为仅将在第一客户端计算装置120处创建的呈现的一 部分传输到第二客户端计算装置120,并且所传输的部分可以是基于最终用户生成的数据 的类型(例如,媒体数据、音频数据、姿势数据等)。
[0494] 图32示出用于将在第一客户端计算装置处创建的呈现传输到第二客户端计算装 置、同时降低传输呈现所需要的带宽的方法300。以下呈现的方法300的操作旨在是说明性 的。在一些实施例中,方法300可利用未描述的一个或多个另外的操作和/或不利用所讨论 的一个或多个操作来实现。另外,在图32中示出并且在以下描述方法300的操作的顺序并不 旨在是限制性的。
[0495] 在一些实施例中,方法300可在一个或多个处理装置(例如,数字处理器、模拟处理 器、被设计为处理信息的数字电路、被设计为处理信息的模拟电路、状态机和/或用于电子 地处理信息的其它机构)中实现。一个或多个处理装置可包括响应于电子地存储在电子存 储介质上的指令执行方法300的一些或所有操作的一个或多个装置。一个或多个处理装置 可包括一个或多个装置,该一个或多个装置通过硬件、固件和/或软件来配置,以专门设计 用于执行方法300的一个或多个操作。
[0496] 在操作310处,可从第一客户端计算装置接收与呈现相关联的媒体数据。媒体数据 可于在第一客户端计算装置处完成呈现之前被接收,并且可响应于开始创建呈现被接收。 媒体数据可包括指示应当接收呈现的操作第二客户端计算装置的接受者用户的元数据。媒 体数据可以是与需要从第一客户端计算装置传输到第二客户端计算装置的呈现相关联的 最大文件。根据一种或多种实现方式,操作310可由与媒体模块225相同或类似的媒体模块 执行。
[0497] 在操作320处,在完成呈现之前,可确定媒体未本地存储在第二客户端计算装置 处。确定可响应于以下内容做出:解析与操作第二客户端计算装置的接收方用户相关联的 存储器装置的条目,以确定第二客户端计算装置尚未接收包括媒体数据的呈现和/或第二 客户端计算装置尚未传输包括媒体数据的呈现。根据一种或多种实现方式,操作320可由与 封包模块235相同或类似的封包模块执行。
[0498] 在操作330处,响应于确定媒体数据未本地存储在第二客户端计算装置处,可向第 二客户端计算装置传输媒体数据,其中媒体数据可在呈现完成之前和/或在呈现的其它部 分(例如,音频数据和/或呈现数据)已由逻辑服务器接收之前被传输到第二客户端计算装 置。根据一种或多种实现方式,操作330可由与封包模块235相同或类似的封包模块执行。
[0499] 在操作340处,可从第一客户端计算装置接收呈现的其它部分、诸如音频数据和/ 或姿势数据。音频数据和/或姿势数据可独立地和/或在不同时间段接收,不同时间段可以 是在向第二客户端计算装置传输媒体数据之后。音频数据和/或姿势数据可在分段创建呈 现期间和/或在完成呈现之后接收。根据一种或多种实现方式,操作340可由与姿势模块230 和/或音频模块235相同或类似的姿势模块和/或音频模块执行。
[0500] 在操作350处,可响应于接收音频数据和/或姿势数据自动地向第二客户端计算装 置传输音频数据和/或姿势数据。根据一种或多种实现方式,操作350可由与封包模块235相 同或类似的封包模块执行。
[0501]在操作360处,可利用呈现的不同部分、诸如媒体数据、姿势数据和/或音频数据在 第二客户端计算装置处重建呈现。根据一种或多种实现方式,操作360可由与第二客户端计 算装置125相同或类似的第二客户端计算装置执行。
[0502]尽管出于说明的目的而基于当前最实用和优选实现方式来详细描述本技术,但应 当理解,这类细节仅出于说明的目的,兵且本技术并不限于所公开的实现方式,相反,本技 术旨在涵盖属于所附权利要求书的精神和范围内的修改和等效布置。例如,应当理解,本技 术设想,在可能的程度上,任何实现方式的一个或多个特征可与任何其它实现方式的一个 或多个特征组合。
[0503]贯穿本说明书对"一个实施例"、"实施例"、"一个示例"或"示例"的引用是指结合 实施例或示例来描述的具体特征、结构或特性包括在本发明的至少一个实施例中。因此,在 贯穿本说明书的不同位置出现的短语"在一个实施例中"、"在实施例中"、"一个示例"或"示 例"不一定都是指同一个实施例或示例。此外,具体特征、结构或特征可按任何合适的组合 和/或子组合而组合在一个或多个实施例或示例中。另外,应当理解,本文提供的附图是为 了向本领域的普通技术人员解释并且附图未必按比例绘制。
[0504] 根据本发明的实施例可体现为设备、方法或计算机程序产品。因此,这些实施例可 采用以下形式:完全硬件实施例、完全软件实施例(包括固件、常驻软件、微代码等)或结合 软件方面与硬件方面的实施例,所述实施例在本文中全部总体上可称为"模块"或"系统"。 此外,本发明可采取在任何有形传达介质中体现的计算机程序产品的形式,该任何有形传 达介质具有在介质中体现的计算机可用程序代码。
[0505] 可利用一个或多个计算机可用或计算机可读介质的任意组合。例如,计算机可读 介质可包括以下各项中的一项或多项:便携式计算机磁盘、硬盘、随机存取存储器(RAM)装 置、只读存储器(ROM)装置、可擦除可编程只读存储器(EPROM或闪存)装置、便携式光盘只读 存储器(CD-ROM)、光存储装置以及磁存储装置。用于实行本发明的操作的计算机程序代码 可按一种或多种编程语言的任何组合来书写。
【主权项】
1. 一种在服务器上托管即时消息服务以供用户通过与所述服务器通信的客户端装置 来使用的计算机实现的方法,所述客户端装置执行用于始发并且在用户之间共享包括图像 数据、音频数据和姿势数据的消息的应用程序,所述服务器包括适于执行以下步骤的硬件 部件: 在所述服务器处接收与来自始发客户端装置的消息相关的音频数据和姿势数据; 在所述服务器处存储所述音频数据和所述姿势数据结合所述音频数据和所述姿势数 据所相关的图像数据;以及 将所存储的音频数据和姿势数据从所述服务器分配给接收方客户端装置; 其中所接收的音频数据和姿势数据结合所述图像数据在所述始发客户端装置处被记 录,并且结合所述图像数据被分配给所述接收方客户端装置以用于由所述接收方客户端装 置再现。2. 根据权利要求1所述的方法,所述方法还包括:在所述服务器处接收来自始发客户端 装置的图像数据,并且将所述图像数据分配给接收方客户端装置。3. 根据权利要求1所述的方法,其中所述图像数据是在记录所述音频数据和所述姿势 数据之时或之前接收的。4. 根据权利要求1所述的方法,所述方法还包括:在所述服务器处存储所述图像数据结 合与所述图像数据相关的音频数据和姿势数据。5. 根据权利要求1所述的方法,所述方法还包括:在所述服务器处接收来自客户端装置 的图像数据。6. 根据权利要求1所述的方法,其中所述图像数据是在所述音频数据和所述姿势数据 之前接收的。7. 根据权利要求1所述的方法,所述方法用于始发并且在用户之间共享包括图像数据、 音频数据和姿势数据的消息。8. 根据权利要求1所述的方法,其中姿势数据包括对所述图像数据进行的平移、缩放和 旋转。9. 根据权利要求1所述的方法,其中姿势数据包括层叠在所述图像数据上的视觉注释。10. -种用于托管即时消息服务的服务器,所述即时消息服务供用户通过与所述服务 器通信的客户端装置来使用,所述客户端装置执行用于始发并且在用户之间共享包括图像 数据、音频数据和姿势数据的消息的应用程序,所述服务器包括适于执行根据权利要求1所 述的步骤的硬件部件。11. 一种使用客户端装置以用于通过在所述客户端装置上执行的应用程序与托管在服 务器上的即时消息服务交互的计算机实现的方法,所述应用程序用于始发并且在用户之间 共享包括图像数据、音频数据和姿势数据的消息,所述应用程序适于执行以下步骤: 使用所述客户端装置将图像数据上传到所述服务器; 使用所述客户端装置记录与图像数据相关的音频数据和姿势数据;以及 将来自所述客户端装置的所述音频数据和所述姿势数据上传到所述服务器以便结合 所述音频数据和所述姿势数据所相关的图像数据进行存储。12. 根据权利要求11所述的方法,其中所述图像数据是在记录所述音频数据和所述姿 势数据之前或之时上传的。13. -种客户端装置,所述客户端装置用于通过在所述客户端装置上执行的应用程序 与托管在服务器上的即时消息服务交互,所述应用程序用于始发并且在用户之间共享包括 图像数据、音频数据和姿势数据的消息,所述应用程序适于执行根据权利要求11所述的步 骤。14. 一种被配置为根据权利要求11在客户端装置上执行的应用程序。
【文档编号】G06Q50/00GK105849762SQ201480062072
【公开日】2016年8月10日
【申请日】2014年11月12日
【发明人】阿努拉·查克拉达
【申请人】布乐特私人有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1