CN108370380A - 双模客户端应用 - Google Patents

双模客户端应用 Download PDF

Info

Publication number
CN108370380A
CN108370380A CN201680073495.8A CN201680073495A CN108370380A CN 108370380 A CN108370380 A CN 108370380A CN 201680073495 A CN201680073495 A CN 201680073495A CN 108370380 A CN108370380 A CN 108370380A
Authority
CN
China
Prior art keywords
grouping
user
bulletin board
data object
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
CN201680073495.8A
Other languages
English (en)
Inventor
S·钱德拉
V·乔希
M·马杜卡尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN108370380A publication Critical patent/CN108370380A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/56Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/401Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
    • H04L65/4015Support for services or applications wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference where at least one of the additional parallel sessions is real time or time sensitive, e.g. white board sharing, collaboration or spawning of a subconference
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • H04M3/567Multimedia conference systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种针对所选择的用户分组的分组消息传送和分组公告板模态的单个双模客户端应用。在分组数据对象中发送和接收组消息传送和分组公告板数据内容。每一分组数据对象包括表示两个模态之一的模态指示符。单独的分组消息传送和分组公告板显示界面由针对所选择的用户分组的客户端应用提供。分组消息传送显示数据用于在分组消息传送显示界面上将与当前选择的分组关联的分组消息传送模态数据对象的至少一部分内容显示为消息序列,且分组公告板显示数据用于在由客户端应用生成的分组公告板显示界面上将与当前选择的分组关联的分组公告板模态数据对象的至少一部分内容显示为一系列发布项。

Description

双模客户端应用
背景技术
传统的通信系统允许诸如个人计算机或移动设备之类的设备的用户在诸如互联网之类的基于分组的通信网络上与其他用户通信。现在由诸如移动应用(“app”)之类的不同应用提供日益增加的多种通信模态,例如即时消息传送应用、内容共享应用、基于VoIP(IP语音)通话的应用等。由此,用户被呈现了关于其可以选择下载并安装在其移动设备上的通信应用的越来越多的选择。
发明内容
提供了该发明内容以用简化的形式引入在以下的具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
本主题的各种方面针对在一组用户之间实现通信。在用户中的一个用户可用的用户设备的处理器上执行客户端应用以实现以下步骤。经由网络在该用户设备与至少一个其他设备之间发送和接收分组数据对象。分组数据对象中的每个包括:
●表示多个用户分组中相关联的一个的用户分组的指示,
●针对该相关联的用户分组的内容,以及
●表示分组传送模态和分组公告板模态之一的模态的指示。
客户端应用基于对用户分组的指示和对模态的指示来接收多个用户分组中的一个的当前选择、针对当前所选择的分组在用户设备的存储器中生成:
●分组消息传送显示数据,其用于作为分组消息传送显示界面上的消息的序列来显示与当前所选择的分组相关联的分组消息传送模态数据对象的内容的至少一部分,以及
●分组公告板显示数据,其用于作为分组公告板显示界面上的已发布项
目的集合来显示与当前所选择的分组相关联的分组公告板模态数据对象的内容的至少一部分。
客户端应用通过基于分组消息传送显示数据来控制显示器在分组消息传送显示界面上显示消息的序列,来在针对当前所选择的分组的分组消息传送模式中操作。响应于模式切换指令,客户端应用通过基于分组消息传送显示数据来控制显示器替代地在分组公告板显示界面上显示所发布的项目的集合,来针对当前选择的分组切换至分组公告板模式。
以该方式,单个应用经由该单个应用的分别的显示界面提供了针对同一(即,当前选择的)用户分组的分组消息传送和分组公告板模态两者。
附图说明
为了更好地理解本主题,并且示出如何施行本主题的实施例,仅作为示例参考以下附图,其中:
图1示出了通信系统的框图;
图2示出了用户设备的框图;
图2A示出了客户端应用的功能模块;
图3示出了双模服务器的框图;
图4A-4C示出了从客户端应用的分组消息传送模式切换至分组公告板模式的模式切换;
图5示出了计算机实现的数据结构,其是分组数据对象;
图6A和6B示出了在双模服务器和互操作性服务器之间的各种交互;
图7示出了由客户端应用显示的示例登录显示界面;
图8示出了由客户端应用显示的示例分组选择显示界面;
图9示出了示例性分组选择显示界面,以及由客户端应用显示的针对所选择的分组的分组页面界面;
图10和11示出了示例分组消息传送显示界面;
图12示出了示例分组消息传送界面和分组公告板界面,在所述分组消息传送界面已经被自动地更新时,响应于新的项目被发布在所述分组公告板界面上,在所述分组消息传送界面上显示新的分组公告板项目的通知;
图13示出了滚动动作如何可以应用于分组消息传送和由客户端应用显示的分组公告板显示界面;
图14示出了由客户端应用显示的配置文件生成显示界面的示例
图15A-15D示出了如何可以在与分组公告板界面上的项目相关的分组消息传送界面上生成系统通知的示例;
图16A和16B分别示出了分组消息传送界面和分组公告板界面,这两者都是基于对用户的搜索项的单个选择来过滤的。
具体实施方式
目前,存在多个通信移动应用(“app”),其中每个可以提供使得用户能够使用移动设备作为分组进行协调的某一通信模态。
例如,诸如WhatsappTM和FacebookTM消息传送器之类的专用分组消息传送(“聊天”)应用在多种平台上可用,并且允许一组用户在分组对话线程中彼此交换即时消息。也就是说,其仅提供单个通信模态,即消息传送:两个用户之间的一对一消息传送,或者三个或更多个用户之间的分组消息传送。
诸如WhatsappTM和FacebookTM消息传送器之类的专用分组消息传送应用允许用户发布诸如链接或文件之类的内容到分组对话。然而,该内容保持嵌入在发布至分组对话线程的其他消息中。因此,对用户而言困难的是,使用这样的应用分别导航消息传送和内容数据。随着越来越多的消息被发布至分组对话,对于用户而言跟踪已经被发布至分组的内容变得日益困难。即使用户能够找到一条期望的内容,可能仍然哪难以找到与该条内容上下文相关(即,有关)的消息或其他条内容。
作为另一示例,诸如SharePointTM、OneNoteTM和DropBoxTM之类的专用内容共享应用使得一组用户能够通过提供用户利用其能够上传使得其他用户自行选择的文件可获得的界面来彼此共享内容(例如,文件)。提供了URL形式的链接,其可以由经授权的用户使用来下载经共享的文件。
诸如SharePointTM、OneNoteTM和DropBoxTM之类的专用内容共享应用向一组用户提供了可以用于访问由一组特定的用户中的一个用户共享的内容的公共界面。这些应用仅提供了在用户之间共享内容的一种方式,但是不具有集成的消息传送功能。相反,其依赖于成员之间的带外通信来管理经共享的内容,例如通过用户经由电子邮件或使用其自行选择的分别的消息传送应用来对至经共享的内容的链接进行流通。
相比之下,本公开涉及在本文中被称为“HiveOut”应用的应用。HiveOut应用是具有可以在至少两个不同模式下操作的用户界面(UI)的双模客户端应用。当HiveOut UI在分组消息传送模式下操作时,其显示分组消息传送显示界面,通过该界面,分组中的用户可以向该分组中的其他用户发送消息,并且查看其从分组中的其他用户接收的以及向分组中的其他用户发送的消息。当切换至分组公告板模式时,HiveOut UI替代地以分组公告板显示界面的形式显示单独的但是紧密地耦合的内容共享显示界面,同一分组的用户可以利用其通过将项目发布至分组公告板并查看他们或分组中的其他用户已经发布至公告板的项目来共享重要的内容。即,HiveOut应用是具有集成的分组消息传送界面以及单独的、集成内容共享界面(分组公告板界面)的客户端应用,以这样的方式用户可以在同一应用内的给定分组的分组消息传送内容和分组公告板内容之间无缝地导航。即,HiveOut应用方便地针对分组消息传送和分组公告板提供了分别的界面——将消息传送从内容共享中分离出——同时仍然将两种模式集成到同一应用中。
无论何时更新或添加公告板项,在分组消息传送界面上都显示经更新的或新的公告板项目的通知。由此,针对给定用户分组的分组消息传送显示界面构成了该用户分组的所有分组活动组的完整历史。
分组消息传送界面上的通知是可选择的(例如,在设备的触摸屏上可轻敲的),并且当所选择的通知引起切换至分组公告板界面时,在该分组公告板界面上显示与该通知相对应的公告板项目。每当用户通过在分组消息传送界面上轻敲该项目的通知而触及该公告板时,则突出显示该分组公告板界面上对应的公告板项目,例如,通过将合适的视觉突出显示效果应用至分组公告板界面上的对应的分组公告板项目,从而将其与同时可见的分组公告板界面上的其他项目在视觉上进行区分。
用户可以在分组公告板项目(即,分组公告板内容)上协同。即,在分组公告板显示界面上发布的项目可以是该分组正一起协同的项目。这样的公告板项目的示例包括,例如:随着分组中的用户投票而不断地改变的票选结果;检查清单,其可以被更新以将检查清单中的检查清单元素标记为完成,或者向检查清单添加新的检查清单元素;分组中的用户可以联合编辑的文档等。由于协同对公告板项目的改变被视为是对公告板的更新。例如,协同文件编辑;投票结果中的选票;维护检查清单等全都被视为更新,这使得对应的通知在分组消息传送界面上被显示。
在所描述的实施例中,HiveOut应用是在诸如智能电话或平板计算机之类的移动设备上执行的移动应用(“app”)。
移动是在今天所有的工作和生活体验中的前面和中心的。为了完成专业和个人任务,分组工作是必要的。然而,现有的解决方案不适合使用移动设备来协同;对话是混乱的;信息被跨几个通道散布且进展难以跟踪或(有时)掌握,并且使用现有的移动分组通信软件难以在移动电话分组中保持有生产力和高效。换句话说,现有的移动应用不允许人们经由移动设备在分组中高效地工作。
在分组消息传送界面上呈现了一系列按时间排序的消息。在分组公告板界面上发布的项目也是按时间排序的。该应用使得用户能够在分组消息传送界面和分组公告板界面之间导航,同时保留与先前查看的消息或内容数据相关联的上下文。用户可以通过以下操作来发起从分组消息传送界面切换的模式切换指令:
●在预先确定的方向(左,在所描述的示例中)上执行单个滑动手势,或者
●通过轻敲在分组消息传送界面上显示的新的或经更新的分组公告板项目的通知。
用户可以发起另一模式切换指令以通过在相反的方向上执行单个滑动手势而从分组公告板界面导航回分组消息传送界面。
例如,当用户滚动通过分组消息传送界面上消息序列到特定时间,并且接着随后切换至分组公告板界面时,作为响应在分组公告板界面上自动地显示与大体上同一时间相对应的经发布的项目(并且反之亦然)。
类似地,当用户在多个界面中的一个上执行搜索时,搜索分组公告板内容和分组消息传送内容两者,以使得用户可以在界面之间切换并且看见与其一个搜索相关的两组搜索结果,由此跨公告板和消息传送界面保持同一上下文。
在第一实施例中,响应于滚动或搜索输入,同时更新两个界面中的每个界面的显示数据——不考虑当前显示哪个界面——以滚动通过该界面或将该界面限制于一组合适的搜索结果,这允许在两个界面之间完全无缝地切换。即,响应于对同一搜索输入的同一滚动输入而同时更新两组显示数据。
在第二实施例中,实现了类似的效果——即基于同一搜索输入的同一滚动输入来更新两组显示数据,但是当前没有被显示的界面的显示数据仅仅响应于切换至该界面的模式切换指令而被更新。
即,第一实施例和第二实施例关于更新显示数据的时间而有所不同——但是最终的结果是相同的。
图1示出了通信系统100,其中第一用户4a(用户A)与用户终端6a相关联,第二用户4b(用户B)与用户终端6b相关联,而第三用户4c(用户C)与用户终端6c相关联。用户终端6a、6b、6c是移动设备,例如电话(智能电话)或平板设备。
移动设备6a、6b、6c被连接至网络2,并且可以在通信网络2上彼此进行通信,从而使得用户4a、4b、4c能够在通信网络2上彼此通信。通信网络2可以是有能力在移动设备之间提供通信信道的任何合适的网络。例如,通信网络2可以是互联网或者诸如高数据速率移动网络之类的另一类型的网络,例如第3代(“3G”)移动网络、或另一类型的基于分组的网络。
移动设备6a、6b和6c各自分别执行上文所提及的被表示为7a、7b、7c的HiveOut应用的相应实例。HiveOut应用是由与通信系统100相关联的软件供应商提供的。HiveOut应用是在相应移动设备的本地处理器上执行的软件程序。HiveOut应用执行在相应移动设备上所需的处理,以便为了移动设备在上通信系统100上发送和接收数据。
如所记载的,HiveOut应用是组合的分组消息传送和分组公告板应用。其提供了共享和协同平台,用户可以由此经由公告板界面共享内容以及在共享的内容上协同——例如通过一起编辑文件;在民意调查中进行投票;维护检查清单等。即,分组消息传送和内容共享和协同(具体地,分组公告板)功能被集成在单个应用中,单个应用由此提供分组消息传送模态和分组公告板通信模态两者。
分组消息传送功能使得用户能够在共同的线程上彼此聊天,这通过每个用户响应于先前在分组之间进行的分组消息传送交换而从分组中的其他用户接收的消息而发起对新的消息的发送。此外,每当在公告板上被共享或者被更新时,在消息传送界面上显示可选择的系统通知(其可以被选择以将用户带到公告板界面上的经更新/添加的项目),其因此示出了该分组的完整活动历史。
该分组公告板功能使得用户能够经由分组公告板彼此共享更多实质的或重要的内容。该分组公告板是被该分组认为是重要的该分组的活动和共享内容的摘要——其使得感兴趣的项目和决策制定立即可用,并且还使能在分组中在用户之间进行协同,例如一起编辑文件;在民意调查中投票;维持检查清单等。分组公告板项目例如可以包括或标识:链接(例如,URI/URL);照片或其他图像;文档;电子表格;通用文件,例如Powepoint、PDF等。
在本示例中,用户4a、4b、4c形成了一组用户并且经由其HiveOut应用的相应实例7a、7b、7c彼此共享数据项目。用户可以在分组消息传送模式或分组公告板模式之一中操作其相应的HiveOut应用。经由这些模态中的一个共享的每个项目是分组数据对象。该分组数据对象是特定于HiveOut应用的计算机实现的数据结构,并且充当针对分组消息传送内容和分组公告板内容两者的封装器。每个分组数据对象包括对用户分组的指示(分组指示符)——允许针对这两个模态使用共同的数据结构——以及对模态的单独指示(模态指示符)。
在分组消息传送模态中,用户可以与分组中的其他用户共享分组消息传送模态数据对象(即其模态指示符表示分组消息传送模态的分组数据对象)。每割消息传送模态数据对象包括与传统的分组即时消息类似的分组消息传送内容。该内容在分组消息传送显示界面上被显示为消息的序列,其中,例如,每个消息被表示为图像,并且每个图像根据一些标准(例如,时间、类别、分组公告板内容——稍后更详细地讨论)而被排序,以使得消息形成一个序列。例如,其可以主要按时间来排序,而(在一些情况下)按某一其他标准或多个标准来辅助排序。
在分组公告板模态下,用户可以与分组中的其他用户共享分组公告板模态数据对象(即,其模态指示符表示分组公告板模态的分组数据对象)。在以下示例中,分组公告板模态数据对象包括更实质性的内容,例如:链接、照片、视频文件、音频文件、民意调查、邀请(例如,至事件)、检查清单、文档等。该内容在分组公告板显示界面上被显示为所发布的项目的集合。例如,每个项目可以由图像表示,并且在HiveOut应用自身内,每个图像可以向用户提供将相关联的内容存取(例如,下载)到其移动设备的一种方式,至少在一些情况下,以使得经由HiveOut应用自身的UI来显示经共享的内容。所发布的项目也被排序——在下面的示例中按时间。作为示例,图13将分组公告板显示界面示出为由在示例性“家庭作业”分组中的用户所添加的内容的垂直可滚动时间线。
对于这两个模态,每个分组数据对象包括分组指示符,例如对话标识符(ID)或用户A、B和C等的一组用户标识符、以及模态指示符,即对用于与分组中的用户共享数据对象的模态的指示。所述分组标识符和模态指示符使得每个用户的HiveOut应用访问并显示与所选择的用户的分组相关联的分组数据对象。每次用户(例如,用户A)与在所选择的分组中的用户共享新的公告板内容或编辑现有公告板内容时,HiveOut应用生成新的分组数据对象并且向分组中的其他用户(例如,用户B和C)发送所述分组数据对象。仅某些类型的分组公告板数据对象是可编辑的。
在移动设备上接收的引起共享的用户输入在本文中被称为“内容生成输入”,并且可以包括由诸如鼠标、键盘、遥控器等之类的输入设备接收的用户输入。可替代地或额外地,内容生成输入可以通过自然用户界面(NUI)来接收。NUI方法的示例包括那些利用触摸感应显示器、语音和话音识别、意图和目标理解、使用深度相机的运动手势检测(例如,立体的或飞行时间相机系统、红外相机系统、RGB相机系统及这些的组合)、使用加速度计/陀螺仪的运动姿势检测、脸部识别、3D显示器、头、眼睛和目光跟踪、沉浸式增强现实和虚拟现实系统等。
图1还示出了连接至通信网络2的后端系统20。后端系统20包括双模态服务器10和互操作性服务器14,在适当的时候将描述其功能。
双模态服务器10(“HiveOut服务器”)使得移动设备6a、6b、6c能够访问第一数据存储器12,其中,分组数据对象是由HiveOut服务器10存储的。这些分组数据对象包括经由其相应的HiveOut应用已经在用户A、B和C之间共享的任何分组消息传送内容和/或分组公告板内容。这是利用其在HiveOut应用的不同实例7a、7b、7c之间交换数据对象的机制。即,经由HiveOut服务器10在移动设备6a、6b、6c上运行的HiveOut实例7a、7b、7c之间交换数据对象:例如,当第一用户4a向公告板发送消息或向公告板发布项目时,其内容在分别指示分组消息传送或分组公告板模态的数据对象中被发送至双模态服务器10,并且其内容存储在第一数据存储器12中,以使得其变得经由其HiveOut实例7b、7c而对其他用户4b、4c可用。例如,HiveOut服务器10可以将所接收的数据对象经由网络2推送至其他HiveOut实例,或者推送允许其被下载的通知。数据对象被保留在第一数据存储器12中,以使得历史消息和公告板内容可以使用HiveOut应用在任何时间访问。
不同的应用19可以例如是诸如SharePoint或OneNote应用之类的专用内容共享应用,或经由其可以访问例如SharePoint或OneNote服务的网络浏览器。稍后针对图6A和6B对其进行描述。
图2示出了移动设备6(例如,6a、6b、6c)的框图。移动设备6包括处理器24,其上连接有存储器26、输入装置(未示出)、输出装置、以及诸如以太网、Wi-Fi或移动网络(例如,3G、LTE等)接口之类的网络接口28,其使得用户设备6能够连接至网络2。输出装置包括具有全部显示区域的显示器22。被示出为连接至处理器的各种组件中的任何一个可以集成在用户设备6中,或者非集成的且经由合适的外部接口(有线的,例如以太网、USB、火线等,或无线的,例如Wi-Fi、蓝牙、NFC等)连接至处理器24。在该示例中,输入装置以传统智能电话或平板的方式包括显示器22的触摸屏22a。
存储器26保存HiveOut应用7的副本,当在处理器24上执行时,其使得用户设备6实现HiveOut应用7的功能。处理器24被示出为执行操作系统(OS)8,其是诸如Windows Phone、Android、iOS、Windows 10(最近开发的跨平台OS)等之类的移动操作系统。HiveOut应用7运行在OS 8之上。
许多移动OS在显示器22上提供应用选择界面,安装在移动设备6上的每个应用在其上被表示为相应的图标,例如,在应用图标的阵列中。在该情况下,HiveOut应用7被表示为OS 8的应用选择界面上的单个图标,因为其是单个应用。
对于许多现代移动OS(例如,Windows、Android、iOS),OS的软件供应商提供了专用的应用分配机制,经常被称为针对该OS的“应用商店”。OS自身的一部分代码、或利用OS自身分配的应用代码向应用商店提供了接口。在OS8的应用商店内,HiveOut应用7作为单个应用被分配和管理,例如其具有当应用被更新时被更新的单个版本号,即仅能够在单个下载中作为单个包下载等。
OS 8包括调度器8a,其将处理器24的资源(即,时钟循环)分配至在OS 8上运行的任何应用看,包括HiveOut应用7。调度器8a在于OS 8上运行的不同应用之间进行区分。在OS8上运行的计算机程序的实例在本领域中被称为进程。在一些情况下,HiveOut应用可以作为与由调度器8a在OS上运行的任何其他进程区分开的单个进程来运行,例如,调度器8a可以将不同的进程ID和/或不同的应用ID分配至不同的进程。可替代地,HiveOut应用可以作为多个进程运行——然而,在该情况下,这些进程仍然被调度器8a识别为属于同一应用。例如,调度器8a可以向HiveOut应用7的每个进程分配同一应用ID。这些进程由调度器8a与其他应用的进程区分开,例如,通过调度器8a向其他进程分配不同的应用ID。
现代的OS调度器在于OS上运行的前台和后台应用之间进行区分。在由操作系统调度器进行的应用调度的上下文中,术语“前台”和“后台”是本领域公知的,例如,与应用线程和/或进程的调度相关。一些,但是不是全部,移动OS仅在任何一个时间仅允许单个前台应用。前台应用的UI一般将大体上占据显示器的整个显示区域的全部,但OS 8自身可以不时地显示通知、可选择的选项等。在该情况下,当HiveOut应用7是活动应用时,由调度器8a作为前台应用进程管理的进程或多个进程将是HiveOut应用7的进程或多个进程。一些移动OS可以允许其他应用在后台中与HiveOut应用7同时运行——但是其进程将由调度器8a作为后台进程来管理。
HiveOut UI
HiveOut应用保持分组对话结构化以及针对用户的上下文,同时其与内容无缝地工作。如上文所指示的,HiveOut中的每个分组具有两个主要的基准点(pivot)——针对该分组的分组消息传送界面和针对该分组的分组公告板界面。所述分组可以经由分组消息传送界面来在公共线程上彼此聊天。在HiveOut中紧密地耦合分组聊天和公告板以促进实现分组协同和通信。分组聊天与分组公告板的耦合是没有现有应用提供的新颖特征。
分组公告板界面使得感兴趣的项目和决策置顶立即可用。所述分组可以将来自分组消息传送界面的内容提升至分组公告板,或者直接对其发布。内容还可以基于其流行性或相关项性而被自动提升至分组公告板界面。
分组公告板界面在同一时间线上与分组消息传送界面一同存在。分组公告板界面接受宽泛的多种预先定义的数据对象类型——例如检查清单、投票、事件、文档、照片等。通过实体(例如,用户)和话题标签过滤器查询并发现内容是直观的。其从任何地方都可访问并且也可以被归档和/或导出。
公告板上的项目被表示为小工具(widget),例如动作和/或信息小工具。内容可以被标记为重要的;并且公告板可以被过滤以仅查看重要项目。子分组可以过滤公告板以查看由其发布的内容。
用户可以添加多个话题标签以指示其消息或公告板项目适配其中的主题。当添加话题标签时,用户可以迅速查看在对话中已经使用的话题标签的列表,并且优选地重新使用相同的话题标签,除非她想要发起新的主题或工作项目来进行讨论。分组对话可以关于标签以及也关于个体用户而被过滤。
图2A是示出了HiveOut应用7的某些软件模块40、60a、60b、60c、60d的功能框图。其每个表示在移动设备6的处理器24上通过执行HiveOut应用7来实现的HiveOut应用的功能的相应部分。特别地,示出了HiveOut应用7的渲染模块40、滚动模块60a、搜索模块60b、数据对象生成模块60c、以及数据对象接收模块60d。
包括个体数据对象50a、50b、50c在内的多个分组公告板数据对象51被示出存储在存储器26中。其每个可以已经从移动设备6被发送至HiveOut服务器10或者从HiveOut服务器10接收。其每个可以包含要在分组公告板界面上显示的分组公告板内容或者要在分组消息传送界面上显示的分组消息传送内容——通过其模态指示符表示的。
存储器26还保存:
●用于显示分组消息传送界面的分组消息传送显示数据42,并且:
○在所显示的分组消息传送界面上的多个数据对象51的任何分组消息传送数据对象的内容中的至少一些,以及
○表示新的或经更新的分组公告板内容的系统通知,其也被显示在分组消息传送界面上;以及
●用于显示分组公告板界面的分组公告板显示数据44,以及在所显示的分组消息传送界面上的多个数据对象的任何分组公告板数据对象的内中的至少一些。
分组消息传送显示数据42和分组公告板显示数据44中的每个具有充足的信息内容,以使得其可以用于分别显示分组消息传送界面和分组公告板界面。在一些实施例中,在存储器26中保留了两组显示数据42、44;即,这两个显示界面都通过显示数据42、44在存储器中保持完全定义,即使仅显示了其中一个。大多数时间,仅显示一个界面——两个界面可以显示的仅有的时间部分是在渲染过渡效果以表示模式切换期间时。
分组消息传送显示数据42包括针对分组消息传送界面的分组消息传送显示数据和/或针对分组公告板显示界面的一个或多个显示参数。分组公告板显示数据44包括针对分组公告板界面的分组公告板图像数据和/或针对分组公告板界面的一个或多个显示参数。
渲染模块40被配置为使用消息传送显示数据42将分组消息传送界面和分组消息传送内容显示为在其上按时间排序的消息序列,以及使用分组公告板显示数据44将分组公告板界面和分组公告板内容显示为在其上按时间排序的所发布的项目的集合。当在界面之间转换时,可以使用显示数据42、44——如下文关于图4a-4c所描述的。
HiveOut应用7经由OS 8与移动设备6的显示器22和触摸屏22a硬件进行交互。移动设备6的用户可以发起模式切换指令41以通过例如进行诸如水平滑动之类的单个滑动手势来在界面之间滑动,从而使用触摸屏22a例如从分组消息传送界面切换至分组公告板界面,这对他来说是方便的,因为其需要与设备6最少的交互。渲染模块40通过根据模式切换指令41在界面之间切换来对模式切换指令41进行响应。
用户可以使用触摸屏22a来输入诸如话题标签之类的搜索项60b。例如,通过使用在显示器22上所显示的键盘将搜索项输入到在分组消息传送界面或分组公告板界面上显示的搜索项字段中。搜索模块60b接收搜索项,并且被配置为使用其来针对匹配搜索项的任何数据对象来搜索多个数据对象51——应当注意的是,数据对象的两个模态都是使用搜索项61a的搜索,而无论搜索项被输入至哪个界面。因此,例如,还可以由搜索模块60b使用在分组消息传送模式下输入的搜索项来搜索分组公告板数据对象。搜索模块61b被配置为基于该搜索来更新分组消息传送显示数据42和分组公告板显示数据44,以使得分组消息传送显示数据42可以用于显示匹配该搜索项的分组消息,并且使得该分组公告板显示数据44可以用于显示匹配搜索项61a的所发布的项目。在第一实施例中,同时更新两组显示数据42和44;在第二实施例中,针对当前未显示的界面的显示数据仅响应于模式切换指令41而被更新——应当注意的是,在两个实施例中,单个搜索项61a用于更新这两组显示数据42、44(不同在于更新发生的时间)。
用户还可以使用触摸屏22a来发起诸如垂直滑动手势的滚动输入61a。滚动模块61a通过基于滚动输入和多个数据对象51更新消息传送显示数据42和公告板显示数据44,来对滚动输入进行响应。滚动输入定义了相对于按时间排序的消息序列的时序(当在分组消息传送模式下接收时)或者相对于按时间排序的所发布项目的集合的时序(当在分组公告板模式下接收时)——滚动模块60b被配置为更新消息显示数据42和分组公告板显示数据44,以使得前者可以用于显示与时序相对应的消息而后者可以用于显示与时序相对应的所发布的项目。即,无论在哪个模式下接收滚动输入,其可以由滚动模块60a使用以滚动通过两个界面。在第一实施例中,两组显示数据42、44基于滚动输入而被同时更新;在第二实施例中,针对当前未被显示的界面的显示数据仅响应于模式切换指令41而被更新。应当注意的是,在一些情况下,模式切换指令41也由HiveOut应用7自身自动地发起。
用户可以使用触摸屏22a通过分别在分组消息模式(当正在显示分组消息传送界面时)或分组公告板模式(当正在显示分组公告板界面时)下输入内容生成输入61c来生成消息传送或公告板内容。数据对象生成模块60c对内容生成输入进行响应,并且确定HiveOut应用的当前模式(分组消息传送或分组公告板)。基于内容生成输入61c,数据对象生成模块60c生成新的分组数据对象50N并设置其模态指示符以取决于当前的模式而表示分组消息传送模态或分组公告板模态。新的分组数据对象50N经由网络接口28被发送至HiveOut服务器10以用于传输至分组中的其他用户,并且副本也存储在本地存储器26中,以使得其可以取决于其模态而本地地被显示为所发送的消息或所发布的项目。数据对象生成模块60还可以更新分组消息传送显示数据42或分组公告板显示数据44,以使得其可以用于取决于其模态而将新的内容显示为新的消息或新的所发布的项目。
从HiveOut服务器10接收的任何数据对象50R是由数据对象接收模块60d处理的。接收模块60d将所接收的数据对象50R存储在存储器26中,读取其模态指示符,并且:如果其模态是分组消息传送,则更新消息传送显示数据42以将其内容显示为新的消息,而如果其模态是分组公告板,则更新分组公告板显示数据44以将其内容显示为新的所发布的项目42。在模态为分组公告板的情况下,接收模块60d还可以更新分组消息传送显示数据以在分组消息传送界面(124b,图12)上显示新的公告板项目的通知——且反之亦然。
图4A-4C示出了用于控制向HiveOut应用7的用户显示分组数据对象的方式的进程的三个不同阶段。用于分别渲染分组消息传送界面和分组公告板显示界面的消息显示数据42和公告板显示数据44被存储在移动设备6的存储器26中。例如,显示数据42、44可以包括根据其显示相关内容的一个或多个显示参数、图像数据,以使得可以将内容渲染成具有消息或所发布的项目等的外观。
HiveOut应用7的渲染模块40使用消息显示数据42和/或公告板显示数据44以控制移动设备6的显示器22显示分组消息传送界面(图4a)、分组公告板界面(图4)、或简略地,两者的组合,以渲染模式切换动画效果(图4B)。渲染模块40表示通过在处理器24上执行HiveOut应用所实现的功能的一部分。
换句话说,分组消息传送显示数据42和分组公告板显示数据44分别定义分组消息传送界面和分组公告板界面,这允许任何一个在显示器22上被显示。
图4A示出了当在分组消息传送模式下操作时的HiveOut UI。渲染模块40使用消息传送显示数据42来在显示器22上显示分组消息传送界面。例如,渲染模块40可以使用消息传送显示数据42在分组消息传送显示界面上将所发送的和/或所接收的消息显示为一系列的图像。例如,这在图10和11中示出。利用虚线轮廓示出了分组公告板显示界面以指示该界面(及其相关联的内容)当前没有在移动设备的显示器上显示,尽管如此,其由分组公告板显示数据44定义,以使得其可以以所示出的方式来显示。
图4B示出了通过执行模式切换指令(稍后讨论),在用户已经从分组消息传送模式导航离开到分组公告板模式之后不久的某一时刻的HiveOutUI。在这样的情况下,消息显示数据42和公告板显示数据44两者都是由渲染模块40使用,并且被处理以控制显示器渲染转换效果,由此分组消息传送界面被分组公告板界面动态地替换。如在图4A中,虚线指示当前没有在移动设备的显示器上显示的内容,因此可以看见在此刻正被显示的每个界面的一部分。
图4C示出了当其已经完全地转换到分组公告板模式时的HiveOut UI。公告板显示数据44由渲染模块40使用以控制显示器22显示分组公告板显示界面。利用虚线轮廓示出了消息传送显示界面以指示该界面(及其相关联的内容)当前没有在移动设备的显示器上显示。
图5示出了分组数据对象的示例结构。在图5中,每个分组数据对象具有模态指示符字段52,其中保存模态指示符53。模态指示符53指示由用户使用以与所选择的分组的其他成员共享分组数据对象的模式。即,在移动设备处在其下接收内容生成输入以共享该内容的模式。模态指示符53采用多个标记位中的一个的形式。例如,单个标记位可以用于在分组消息传送和分组公告板内容之间进行区分,其使用最小开销。
分组数据对象50还具有分组标识符字段54,在该字段中保存分组指示符55。分组指示符55用于标识能够接收分组数据对象的具体用户分组。单个用户可以属于多个不同的分组。例如,关于图1,用户A、B和C可以属于用户的第一分组并且与第一分组指示符相关联。包含用户的同一子集和/或不同集合的用户的另一分组可以利用不同的分组指示符而与第一用户分组区分开。分组指示符55使得与该分组数据对象相关联的公告板或消息传送内容被标识为与用户的具体分组相关联。
分组数据对象50还具有内容字段56,在该字段中保存公告板或消息传送内容57。消息传送内容包括由分组标识符所标识的分组中的用户中的一个所共享的分组消息传送内容。公告板内容可以包括但不限于用户民意调查,使用例如微软Office、或苹果的iWORK所创建的文档,诸如图像、视频和录音等之类的多媒体文件。在HiveOut应用的特定设备或版本上可以对其进行查看之前,公告板内容或消息传送内容可以采用需要转换的格式。
分组数据对象50还具有时间字段,在该字段中保存了表示与内容57相关联的时序的时间戳。例如,其生成或发送的时间、或在移动设备6上接收之后被添加的其接收时间,并且其还可以指示例如其已经被更新或修改的额外的时间。
分组数据对象50还具有与模态字段分离的类型字段,以用于保存表示内容类型57的类型的类型指示符73。例如,针对分组公告板模态的数据对象,该类型可以是检查清单类型、民意调查类型、(通用)文件类型、照片或相机类型、以及日历邀请类型。
民意调查类型项目的内容包括民意调查问题;至少两个选择,可选地受到选择的最大数量(例如,5)的限制;可选地,到期日;每个选择目前的投票计数;以及对尚未投票的分组中用户的指示。对于民意调查类型数据对象,当创建民意调查时,当某人投票时,或者某人改变其投票时,将通知添加在消息传送界面上。在用户设备6处离线地高速缓存民意调查类型对象。
照片/相机类型数据对象的内容包括一个或多个图像,例如照片,其允许同时添加要发布的多张照片。HiveOut应用提供了经由其查看图像的轻量级图像查看器界面。分组公告板上的所有照片可以经由图像查看器界面被顺序查看。当在分组公告板上发布照片时,在分组消息传送界面上显示通知。
日历类型数据对象的内容包括事件细节,例如指定事件日期,以及可选地事件时间和/或地点。事件被默认地视为全天事件。当在分组公告板界面上显示时,日期和时间被显示为对该事件的倒计时(例如,以天和/或小时等为单位)。所显示的日历邀请对象可选择为打开向其自动地提供事件细节的单独的日历应用。当将日历邀请发布至分组公告板界面时,在分组消息传送界面上提供通知,并且当其被更新时,例如改变事件时间或地点。在用户设备6处本地地高速缓存日历类型对象。
链接类型数据对象的内容包括到在其处保存内容的可寻址存储器位置的链接,例如经由Web服务器可访问的Web内容。Web内容的预览副本可以在用户设备6上本地地高速缓存,以使得其可以离线地被查看。当在分组公告板界面上显示时,页面预览、页面标题和链接自身在分组公告板界面上被显示。可以经由分别的浏览器应用来查看内容,其在选择所显示的链接时被打开并且向其自动地提供链接。当向公告板发布新的链接时,在消息传送界面上显示通知。
通用文件类型数据对象的内容包括文件,例如Word文档、PDF、Powerpoint文档等,或者到存储文件的可寻址存储位置(例如,经由HiveOut服务器或单独的内容服务器可访问)的链接。在可能的情况下,在分组公告板界面上显示文件的预览,其可以被选择以在OS8内所指定的默认处理应用中打开该文件。如果仅包括链接,则文件响应于用户选择该预览而被下载。当添加或修改文件时,在分组消息传送界面上显示通知。
检查清单类型数据对象的内容包括纯文本格式的元素列表(至少一个),并且表示每个元素是否是完整的元素的标记数据。当被显示时,元素被显示为列表。针对每个元素,显示选项以将该元素标记为完整的或不完整的(例如,如果其被错误地标记为完整的)。每当新的列表被发布时,并且每当列表的元素被标记为完整或不完整的时,在分组消息传送界面上显示通知。在用户设备6处高速缓存列表的本地副本以供离线使用。
对于分组消息传送模态的数据对象,类型字段例如可以指示该内容是所发送的消息(即,由用户在本地生成的)还是所接收的消息(即,由其他用户中的一个远程地生成的)。
图8至14示出了各个阶段处HiveOut应用7的UI。
图7示出了登录界面,用户通过其可以登录到HiveOut应用。例如,用户能够使用由另一平台提供的现有账户来登录,例如电子邮件或社交媒体账户、或者诸如微软“Office365”账户之类的通用账户。Office 365账户可以是专用于特定组织的,例如雇主(工作账户)。
图8示出了在经由图7中所示出的登录界面登录到HiveOut应用之后向用户呈现的示例分组选择显示界面80(在本文中被称为“分组页面视图”)。分组选择界面80的重点在于分组活动仅针对最新近的消息。即,对分组排序以将具有最新近的活动的这些分组放在第一(不仅仅是具有最新近消息的这些分组),由此,新近的活动(例如,分组用户在民意调查中投票、对在分组公告板上的共享文件的协同编辑、或对清单的更新)可以使得分组在分组选择界面80上被提升。
分组页面视图显示该用户是其一部分的一组活动分组。例如,在图8中,用户是分组“家庭作业”、“说明提交”和“化学万岁”的成员。分组页面视图中的每个分组被表示为相应的图像,在本文中被称为“闪卡”,其具有与在每个闪卡上显示的分组相关的信息。每个闪卡可以显示对最近已经被添加至每个分组的消息传送或公告板内容的指示。根据新的项目(消息或公告板项目)多新近地被添加至对应的分组来将闪卡排序。
用户可以属于两种类型的分组:“自组织”分组——由“HiveOut”应用的一般用户创建的——以及“官方”分组——由例如组织创建的,其还规定哪些用户可以是成员。分组页面视图向自组织分组不同地显示官方分组,例如,以指示用户对于这些分组的成员资格以及向其发布的内容具有有限的控制。
用户可以选择分组页面视图内的分组,以便查看与该分组相关联的消息传送和/或公告板内容。用户通过提供用于选择相应的闪卡的用户输入来选择分组,例如通过对其移动设备的触摸屏的触摸,或者先前所描述的其他类型的用户输入中的任何一个(例如,在NUI处接收的输入)。应当理解的是,尽管在图3中仅示出了三个分组,但是用户可以属于比三个分组更少或更多的分组。
例如,在图8中,与“家庭作业”分组相关联的闪卡示出了用户Julian已经向该分组发布了新的消息。该闪卡示出了消息的预览以及向该分组发布的时间的指示(3:56PM)。闪卡还示出了与Julian 86相关联的放大版本的简档图片,以便查看该分组页面的用户可以更容易地将Julian识别为最新近向该分组发布项目的用户。还可以在该简档图片86旁边显示第二张、更小的简档图片,以指示另一个用户最近(但是没有Julian新近)也已经向该分组发布了项目。
可替代地,第一、较大的简档图片可以示出与该分组相关联的更一般的图像——例如,由分组管理员所选择的图像。例如,在图9中针对“化学万岁”和“热力学”分组的较大图像是实验设备91的图像。第二、较小的图像可以与该分组内的最后活动用户的简档图片相对应。
图14示出了可以向用户显示的示例性界面,以便使得用户能够选择简档图片。在用户能够访问该分组页面视图之前,HiveOut应用向用户呈现该界面。
闪卡还指示了自用户最后登录到该分组页面起已经被添加至特定分组的消息和/或分组公告板项目的总数量(被示出为新的项目图标84)。例如,与“家庭作业”分组相关联的闪卡指示自用户最后登录到分组页面起,已经向该分组添加了12个新的消息和/或公告板项目。可替代地,闪卡可以指示自用户最后查看了该分组页面视图起,已经向特定分组添加的消息和/或分组公告板项的总数。
图9示出了分组页面92以及分组闪卡显示界面94的另外示例。
分组页面92示出了可以在分组闪卡上显示的其他信息。例如,闪卡可以包括用于对最近发布至该分组公告板的项目进行标记的话题标签的指示(例如,﹟viva与“Emma共享了word文件”通知一起被显示)。稍后将参考图10和11描述使用标签来标记消息传送和/或公告板内容。
分组闪卡显示界面94示出了在已经选择了在分组页面视图中显示的分组中的一个之后,可以向用户呈现的分组闪卡视图的示例。
分组闪卡视图针对特定的分组示出了指示以下内容的一个或多个闪卡:●由于用户的动作项目(例如,用户需要投票的民意调查95)
●添加至分组公告板的最新近的内容(例如,已经向该分组共享的Word文档)
●从分组中的其他用户接收的任何新消息
在优选的实施例中,闪卡是根据该优先级来排序的——即,表示由于用户的动作项目的闪卡被示出为第一(例如,在分组闪卡视图的顶部),后面跟着的是表示已经被添加至该分组的任何新内容的闪卡,后面跟着的是表示已经发布至该分组的任何新消息的闪卡(例如,在闪卡视图的底部)。
如在图8中,一个或多个闪卡还可以包括对自用户最后登录(或查看特定分组的分组闪卡视图)起,已经被添加至该分组的消息或分组公告板项目的总数的指示。例如,与最近被发布至该分组公告板的项目相关联的闪卡可以包括自用户最后查看了该分组的分组公告板起,已经被发布至该分组公告板的项目数的指示。类似地,与新的分组消息相关联的闪卡可以包括自用户最后查看了该分组的消息起,已经被发布至该分组的消息数量的指示。
如果新的内容或消息还没有被发布至该分组,则分组闪卡视示出了该分组的最近的热门话题标签。例如,闪卡可以显示已经被主动地用于标记在最近30天内的消息传送和/或公告板内容的话题标签。这在分组闪卡视图96中被示出,其中,例如,话题标签“#化学”、“#万岁”、“#热力学”、“#演示”和“#电化学”已经用于对在“热力学分组”中发布的消息传送和/或公告板内容进行标记的指示98。利用话题标签对消息传送和/或公告板内容进行标记可以帮助针对具体的消息传送和/或公告板内容进行搜索,如参考图10和11所描述的。
如果没有新的消息或内容或热门话题标签,则分组闪卡视图可以基于与消息和/或内容相关联的时间数据来显示指示被发布至该分组的最近的消息和/或内容的闪卡。在闪卡视图94中,还没有消息被发布至该分组,并且因此单独的闪卡97向用户提供选项以“开始对话”。当用户与“开始对话”选项进行交互时,HiveOut应用激活消息传送模式,由此使得用户能够向分组中的用户写和发送消息。
图10示出了当在分组消息传送模式下操作HiveOut应用时用户可以查看的示例分组消息传送显示界面102。分组消息传送显示界面102显示已经向该分组发布的一个或多个消息。分组消息传送显示界面10在本文中被称为“公共分组对话线程”。
在公共分组对话线程中所显示的一个或多个消息每个可以由图像表示,例如包含相关联的消息的文本的呼出图标。如可以从图10看见的,每个消息还可以包括对发送该消息的用户(例如,该用户的用户名)以及用户发送该消息的时间的指示。可替代地,所述时间可以指示在正用于查看消息的移动设备上接收该消息的时间。该消息还可以提供对已经查看了该消息的分组中的用户的指示(例如,“由用户B、用户C读取”)。
在分组包含多个消息的情况下,该线程中的消息可以是按时间排序的。这在图10中在分组对话线程102上示出,其中该线程中的两个消息被从最旧到最新地显示,如由在每个消息的主体下方显示的时间戳所指示的。HiveOut应用基于与每个分组数据对象相关联的时间数据(例如,在存储器26中存储的相关联的时间戳)以该方式来对分组数据对象(消息和公告板内容两者)进行排序。可替代地,HiveOut应用7可以根据某一其他时间标准(例如,最新到最旧)来对消息进行排序。
当用户首先打开分组对话线程时,分组对话线程显示自用户最后打开该分组对话线程起已经接收到的消息。例如,分组对话线程可以显示自用户最后查看该分组对话线程起最不新近地接收的消息。该消息可以由下次用户打开分组对话线程时出现(或移动至新位置)的瞬时视觉界限来指示。
分组消息传送显示界面104示出了在用户将文本输入到界面102的“在这里键入你的消息”字段之后向用户显示的用户界面的示例。如在显示界面104上可以看见的,向用户呈现了用于利用其对消息进行标记的一组可能的标记。这些标记可以与用户已经输入至消息的文本相关。例如,可以给予用户利用话题标签来标记消息的选项,其中话题标签与在消息中所包含的一个或多个词语或一个或多个类似的词语(在拼写或语义方面类似)相对应。这在显示界面104上被示出,其中,基于用户已经键入了“fil”给予用户利用“#Files”、“#Filing”、“#Filler”以及“#Fillet”话题标签中的一个或多个来标记其消息的选项。
额外地或可替代地,可以给予用户利用先前用于标记在所选择的分组中发布的其他消息和/或公告板内容的标记来对消息进行标记的选项。例如,这些标记可以对应于:用于标记消息传送和/或公告板内容数据的新近的标记、或者用户最频繁使用来标记向分组发布的其他消息传送和/或公告板内容数据的标记。
在可替代的实施例中,基于分析消息内容(和/或公告板内容)的HiveOut应用,可以用标记来对每个消息(和/或公告板内容)进行自动标记。
图11示出了其中给予用户利用“#化学”标记来标记其消息的选项的示例。在用户开始将此“化学”输入到“在这里键入你的消息”字段中之前,这可以向用户呈现。例如,HiveOut应用可以执行算法以便基于例如输入至消息的文本以及发布至该分组的先前的消息传送和/或公告板内容来预测相关的标记。
通常而言,标记用于指示分组数据对象的“题目”(无论是分组消息传送模态对象还是分组公告板模态对象)——例如,其相关的话题或主题。
用户可以通过将一个或多个搜索项输入至搜索字段来搜索与特定主题或题目有关的分组数据对象。可以将该搜索限制到特定的分组、或多个分组,这取决于用户是在查看特定分组的分组页面视图还是分组消息传送或分组公告板视图。一个或多个搜索项可以与用于在分组中的至少一个中标记分组消息传送模态数据对象或分组公告板模态数据对象的一个或多个话题标签相对应。额外地或可替代地,用户可以搜索与特定用户或特定优先级相关联的分组数据对象。
在用户搜索特定分组的情况下,用户输入一个或多个搜索项可以使得HiveOut应用在分组内搜索与一个或多个搜索项相匹配的分组消息传送模态数据对象和分组公告板模态数据对象。如果找到了一个或多个匹配,则HiveOut应用接收使得分组消息传送显示界面和分组公告板显示界面两者被更新的界面更新指示,以便显示与一个或多个搜索项相匹配的对应的分组数据对象。HiveOut应用可以通过确定分组数据对象是否包含对一个或多个搜索项的引用(单独地,或者作为分组数据对象的内容字段中内容的一部分)来识别分组数据对象与一个或多个搜索项之间的匹配。
实际地向用户显示的分组数据对象将取决于该用户是在分组消息传送模式还是分组公告板模式下操作HiveOut应用。例如,如果用户正在消息传送模式下查看“家庭作业”分组(参见图10和11)并针对词语“化学”进行搜索,则将更新搜索显示界面以便显示包含词语“#化学”的消息。在该情况下,在存在包含该词语的几个消息的情况下,这些消息可以根据例如最旧-最新来按时间排序。
如先前记载的,HiveOut应用可以响应于用户执行该搜索而更新分组消息传送显示界面和分组公告板显示界面两者,而不管用户操作HiveOut应用的模式。
例如,在执行搜索的同时,如果用户是在特定分组的消息传送模式下,并且切换至相同分组的分组公告板模式,则将向用户呈现与在消息传送模式下进行搜索的搜索项(例如,标记)相匹配任何分组公告板内容。通过以该方式更新所述显示界面,用户无需在每次导航至所选择的分组内的不同的显示界面时执行多个相同的搜索。
在第一实施例中,由于且当用户在“其他”模式下执行搜索时,HiveOut应用自动地更新一个模式的显示界面。
在第二实施例中,响应于从一个模式切换至另一个,可以更新“另一个”模式的显示界面。用户执行的用于在两个模式之间切换的操作被称为“模式切换指令”。该操作可以包括由用户做出的手势,例如滑动手势。
图8示出了其中用户在查看分组页面视图的示例。用户可以通过与在88处示出的图标进行交互来针对分组数据对象搜索多个分组。通过输入诸如“化学”之类的词,可以更新分组页面视图,以便显示在其中使用“化学”标记的分组。可以根据标记“化学”被用于标记每个分组中的分组数据对象有多新近来对这些分组进行排序。
图12示出了过滤图标(122a和122b)的示例,用户可以与所述过滤图标进行交互以便在分组消息传送或分组公告板模式下对搜索项进行搜索。
图12示出了向属于“家庭作业”分组的用户显示的示例性分组消息传送显示界面(示出了分组对话线程)121和分组公告板显示界面128(示出了分组公告板)。
分组公告板128示出了向分组发布的内容项目124a,而分组消息传送界面121示出了用户已经向分组公告板发布了项目124a的通知124b,如在下文进一步详细描述的。
该项目可以被表示为例如闪卡,其中,该闪卡提供了对发布了该项目的用户的指示、所发送的项目的类型(例如,题目/标题)、以及向用户的设备发送或在用户的设备处接收该项目的时间。闪卡还可以示出用于标记经共享的内容的任何标记。
通常而言,向分组公告板发布的任何内容被示出为用户可以使用例如滚动条来导航的项目的集合。再次,每个项目可以被表示为闪卡。可以根据发布每个对应项目的时间来将闪卡排序,或者可替代地,用户可以利用较高优先级来标记特定的项目并该项目可以被显示在该分组公告板的顶部。
当用户首先打开分组公告板时,分组公告板显示自用户最后打开分组公告板起被添加的任何项目。自用户最后查看分组公告板起被添加至分组公告板的最不新近的项目可以由下次用户打开主板时消失(或移动到新位置)的瞬时视觉界限来指示。
下表提供了用户可以添加至分组公告板的内容类型以及该内容可以在分组公告板上如何显示的示例。
每格类型的内容都可以具有在内容作为项目被发布至分组公告板之前用户必须填充的相关联的预设模板。
在图12中,闪卡示出了用户,用户Julian,在5月20日1:30pm与在“家庭作业”分组中的其他用户共享Word文件。闪卡还示出了由Julian共享的Word文件已经利用标记“#家庭作业”、“#建议”和“#任务”进行了标记。在共享内容之前,已经由用户选择了这些标记。可替代地,这些标记可能已经由例如HiveOut应用或模式二元服务器基于对Word文件的分析而自动地选择。
在图12的示例中,用户(例如,用户Elizabeth Hannks)在消息传送模式下操作HiveOut应用。在第一时间,t1,分组对话线程示出了目前没有用户向分组对话线程发布消息(即,5月20日,在1:30pm之前)。在稍后的时间t2,即1:30pm,用户Julian将项目发布至分组公告板。新的分组数据对象是针对该项目所生成的并且被发送至与分组中的其他用户相关联的用户设备中的每个(包括Elizabeth的用户设备)。
在接收新的分组数据对象时,HiveOut应用(例如,在Elizabeth的用户设备上运行的)将分组对象的模态指示符识别为与分组公告板模态数据对象相对应。响应于此,HiveOut应用在相应的用户设备的存储器中生成与新的分组公告板模态数据对象相对应的通知。该通知被显示为分组对话线程中的消息(即,在分组消息传送显示界面上),由此向查看该分组对话线程的任何用户警告新的项目已经被发布至该分组公告板。每次HiveOut应用接收到新的分组公告板模态数据对象,该分组消息传送显示界面可以自动地更新以便显示对应的通知。在图12中示出了这的示例,其中,对话线程示出了关于用户Julian在5月20日1:30pm共享了Word文件的通知124b。
通知可以是可选择的——即,在消息传送模式下操作HiveOut应用的用户可以选择该通知,以便查看在分组公告板上被显示为所发布的项目的对应的分组公告板内容。在图12的示例中,用户对“Julian在分组公告板中共享了Word文件”的通知124b进行选择使得HiveOut应用切换至分组公告板模式,其中Word文件被显示为闪卡124a。闪卡提供了对用于标记文件的标记的指示,以及其向用户设备发送或在用户设备处接收其的时间。通过选择闪卡124a,用户可以在其设备处查看该Word文件(例如,通过下载它并在另一应用中将它打开)。
分组消息传送界面上的通知124b是自动地生成并显示的系统通知,即用户“Julian”无需在分组消息传送界面中发送单独的消息来通知该分组其新的Word文件。
尽管已经关于响应于新的分组数据对象被添加至分组而生成的通知描述了在上文中所描述的实施例,但是这不是用于生成通知的唯一要求。例如,用户能够删除、喜爱和/或编辑发布至组的分组公告板的内容。这进而,可能引起在该分组的分组对话线程中自动地发布通知。
图15A至15D示出了如何可以在与分组公告板界面128上的项目相关的分组消息传送界面121上生成系统通知的第二示例。图15A示出了在另一用户Elizabeth已经发送了分组消息并且接着创建了民意调查后不久的分组公告板界面121。在分组消息传送界面上显示了投票创建的通知124d,在她的消息(应当注意的是,通知124d的视觉格式与图12不同)之后。通知124d是可选择的,并且响应于用户选择该通知124d,HiveOut UI切换至分组公告板界面128,并且将民意调查显示为经突出显示的分组公告板项目124c,由视觉(部分)边界突出显示。项目124c被突出显示为用户选择相应的分组公告板通知124c以切换界面的结果,以使得用户知道分组公告板界面128上哪个项目与其选择的通知124d相对应。在该示例中,部分边界125b形成了可选择的投票选项,一旦用户已经选择了民意调查的选项中的一个,用户就可以选择在民意调查中投票。图15C示出了在用户(在该示例中,是“Julian”)已经在民意调查中投票之后分组公告板界面128的示例。已经将项目124f更新为示出关于迄今为止分组成员已经如何投票的信息,其包括迄今为止针对不同的投票传达投票的比例的图形124f,其中不同的选项是使用不同的视觉效果(例如,颜色、阴影等)来表示的。图15D示出了当用户已经在民意调查中投票时的分组消息传送界面。如可以看见的,现在在分组消息传送界面121上显示用户的投票的新的通知124f。在该示例中,在Elizabeth已经发送了另一个分组消息之后,用户投了他的票,因此第二通知124e如果被显示,则在该消息序列中的该第二消息之后。
图13示出了另一示例,在该示例中,由在一个模式下操作HiveOut应用的用户执行的动作使得与另一模式相关联的界面更新其显示。该更新可以被自动地执行,或者响应于用于执行模式切换操作。在优选的实施例中,HiveOut应用自动地更新另一模式的显示界面——在下文中描述了该实施例。特别地,图13展示了用户如何手动地滚动通过界面中的一个引起自动地滚动通过另一界面达对应的量。
例如,图13示出了图12之后的示例,其中,更多的消息随后已经被发布至分组对话线程。这些消息可以是响应于用户将内容发布至分组公告板而生成的实际消息和/或通知。尽管这些消息没有被显式地示出(即,仅仅示出与Julian的Word文件相关联的通知),其存在是由滚动条120a指示的。
滚动条120a使得用户能够导航至分组对话中的不同点,例如导航至在通知124之后被发布的消息。用户可以选择滚动条(即,用户可以提供“滚动输入”),并且将其在某一方向拖动以便查看与某一标准(例如,接收时间)相对应的消息。
当用户在消息传送模式下滚动通过消息时,HiveOut应用更新消息传送显示数据42,由此更新分组消息传送界面以便显示与滚动条的位置相对应的消息。例如,当用户向下拖滚动条时,可以显示较新的消息。同样地,当用户向上拖滚动条时,可以显示较旧的消息。用户可以首先在消息传送模式下执行搜索,并且接着以相同的方式滚动通过所述消息。这可以限制用户为了定位期望的消息所需要滚动通过的消息的数量。
在第一实施例中,当用户滚动通过在所选择的分组的消息传送模式下显示的消息时,HiveOut应用并行地更新分组公告板显示数据,从而以对应的量滚动通过在分组公告板上发布的项目的集合。
滚动通过在分组公告板上发布的项目的量可以取决于与在消息传送模式下正被显示的该消息序列相关联的任何时间数据。例如,如果分组公告板消息传送显示界面正在显示横跨特定时间间隔的消息序列,则HiveOut应用可以识别该时间间隔并使用其来更新分组公告板显示界面,以便在重叠(完全地或部分地)的时间间隔上显示所发布的数据项目,其中所述时间间隔由一系列消息横跨。例如,在消息被添加到分组对话线程比项目被发布至分组公告板更频繁的情况下,这可以是有用的,并且因此在消息模式下,滚动条的空间置换可以与在分组公告板模式下的不同时间间隔相对应。
在已经执行了滚动输入之后,如果用户通过执行例如滑动手势选择从消息传送模式切换至分组公告板模式,则分组公告板显示界面将仅显示在与用户先前查看的消息序列相关联的时间间隔附近发布的这些项目。因此,用户不需要独立地导航消息传送和分组公告板模式——用户可以同时导航这两个模式,而无论用户是在消息传送模式还是在分组公告板模式下。通过以该方式更新这两个显示界面,当用户切换至第二模式时,保存来自第一模式的上下文。
在图13中示出了以上的示例。在图13中可以看见,通知在消息传送模式下被显示为具有时间戳“5月20日,1:30pm”。作为用户在消息传送模式下滚动的结果,分组公告板显示界面被自动更新,以便滚动至类似的时间附近发布的任何内容。在该示例中,分组公告板被更新以便显示在5月20日下午1:30-7:30之间发布至公告板上的两个项目,由闪卡124a和126所指示。如果用户在消息传送模式下运行该应用并切换至分组公告板模式,则用户将看见在分组公告板上发布的这两个项。
将理解的是,尽管已经针对用户从消息传送模式切换至分组公告板模式描述了上文描述的滚动和切换操作,但是相同的方法可以应用于(在相反方向)从分组公告板模式切换至消息传送模式。
即,在分组公告板模式下,用户的滚动动作可以使得消息传送显示界面被更新,以便以对应的量滚动通过分组对话线程中的消息。再次,可以更新消息传送显示界面以便显示横跨与在分组公告板显示界面上显示的项目的集合相重叠(部分或全部)的时间间隔的一系列消息。例如,如果在分组公告板模式下查看闪卡124a的用户从分组公告板模式切换至消息传送模式,则分组对话线程将示出响应于该内容被发布至分组公告板而被发布至分组对话线程的通知。
在第二实施例中,在与“其他”模式相关联的显示界面响应于执行模式切换指令(例如,滑动手势)而被更新时,将保存在每一界面中示出的项目之间的时序关系。
例如,当响应于用户从消息传送模式切换至分组公告板模式而更新分组公告板显示界面时,在分组公告板上显示的项目将横跨与先前在消息传送模式下显示的消息序列重叠(部分地或全部地)的时间间隔。同样地,响应于用户从分组公告板模式切换至消息传送模式,消息传送显示界面将被更新以便显示与由先前在分组公告板上显示的项目横跨的时间间隔相重叠(部分地或全部地)的一系列消息。如在优选的实施例中,当从一个模式切换至另一模式时,也将保存作为用户执行搜索并滚动通过结果的结果而产生的时序关系。
第一实施例和第二实施例之间的主要区别在于,在第二实施例中,用户必须在更新与“另一个”模式相关联的显示界面之前,执行模式切换指令。
图16A-16B示出了分组消息传送和分组公告板界面121、128彼此耦合的另一示例。图16A示出了分组消息传送界面121如何可以通过当前选择的话题标签(在该示例中是“#化学”)来过滤,其已经由用户选择。当前选择的话题标签的指示符202靠近界面121的顶部显示,并且包括用户可以选择以恢复到未经过滤的视图的取消选项。示出了包括当前选择的话题标签的消息,并且在一些情况下,还示出了一些没有包括该话题标签的受限的且紧密相关的消息——例如,示出了由用户发送的包括当前选择的话题标签的消息,并且还示出了在消息发送紧邻之前接收的消息,即使所接收的消息不包括该话题标签(假设所接收的消息有可能与该话题标签的主题相关)。还示出了在分组公告板界面128上共享文件的通知124h,因为如在图16B中所看见的,也利用当前选择的话题标签#化学来标记共享的文件。例如,当用户通过滑动或选择通知124g切换至分组公告板界面128时,维持用户对话题标签的选择,以使得分组消息传送界面128由相同的话题标签#化学来过滤,而无需用户再次对其选择,如在图16B中所示出的。对当前选择的话题标签202的指示保持被显示在分组公告板界面128上。如在以上的示例中,在切换之后由分组公告板界面横跨的时间间隔与在切换之前由分组消息传送界面横跨的时间间隔至少部分地重叠。
用户可以创建新的分组并且例如从其组织添加任何用户(通过针对其进行搜索)。为了创建新的分组,分组创建者仅需针对该分组指定分组标题。如果他们想要添加更多的细节,则他们可以——在创建时或稍后。没有用于开始使用的最小的成员数。
用户可以仅搜索并添加新的成员到自组织分组。在任何时刻,任何成员(具有这样做的许可)可以邀请新的成员。新的成员将能够在加入之后访问分组的整个历史。新的成员可以通过电子邮件被邀请加入自组织分组。如果被邀请的成员是经注册的HiveOut用户,则一旦其接受就被添加至该分组。如果被邀请的成员不是经注册的HiveOut用户,则其经由电子邮件获得安装HiveOut应用的链接。如果该新用户使用相同的电子邮件/移动电话号码进行注册,则向其呈现向该电子邮件/移动电话号码发送的所有分组邀请。如果新成员没有在HiveOut上,则用户可以搜索他们并添加他们。HiveOut应用可以提供所有成员的列表,以指示每个成员在多久以前是活动的。
用户可以以一些传统的专用消息传送应用的方式经由分组消息传送界面来共享多媒体,例如照片或视频、或链接(例如,到照片或视频的链接)。这些不会自动地向分组公告板界面推广,但是可以手动地推广。
用户可以从外部应用向分组公告板发布内容。响应于用户选择从另一应用向分组公告板共享内容:
1.HiveOut应用打开;
2.HiveOut应用显示它们是其一部分的分组的列表;
3.用户也可以选择任何(一个)组来发布;
4.用户可以在适当的情况下指定题目/话题标签;
5.用户选择创建通过HiveOut应用显示的选项以完成向分组公告板的发布。
分组公告板被定义为OS 8内的共享目标(在被支持的情况下),以使得其他应用可以选择在HiveOut应用外部的内容以共享到HiveOut应用。例如,可以经由OS 8的UI来选择内容,其中,经由OS UI提供向HiveOut应用7共享内容的选项。作为响应,提供用户是其一部分的活动分组的列表,并且当用户选择要向其共享的分组时,所述内容被直接添加至所述分组公告板。在消息传送界面上发布针对其的系统通知。
还在分组公告板界面上显示用于导航至分组公告板顶部或底部的可选择的选项(其从最旧到最新排序),但其没有在附图中显示地示出。
与其他应用的互操作性:
图6A和6B示出了在双模服务器10与移动设备6a、6b、6c和台式机PC 18中的每个之间消息传送或公告板内容的流52M/52B。
图3示出了在图1中示出的双模(即,HiveOut)服务器的更加详细的视图。HiveOut服务器10包括用于通过通信网络2从移动设备6a、6b和6c接收并向其发送分组数据对象的网络接口34。
网络接口34连接到HiveOut服务器的处理器32,在其上执行双模管理代码36。双模管理代码36将经由网络接口34接收的每个分组数据对象50存储在第一数据存储12中,以使得其以上文讨论的方式由HiveOut实例7a、7b、7c可访问。
简要地返回图1,如上文所记载的,除了HiveOut服务器10之外,后端系统20包括互操作性服务器14。
互操作性服务器14通过将一个版本的该内容存储在第二、单独的数据存储16中(参见下文),来允许使用不同的且在技术上不兼容的应用来访问使用HiveOut应用共享的某些内容。作为示例,图1示出了第一用户4a可用的计算机设备18,例如膝上型或台式计算机设备(例如,PC、Macintosh等)。膝上型或台式PC设备18执行不同的应用19(与HiveOut应用不同且在技术上不兼容),其使得膝上型或台式设备18能够访问经由HiveOut共享的内容中的一些内容——特别地,分组公告板内容。这意味着用户可以使用其移动设备来向分组公告板发布大量项目,并且使用其移动设备查看这样的项目,但是接着,使用计算机设备19来对其查看和编辑,其中计算机设备19由于其较大的显示器、更大范围的输入设备等而更加合适。
在HiveOut服务器10上执行的双模管理代码36读取其接收的每个分组公告板数据对象的模态指示符53,并且由此确定其模态。基于模态指示符53,双模管理代码36确定是否对每个分组数据对象的内容进行复制,并且将该副本转发至第二数据存储16。在所描述的实施例中,所有分组公告板数据对象的内容(且仅该内容)被复制到第二数据存储12。
应当注意的是,在确定模态时,HiveOut服务器仅需要读取模态指示符——如所记载的,这可以是单个标记位,其需要最少的处理资源来读取。在确定是否将给定的数据对象复制到第二数据存储12时,HiveOut服务器10无需读其他字段中的任何一个。
在图6A和6B中,第一移动设备6a从第一用户,用户A,接收输入,以与关联于移动设备6b和6c的用户B和C共享分组数据对象。与这些移动设备的用户相关联的用户形成了一组用户(例如,由分组标识符可标识)。
移动设备6a以与用于在移动设备(6a、6b和6c)上运行的HiveOut应用与双模服务器10之间发送数据的协议兼容的格式发送分组数据对象。即,以根据被标记为API 1的、HiveOut服务器的应用程序接口(API)可以被接收和处理的格式发送分组数据对象。
HiveOut服务器10将所有接收的数据对象存储在第一数据存储12中,如上文所描述的。因此,消息传送内容或公告板内容(被标记为52B/52M)两者被存储在第一数据存储12中,以由移动设备6a、6b和6c使用图5的数据对象结构来取回。
HiveOut服务器10还生成包括在从移动设备6a所接收的分组数据对象中的任何公告板内容的副本。将该公告板内容(52B)的副本存储至第二数据存储16,其可以经由互操作性服务器14来访问。
在膝上型/台式PC 18上运行的不同的且在技术上不兼容的应用19是在网络2上通过与互操作性服务器14进行通信来访问并取回存储在第二数据存储16上的公告板内容。互操作性服务器14可以被配置为根据与用于在移动设备(6a、6b和6c)和双模服务器10之间发送数据的协议不同和不兼容的协议,根据在图6A和6B中被标记为“API2”的互操作性服务器的API(其与HiveOut服务器API(API1)不同且技术上不兼容),来向台式PC发送公告板内容。
相反,应用19可以使得用户能够添加存储在第一和第二数据存储器上的公告板内容(下文描述的)。
在一些情况下,对话模块62处理分组公告板数据对象以用与不同的应用19不兼容且因此能够由不同的应用19解译的格式来渲染其内容。例如,在图5的数据对象结构不能够由不同的应用19解译的情况下,可以将内容重新格式化成与不同的应用19兼容且能够由不同的应用19解译的不同的数据结构,如所记载的,其可以是SharePoint或OneNote应用,或者网络浏览器(在该情况下,对话模块62可以生成HTML输出以在由网络浏览器显示内容时使用)。
即,分组消息传送数据对象被转换成可以根据分组公告板内容服务器API(即“API2”)接收和处理的格式。该对话可以在分组公告板内容的副本被存储在第二数据存储16上之前或之后发生,如在图6a中的,或者可以在其被取回的情况下或当其被取回时转换格式,如在图6b中的。转换模块62可以由HiveOut服务器10、互操作性服务器14、或不同的服务器一起实现。可替代地,可以跨两个或更多这样的服务器来分配其功能。
图6A示出了在任何分组公告板内容数据被复制到(且存储到)第二数据存储16上之前执行转换的示例性系统。
如在图6A中可以看见的,转换模块62具有连接至双模服务器10的输入端和连接至第二数据存储16的输出端。在转换模块62的输入端接收公告板内容(52B)的副本并执行转换操作。如上文记载的,转换操作与将公告板内容(52B)转换成与用于在互操作性服务器14和外部应用19之间传送板内容的协议兼容的格式相对应。转换模块62将经转换的公告板内容64输出至互操作性服务器14。互操作性14使用由分组公告板内容服务器的“API2”接口所采用的协议将经转换的公告板内容64转发至在台式PC 18上运行的应用19。
在示例实施例中,移动设备6a、6b和6c可以是移动或平板设备且安装有特定版本的HiveOut应用(即,被配置为处理在这些种类的设备上的消息传送和公告板内容)。分组的用户中的一个用户(例如,用户A)可以远离其移动设备(6a、6b或6c),并且可以想要使用诸如Web浏览器之类的不同的应用19经由诸如膝上型或平板PC 18之类的不同的设备来访问板内容。
转换模块62将与“HiveOut”应用的移动电话版本相关联的分组公告板内容转换成与Web浏览器兼容的格式。因此,用户A通过经由互操作性服务器14从第二数据存储直接取回经转换的副本而能够访问并查看最初发送至双模服务器10的公告板内容。
图6B示出了在公告板内容被存储在第二数据存储16上之后执行转换的示例系统。在图6B中,在且当向在诸如台式PC 18之类的相同或不同的设备上操作的另一应用19发送公告板内容时,第二数据存储16存储原始公告板内容52B的副本并且转换是由转换模块62执行的,而不是在第二数据存储16上存储经转换的公告板板内容64。在例如台式PC 18上的应用19可以向转换模块62提供对向应用19发送公告板内容的合适格式的指示情况下,这是有利的。
尽管已经在移动设备6a向移动设备6b和6c发送消息传送或公告板内容的上下文中描述了图6A和6B,但应当理解的是,可以从例如台式PC 18向移动设备6a、6b和6c发送消息传送或公告板内容。
例如,用户A可以在台式PC 18上使用应用19来与移动设备6b和6c共享分组消息对象。与分组数据对象关联的任何公告板内容可以被存储在第一数据存储12上,并且被复制到第二数据存储16,其中在第二数据存储16上存储的公告板内容可以被转换成与关联于移动设备6a、6b和6c的HiveOut应用兼容的格式。可替代地,第一和第二数据存储器可以以相同的格式来存储公告板内容,并且当从第二数据存储16向移动设备6b和6c发送公告板内容时,可以执行该转换。
应当注意的是,在上文所描述的实施例中,仅将公告板内容描述为在复制到第二数据存储。这是因为公告板内容更有可能从前述转换操作受益。例如,与特定设备相关联的显示器的大小和类型可能需要在应用(例如,19)可以向用户提供用于查看公告板内容的合适的用户界面(分组公告板显示界面)之前被考虑在内。
为了进一步示出在其中可以使用本主题的实施例的上下文,在下文中提供了两个示例场景。应当注意的是,这些示例仅仅是由分组中的用户所执行的活动的代表性(且非穷尽的)列表。
示例1-从事于班级作业
Riya针对其广告班级有新的分组项目。她的分组已经最终确定。他们必须创建针对“妇女安全”的意识运动。Riya听到她的朋友热情地谈论HiveOut。她们说其有助于“一起工作”。她决定试一试。
创建分组
首次使用时,Riya经由Facebook登录并且她的个人简档全部设置好了(通过一次点击)。
该应用示出她的FB组包括她的班级区分组——Rohan、Mihir、Snanya。她快速地选择她的研究分组成员(以针对她的任务HiveOut出新的对话)。在她们分组的交换生——Mike——不在Facebook区分组上,但是他共享了他的电子邮件地址。Riya也将他添加到了HiveOut。她所有的分组成员都加入了HiveOut。
在对内容工作时同时进行转换
Riya发起了关于她们的意识运动应当是什么样的传递模式的讨论。Mike建议做可重复的主题。有人问那是什么?Mike解译可重复的主题是重复上演呼唤对公司产品的需求的情况。讨论接着发生。接着,他将一批链接和文档放在分组公告板上并且为了每个人的方便利用#模式进行了标记。Riya看了Mike共享的所有很好的材料并相信这是个好注意。
Riya指出现在一些人现在不活跃。她建议实行民意调查,以便他们能够知道这些人是否有共识。她针对该运动创建了用于将注意力放在“传达的模式”的投票。她用#模式对其进行了标记。
迅速访问相关项
当关于传达模式的讨论在进行时,Rohan不在班里。当他最终打开应用时——他立即看见了该分组在等待他投票来决定一些事情。他直接去投票。
他查看了所有的投票选项。但是不确定“可重复主题”的意思。他注意到该投票用#模式进行了标记。该分组公告板关于由Mike和其他人针对#模式而添加的所有内容立即进行了过滤。他找到了可重复主题的示例和用于更好地理解该概念的一批链接。
他滑动回该对对话视图。它也关于#模式进行了过滤。他探索到关于#模式的对话(话题标签标记的比特以及在其间的比特)。他很满意对于该运动的该方向。
他回到白板并投了“可重复主题”的票。
形成子分组
Sanya和Mihir使用#说明推荐了一批想法来向该分组说明。其他的每个人感觉到他们是将其接起的合适人选。因此,他们创建了子分组——说明(从#说明标签)。从#说明提升。因此,他们讨论和共享的任何东西都已经有#说明在其子分组线程上。
尽管在子分组中聊天,但是他们不断将其设计添加到分组公告板(并标注当其从说明子分组向右滑动时,其在说明子分组上转移)以便其他每一个人都可以看见。
迅速进入状况
Riya有段时间没有收到说明者的消息了。她想知道他们发生了什么——她工作的广告文本需要很好的联系在一起。她针对“说明”子分组发生了什么对分组公告板进行检查。然后她很满意看见了他们最近的设计。每当他们添加一些新东西到公告板时,她在分组上都看到针对其的通知。
这个分组一直在讨论他们需要见面以完成最后的可传达。他们一直在要碰面的地点/时间上犹豫不决。Sanya一直忙于她的其他的义务,因此她不能持续跟踪该对话。她在她的电话上看见针对该分组会议的日历邀请。当她打开该分组时,她看见在分组公告板上发布了地点和其他细节。
示例2-分组外出
Rohit、Ranveer和Astha在晚餐时提出了Goa公路旅行计划。他们想要立刻开始计划。Rohit创建了HiveOut分组——“Goa公路旅行”并添加了其他两个人。
选择成员
Ranveer和Astha加入该分组。所有三个人向他们可能对加入有兴趣的朋友发出了邀请。大约发出了25份邀请。他们的朋友中仅10个接受了邀请并加入了“Goa公路旅行”HiveOut组。
三人组已经知道不是每个人都有空。发出邀请确保没有人感到被冷落。并且他们从热衷的人那里获得了快速的“握手”。
子分组有助于保持讨论聚焦并且消除噪声
这个分组以三辆车旅行去往Goa。车辆分配已完成。
Ranveer(驾驶Scorpio)创建了“Scorpio团”子分组以与同他一同旅行的其他人讨论后勤(logistic)。在子分组中,他们讨论了针对该车程的接送点、小吃和音乐等。他们将所有这些细节发布至分组公告板上以便之后快速访问。
Priya——Astha的学校朋友——也在Scorpio中旅行。她跟Ranveer以及与她一起旅行的其他人不是很熟。因此开始的时候她对旅行有点紧张。但是与“Scorpio团”聊天让她放松了。他们一起相处得很好,现在她盼望这次旅行了。
类似地,其他的汽车分组也已经设置了他们的旅行计划——无任何混淆和没必要的噪声。
共享更新和状态
在去往Goa的途中,该团计划在Raichur的dhaba吃饭。一旦第一辆车进入Raichur,他们就让其他人知道。汽车分组决定分开并查找像样的地方吃饭。三个车分组经由HiveOut来协调他们的行动。
在旅行时,通过聊天来共享位置更新。一辆车最终找到了一家看上去不错的dhaba,并且与其余的人(通过聊天)共享其照片。所有三个分组都同意且他们决定停在那儿。第一车分组将路标放到分组公告板上以供其他两辆车到达。
找到回忆
13个人的团一定会有来自周末旅行的大量照片。在旅行之后找到好的照片将是艰巨的任务。但是“Goa公路旅行”团已经讨论了这个“严肃的”问题。他们决定每一个人将通过聊天不断共享他们的手机照片流。并且接着,超级受欢迎的照片或几张个人最爱可以被移至分组公告板。
因此,当在Goa时,照片爆发持续进行。他们将照片加标签以使得之后容易归类。受欢迎的照片立即被移动至分组公告板。
“Scorpio”团在公路上玩得很开心。他们有来自公路旅行的很多有趣视频。他们将这些也添加到分组公告板。在旅行之后,普里亚(来自Scorpio团)针对她最喜欢的话题标签以及当然“Scorpio团”来过滤分组公告板。她能够快速地查看并容易地一口气下载所有她最喜欢的回忆。
标记以供之后参考
这个分组(更具体而言,预算员Rohit)立下的另一“黄金规则”是——每一项花销都要用“预算”话题标签添加到分组聊天。在旅行期间——每个人不断添加他们支付的花销以及花销细节。如果任何花销有争议,则通过聊天来解决。
这使得Rohit后面按人头计算花费和应付款非常简单。他仅利用标签“预算”来过滤所有的评论。在这之后,利用来自Excel的小帮助,他就完成了所有他的计算。接着,他将他的计算电子表格发布到分组公告板上以供每个人查看。
一般而言,本申请中描述的任何功能都可以使用软件、固件、硬件(例如,固定逻辑电路)、或这些实现的分组合来实现。如在本文中使用的术语“模块”、“功能”、“组件”和“逻辑”一般表示软件、固件、硬件、或其组合。在软件实现的情况下,模块、功能、或逻辑表示当在处理器(例如,CPU或多个CPU)上执行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储设备中。在下文描述的技术的特征是平台独立的,意思是上述技术可以在具有多种处理器的多种商业计算平台上实现。
例如,用户终端还可以包括使得用户终端的硬件执行操作的实体(例如,软件),例如处理器功能块等。例如,用户终端可以包括计算机可读介质,其可以被配置为保存使得用户终端并且更具体地,操作系统以及用户终端的相关联的硬件执行操作的指令。因此,指令用于将操作系统和相关联的硬件配置为执行操作,并且以该方式引起操作系统的转换以及相关联的硬件执行功能。可以由计算机可读介质通过多种不同的配置向用户终端提供指令。
计算机可读介质的一个这样的配置是信号承载接着且从而被配置为例如通过网络向计算设备发送指令(例如,作为载波)。计算机可读接着还可以被配置为计算机可读存储介质且从而其不是信号承载介质。计算机可读存储介质的示例包括随机存取存储器(RAM)、只读存储器(ROM)、光盘、闪速存储器、硬盘存储器、以及可以使用磁、光以及其他技术来存储指令和其他数据的其他存储设备。
本主题的第一方面针对一种在一组用户之间实现通信的计算机实现的方法,所述方法包括在对所述用户中的一个用户可用的用户设备的处理器上执行客户端应用以实现以下步骤:经由网络在所述用户设备与至少一个其他设备之间发送和接收分组数据对象,所述分组数据对象中的每个包括:对表示多个用户分组中的相关联的一个的用户分组的指示、针对所述相关联的用户分组的内容、以及对表示分组消息传送模态或分组公告板模态之一的模态的指示;所述客户端应用接收对所述多个用户分组中的一个用户分组的当前选择,并且基于对用户分组的所述指示和对模态的所述指示,针对当前选择的分组在所述用户设备的存储器中生成:(i)分组消息传送显示数据,其用于将与所述当前选择的分组相关联的分组消息传送模态数据对象的内容的至少一部分在分组消息传送显示界面上显示为消息的序列,以及(ii)分组公告板显示数据,其用于将与所述当前选择的分组相关联的分组公告板模态数据对象的内容的至少一部分在分组公告板显示界面上显示为所发布的项目的集合;所述客户端应用通过基于所述分组消息传送显示数据控制所述显示器在所述分组消息传送显示界面上显示所述消息的序列,来在针对所述当前选择的分组的分组消息传送模式下操作;以及响应于模式切换指令,所述客户端应用通过基于所述分组消息传送显示数据控制所述显示器在所述分组公告板显示界面上替代地显示所述所发布的项目的集合,来切换至针对所述当前选择的分组的分组公告板模式,由此,单个应用针对同一用户分组提供分组消息传送模态和分组公告板模态两者。
在实施例中,所述步骤还包括:在所述用户设备处从所述用户接收内容生成输入;以及由所述客户端应用生成新的分组数据对象以用于发送至所述其他设备,其中,所述新的分组数据对象包括对表示当前选择的分组的用户分组的指示,以及从所述内容生成输入导出的和/或基于所述内容生成输入所选择的内容。所述客户端应用在所述新的分组数据对象中包括表示以下内容的模态的指示符:
在所述内容生成输入是在所述分组消息传送模式下操作时接收的情况下,所述分组消息传送模态;或者
在所述内容生成输入是在所述分组公告板模式下操作时接收的情况下,所述分组公告板模态。
模态指示符可以是一个或多个标记位,例如单个标记位。
分组数据对象中的每一个具有在其中保存其模态指示的模态字段,以及在其中保存其内容的内容字段。
数据对象中的每一个还可以具有在其中保存其相关联的用户分组指示的分组字段。
所述模式切换指令是由所述用户手动地发起的。
例如,所述模式切换指令是由所述用户通过以下操作发起的:
执行单个手势,由此所述客户端应用响应于所述单个手势,从所述分组消息传送模式切换至所述分组公告板模式,或者
选择在所述分组消息传送显示界面上显示的与所述分组公告板显示界面有关的通知。
单个手势可以是单个滑动。例如,在预定方向上的滑动;在该情况下,在分组公告板模式下输入在相反方向上的滑动可以发起切换回分组消息传送模式。
如果通过用户选择通知来发起模式切换指令,则客户端可以响应于包括突出显示数据以将于所选择的通知对应的所发布的项目在分组公告板界面上显示为突出显示的项来更新分组公告板显示数据,其中该项在分组公告板界面上被显示为突出显示的项。
所述步骤还可以包括:
在所述用户设备处经由所述网络从所述其他设备接收其对模态的指示表示所述分组公告板模态的新的分组数据对象,和/或
检测对所述分组公告板模态数据对象中的一个的更新,所述客户端应用响应于此而更新所述分组消息传送显示数据,其中,经更新的显示数据用于在所述分组消息传送界面上显示:
对所述新的分组公告板模态数据对象的通知,或者
对所述分组公告板模态数据对象的更新的通知。
当接收新的分组公告板模态数据对象时或当检测到更新时,客户端应用可以在分组消息传送模式下操作,由此响应于其而在分组消息传送界面上显示该通知。
可以在用户设备上在本地发起更新,或远程地发起更新,其中,可以经由网络在用户设备上接收标识要更新的数据对象和用于更新所标识的数据对象的数据对象更新数据。
所述通知可以是在所述消息的序列中、在与在所述用户设备处接收所述新的分组公告板模态数据对象的时序或者其从所述其他设备发送的时序或者所述更新的时序相对应的所述序列中的位置处显示的。
所述通知是可选择的,并且响应于所述用户选择所述通知,所述客户端应用通过控制所述显示器将所述新的分组公告板模态数据对象的所述内容的至少一部分在所述分组公告板界面上显示为新的所发布的项目,来切换至所述分组公告板模式。
所述分组公告板显示数据可以是在接收所述模式切换指令之前,当所述分组公告板显示界面没有被显示时生成的。可替代地,其可以是在所述模式切换指令被接收之后,响应于模式切换指令而生成的。
所述步骤还可以包括:当客户端在分组消息传送模式下操作时,接收界面更新指令,其中,所述客户端应用根据界面更新指令来更新在存储器中的分组消息传送显示数据和分组公告板显示数据。
分组消息传送显示数据可以根据界面更新指令来更新:
在接收模式切换指令之前,当未显示分组公告板显示界面时,或者
响应于模式切换指令(即,在其被接收之后)。
可替代地,一部分的显示数据可以在接收模式切换指令之前被更新,且其一部分响应于模式切换指令。
界面更新指令可以由用户手动地发起。
界面更新指令可以由来自用户的滚动输入发起,其中,客户端应用更新:所述分组消息传送显示数据以滚动通过所述消息的序列达对应的量,以及所述分组公告板显示数据以滚动通过所述所发布的项目的集合达对应的量。
可替代地,可以通过用户输入搜索项(例如,标签)来发起界面更新指令,其中客户端应用可以搜索分组数据对象以定位于搜索项匹配的分组公告板模态数据对象中的一个或多个以及匹配搜索项的分组消息传送模态数据对象中的一个或多个,由此使用同一搜索项来搜索这两个模态。在该情况下:
经更新的分组消息传送显示数据(即,如根据界面更新指令更新的)用于将所定位的分组消息传送模态数据项目的内容的至少一部分在所述分组消息传送显示界面上显示为一个或多个消息;并且
经更新的分组公告板显示数据(即,如根据界面更新指令更新的)用于将所定位的分组公告板模态数据项目的内容的至少一部分在所述分组公告板显示界面上显示为一个或多个所发布的项目。
可以将搜索仅限制在其内容包括诸如散列字符“#”之类的一段预先确定的标记数据的那些数据对象,由此将搜索限制于话题标签。
客户端应用可以针对与搜索项相匹配的分组数据对象(公告板或消息传送模态)中的至少一个来显示与搜索项不匹配但是与匹配的分组公告板数据对象相关联的至少一个非匹配分组数据的内容。例如,就在发送匹配的分组公告板数据对象紧邻之前或者接收匹配的分组公告板数据对象紧邻之后对其发送或接收。例如,在发送匹配的数据对象紧邻之前或接收匹配的数据对象紧邻之后发送或接收单个非匹配数据对象。
可以响应于如下内容而自动地发起界面更新指令:
●在用户设备上接收其模态指示表示分组公告板模态的新的分组数据对象,或者
●检测对分组公告板模态数据对象中的一个的更新;
其中,经更新的分组消息传送显示数据用于将所定位的分组消息传送模态数据项目的内容的至少一部分在所述分组消息传送显示界面上显示为一个或多个消息;并且其中,经更新的即时消息传送显示数据可以用于在即时消息传送界面上显示对新的分组公告板模态数据对象的通知或者对更新的通知。
数据对象中的每个可以与存储器中的时序数据相关联,并且可以基于时序数据来生成分组消息传送和分组公告板显示数据,以使得由该序列消息横跨的时间间隔与由所发布的项目的集合横跨的时间间隔至少部分地重叠。
根据本主题的第二方面,一种用户设备包括配置为保存客户端应用的存储器;以及连接至所述存储器并且配置为执行客户端应用的处理器,其中,所述客户端应用被配置为当在所述处理器上被执行时实现第一方面或其任何实施例的方法。
根据本主题的第三方面,一种计算机程序产品包括存储在计算机可读存储介质上存储的可执行客户端应用,并且被配置为当在对所述用户中的一个用户可用的用户设备的处理器上被执行时实现第一方面或其任何实施例的方法。
根据本主题的第四方面,一种在一组用户之间实现通信的计算机实现的方法,所述方法包括由计算机系统实现以下步骤:经由网络在所述用户系统处从在相应的用户设备上运行的多个客户端应用中的每个客户端应用接收由该客户端应用所生成的相应的多个分组数据对象,所述分组数据对象中的每个包括:针对用户分组的内容,以及对表示分组消息传送模态或分组公告板模态的模态的指示;将所接收的分组数据对象中的每一个存储在第一远程可访问的数据存储器中,由此在用户设备上运行的客户端应用可以经由网络访问第一数据存储器,以便访问存储在其内的两个模态的分组数据对象;访问对分组数据对象中的每个的模态指示;并且如果所访问的模态指示表示分组公告板模态,则将分组数据对象的内容副本单独存储在第二远程可访问的数据存储器中,由此在另一计算机设备上运行的不同应用可以经由网络访问第二数据存储器,以便访问存储在其内的分组公告板模态数据对象内容。
在实施例中,所接收的数据对象可以具有不同的应用不可解译的格式,并且该方法还可以包括:由计算机系统向所接收的分组公告板模态的分组数据对象中的至少一个,且在一些情况下每一个,应用格式转换,以便以不同应用可解译的格式来渲染其内容。
所述内容的副本可以以该格式被存储在第二数据存储器中,或者格式转换响应于不同应用请求该内容的副本而被应用。例如,可以将格式转换应用于所接收的每个分组公告板数据对象以用于存储在第二数据存储器中。
可替代地,可以响应于不同的应用请求该内容的副本而应用格式转换。
不同应用是专用的分组公告板应用,例如OneNote或SharePoint应用。
可替代地,不同应用可以是Web浏览器,例如被配置为直接经由HTML或经由对Web浏览器的合适插件之一提供OneNote或SharePoint访问。
第二数据存储器可以是专用分组公告板数据存储器,其中,指示模态的任何分组数据对象的内容表示分组消息传送模态没有存储在专用分组公告板数据存储器中。
用户设备可以是移动设备且客户端应用可以是移动设备,即应用。
例如,移动设备中的每一个可以是电话或平板设备。
另一计算机设备可以是膝上型或台式计算机。
根据本主题的第五方面,一种计算机程序产品包括存储在计算机可读存储介质上存储的可执行客户端应用,并且被配置为当在对所述用户中的一个用户可用的用户设备的处理器上被执行时,实现第四方面或其任何实施例的方法。
根据本主题的第六方面,一种用于在一组用户之间实现通信的计算机系统,所述计算系统包括:网络接口,其被配置为经由网络从在相应的用户设备上运行的多个客户端应用中的每个客户端应用接收由所述客户端应用所生成的相应的多个分组数据对象,所述分组数据对象中的每个分组数据对象包括:针对所述用户分组的内容,以及对表示分组消息传送模态或分组公告板模态之一的模态的指示;以及一个或多个处理器,每个处理器被配置为执行相应的数据对象管理代码,并且由此使得所述一个或多个处理器实现以下步骤:
将所接收的分组数据对象中的每个分组数据对象存储在第一远程可访问的数据存储中,由此在所述用户设备上运行的所述客户端应用能够经由所述网络来访问第一数据存储以便访问存储在其中的这两个模态的分组数据对象;
访问对所述分组数据对象中的每个分组数据对象的模态的指示;并且
如果所访问的对模态的所述指示表示所述分组公告板模态,则将所述分组数据对象的内容的副本单独地存储在第二远程可访问的数据存储中,由此在另一计算机设备上运行的不同的应用能够经由所述网络来访问第二数据存储,以便访问存储在其中的所述分组公告板模态数据对象内容。
尽管已经用特定于结构特征和/或方法动作的语言描述了本主题,但是要理解的是,在所附权利要求中定义的本主题不一定限于上文所描述的特定特征或动作。相反,上文所描述的特定特征和动作是作为实现权利要求的示例性形式而公开的。

Claims (15)

1.一种在一组用户之间实现通信的计算机实现的方法,所述方法包括在对所述用户中的一个用户可用的用户设备的处理器上执行客户端应用以实现以下步骤:
经由网络在所述用户设备与至少一个其他设备之间发送和接收分组数据对象,所述分组数据对象中的每个包括:对表示多个用户分组中的相关联的一个的用户分组的指示、针对所述相关联的用户分组的内容、以及对表示分组消息传送模态或分组公告板模态之一的模态的指示;
所述客户端应用接收对所述多个用户分组中的一个用户分组的当前选择,并且基于对用户分组的所述指示和对模态的所述指示,针对当前选择的分组在所述用户设备的存储器中生成:
(i)分组消息传送显示数据,其用于将与所述当前选择的分组相关联的分组消息传送模态数据对象的内容的至少一部分在分组消息传送显示界面上显示为消息的序列,以及
(ii)分组公告板显示数据,其用于将与所述当前选择的分组相关联的分组公告板模态数据对象的内容的至少一部分在分组公告板显示界面上显示为所发布的项目的集合;
所述客户端应用通过基于所述分组消息传送显示数据控制所述显示器在所述分组消息传送显示界面上显示所述消息的序列,来在针对所述当前选择的分组的分组消息传送模式下操作;以及
响应于模式切换指令,所述客户端应用通过基于所述分组消息传送显示数据控制所述显示器在所述分组公告板显示界面上替代地显示所述所发布的项目的集合,来切换至针对所述当前选择的分组的分组公告板模式,由此,单个应用针对同一用户分组提供分组消息传送模态和分组公告板模态两者。
2.根据权利要求1所述的方法,其中,所述步骤还包括:
在所述用户设备处从所述用户接收内容生成输入;以及
由所述客户端应用生成新的分组数据对象以用于发送至所述其他设备,其中,所述新的分组数据对象包括对表示当前选择的分组的用户分组的指示,以及从所述内容生成输入导出的和/或基于所述内容生成输入所选择的内容;
其中,所述客户端应用在所述新的分组数据对象中包括表示以下内容的模态的指示符:在所述内容生成输入是在所述分组消息传送模式下操作时接收的情况下,所述分组消息传送模态;或者在所述内容生成输入是在所述分组公告板模式下操作时接收的情况下,所述分组公告板模态。
3.根据权利要求1或2所述的方法,其中,所述模式切换指令是由所述用户手动地发起的。
4.根据权利要求3所述的方法,其中,所述模式切换指令是由所述用户通过以下操作发起的:
执行单个手势,由此所述客户端应用响应于所述单个手势,从所述分组消息传送模式切换至所述分组公告板模式,或者
选择在所述分组消息传送显示界面上显示的与所述分组公告板显示界面有关的通知。
5.一种根据任一前述权利要求所述的方法,其中,所述步骤还包括:
在所述用户设备处经由所述网络从所述其他设备接收其对模态的指示表示所述分组公告板模态的新的分组数据对象,或者检测对所述分组公告板模态数据对象中的一个的更新,所述客户端应用响应于此而更新所述分组消息传送显示数据,经更新的显示数据用于在所述分组消息传送界面上显示对所述新的分组公告板模态数据对象的通知或者对所述分组公告板模态数据对象的更新的通知。
6.根据权利要求5所述的方法,其中:
所述通知是在所述消息的序列中、在与在所述用户设备处接收所述新的分组公告板模态数据对象的时序或者其从所述其他设备发送的时序或者所述更新的时序相对应的所述序列中的位置处显示的;和/或
所述通知是可选择的,并且响应于所述用户选择所述通知,所述客户端应用通过控制所述显示器将所述新的分组公告板模态数据对象的所述内容的至少一部分在所述分组公告板界面上显示为新的所发布的项目,来切换至所述分组公告板模式。
7.根据任一前述权利要求所述的方法,其中,所述分组公告板显示数据是在接收所述模式切换指令之前,当所述分组公告板显示界面没有被显示时生成的。
8.一种计算机程序产品,其用于在一组用户之间实现通信,并且包括存储在计算机可读存储介质上的可执行客户端应用,并且被配置为当在对所述用户中的一个用户可用的用户设备的处理器上被执行时,实现前述或以下的权利要求中的任何一项的方法。
9.一种用于在一组用户之间实现通信的计算机系统,所述计算系统包括:
网络接口,其被配置为经由网络从在相应的用户设备上运行的多个客户端应用中的每个客户端应用接收由所述客户端应用所生成的相应的多个分组数据对象,所述分组数据对象中的每个分组数据对象包括:针对所述用户分组的内容,以及对表示分组消息传送模态或分组公告板模态之一的模态的指示;
一个或多个处理器,每个处理器被配置为执行相应的数据对象管理代码,并且由此使得所述一个或多个处理器实现以下步骤:
将所接收的分组数据对象中的每个分组数据对象存储在第一远程可访问的数据存储中,由此在所述用户设备上运行的所述客户端应用能够经由所述网络来访问第一数据存储以便访问存储在其中的这两个模态的分组数据对象;
访问对所述分组数据对象中的每个分组数据对象的模态的指示;以及
如果所访问的对模态的指示表示所述分组公告板模态,则将所述分组数据对象的内容的副本单独地存储在第二远程可访问的数据存储中,由此在另一计算机设备上运行的不同的应用能够经由所述网络来访问第二数据存储,以便访问存储在其中的所述分组公告板模态数据对象内容。
10.根据权利要求9所述的计算机系统,其中,所接收的数据对象具有不能够由不同的应用解译的格式,并且所实现的步骤还包括:
向所述分组公告板模态的所接收的分组数据对象中的至少一个分组数据对象应用格式转换,以便以不同的应用能够解译的格式来渲染其内容。
11.根据权利要求1至7中任何一项所述的方法,包括:
当客户端在所述分组消息传送模式下操作时接收界面更新指令,其中,所述客户端应用根据所述界面更新指令来更新所述存储器中的所述分组消息传送显示数据和所述分组公告板显示数据。
12.根据权利要求11所述的方法,其中,所述分组消息传送显示数据在以下情况下被更新:
在接收所述模式切换指令之前,当所述分组公告板显示界面没有被显示时,或者
响应于所述模式切换指令。
13.根据权利要求11或12所述的方法,其中,所述界面更新指令是由来自所述用户的滚动输入手动地发起的,其中,所述客户端应用更新:所述分组消息传送显示数据以滚动通过所述消息的序列达对应的量,以及所述分组公告板显示数据以滚动通过所述所发布的项目的集合达对应的量。
14.根据权利要求11或12所述的方法,其中,通过所述用户输入搜索项来手动地发起所述界面更新指令,其中,所述客户端应用搜索所述分组数据对象以定位所述分组公告板模态数据对象中与所述搜索项相匹配的一个或多个分组公告板模态数据对象,以及所述分组消息传送模态数据对象中与所述搜索项相匹配的一个或多个分组消息传送模态数据,由此,使用同一搜索项来搜索这两个模态;
其中,经更新的分组消息传送显示数据用于将所定位的分组消息传送模态数据项目的内容的至少一部分在所述分组消息传送显示界面上显示为一个或多个消息;
其中,经更新的分组公告板显示数据用于将所定位的分组公告板模态数据项目的内容的至少一部分在所述分组公告板显示界面上显示为一个或多个所发布的项目。
15.一种根据权利要求1至7或11至14中的任何一项所述的方法,其中,所述数据对象中的每个数据对象与所述存储器中的时序数据相关联,并且分组消息传送和分组公告板显示数据是基于所述时序数据生成的,以使得由序列消息横跨的时间间隔与由所发布的项目的所述集合横跨的时间间隔至少部分地重叠。
CN201680073495.8A 2015-12-14 2016-12-06 双模客户端应用 Withdrawn CN108370380A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
IN6701/CHE/2015 2015-12-14
IN6701CH2015 2015-12-14
US15/087,457 2016-03-31
US15/087,457 US20170168692A1 (en) 2015-12-14 2016-03-31 Dual-Modality Client Application
PCT/US2016/065034 WO2017105900A2 (en) 2015-12-14 2016-12-06 Dual-modality client application

Publications (1)

Publication Number Publication Date
CN108370380A true CN108370380A (zh) 2018-08-03

Family

ID=59018587

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680073495.8A Withdrawn CN108370380A (zh) 2015-12-14 2016-12-06 双模客户端应用

Country Status (4)

Country Link
US (1) US20170168692A1 (zh)
EP (2) EP3425872A1 (zh)
CN (1) CN108370380A (zh)
WO (1) WO2017105900A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110941573A (zh) * 2018-09-25 2020-03-31 富士施乐株式会社 控制装置及计算机可读介质
US20210328948A1 (en) * 2019-03-29 2021-10-21 Verizon Media Inc. Systems and methods for initiating communication between users based on machine learning techniques

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10708216B1 (en) * 2016-05-17 2020-07-07 Rao Sanjay K Conversational user interfaces and artificial intelligence for messaging and mobile devices
US10339211B1 (en) * 2016-05-31 2019-07-02 Google Llc Systems and methods for synchronizing comments to an electronic document across platforms
US20180183618A1 (en) * 2016-12-23 2018-06-28 Facebook, Inc. Techniques for group message thread link joining
US11196835B2 (en) * 2017-01-09 2021-12-07 International Business Machines Corporation Displaying context in group chats using member tagging
US10454937B2 (en) * 2017-03-06 2019-10-22 International Business Machines Corporation Technology for generating a multi-user response in a network
CN107316228A (zh) * 2017-06-29 2017-11-03 北京小米移动软件有限公司 信息展示方法、装置、设备及存储介质
US11709753B2 (en) 2017-10-09 2023-07-25 Box, Inc. Presenting collaboration activities
US11928083B2 (en) 2017-10-09 2024-03-12 Box, Inc. Determining collaboration recommendations from file path information
US11030223B2 (en) * 2017-10-09 2021-06-08 Box, Inc. Collaboration activity summaries
US20190114046A1 (en) * 2017-10-15 2019-04-18 Sgrouples, Inc. Event calendar and document editing with advanced features and integrated personal cloud manager
US10878019B2 (en) * 2017-10-20 2020-12-29 Dropbox, Inc. Hosted storage for third-party services
US11113411B2 (en) 2017-10-20 2021-09-07 Dropbox, Inc. Authentication security model for a content management system
US10979235B2 (en) 2017-10-20 2021-04-13 Dropbox, Inc. Content management system supporting third-party code
US10587553B1 (en) * 2017-12-29 2020-03-10 Entefy Inc. Methods and systems to support adaptive multi-participant thread monitoring
CN108563378B (zh) * 2018-04-25 2020-06-16 维沃移动通信有限公司 一种消息管理方法及终端
CN109033386B (zh) * 2018-07-27 2020-04-10 北京字节跳动网络技术有限公司 搜索排序方法、装置、计算机设备和存储介质
US11218435B1 (en) 2018-07-31 2022-01-04 Snap Inc. System and method of managing electronic media content items
US10757208B2 (en) 2018-08-28 2020-08-25 Box, Inc. Curating collaboration activity
US11163834B2 (en) * 2018-08-28 2021-11-02 Box, Inc. Filtering collaboration activity
US10895964B1 (en) * 2018-09-25 2021-01-19 Snap Inc. Interface to display shared user groups
US10652208B2 (en) * 2018-10-03 2020-05-12 Axonius Solutions Ltd. System and method for managing network connected devices
CN109245998A (zh) * 2018-10-09 2019-01-18 郑州云海信息技术有限公司 一种访问nas的方法、系统及相关组件
WO2020212762A2 (en) 2019-04-16 2020-10-22 International Medical Solutions, Inc. Methods and systems for syncing medical images across one or more networks and devices
US20210117213A1 (en) * 2019-10-22 2021-04-22 Moveworks, Inc. Automated service agent for servicing issues described in a group communication channel
US10880496B1 (en) * 2019-12-30 2020-12-29 Snap Inc. Including video feed in message thread
WO2021183341A1 (en) * 2020-03-09 2021-09-16 Qsinx Management Llc Method and device for invoking public or private interactions during a multiuser communication session
KR20210135683A (ko) * 2020-05-06 2021-11-16 라인플러스 주식회사 인터넷 전화 기반 통화 중 리액션을 표시하는 방법, 시스템, 및 컴퓨터 프로그램
US11188215B1 (en) * 2020-08-31 2021-11-30 Facebook, Inc. Systems and methods for prioritizing digital user content within a graphical user interface
US11538578B1 (en) 2021-09-23 2022-12-27 International Medical Solutions, Inc. Methods and systems for the efficient acquisition, conversion, and display of pathology images
USD1009061S1 (en) * 2022-03-04 2023-12-26 Resmed Corp. Display screen or portion thereof with a graphical user interface

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020016818A1 (en) * 2000-05-11 2002-02-07 Shekhar Kirani System and methodology for optimizing delivery of email attachments for disparate devices
AU2002251205A1 (en) * 2001-03-30 2002-10-15 British Telecommunications Public Limited Company Multi-modal interface
US7275217B2 (en) * 2002-09-09 2007-09-25 Vijay Anand Saraswat System and method for multi-modal browsing with integrated update feature
AU2003291043A1 (en) * 2002-11-18 2004-06-15 America Online, Inc. Handling a multimedia object associated with an electronic message
US7783708B2 (en) * 2005-01-27 2010-08-24 Microsoft Corporation Attachment browser
US20060248210A1 (en) * 2005-05-02 2006-11-02 Lifesize Communications, Inc. Controlling video display mode in a video conferencing system
US7661065B2 (en) * 2005-05-24 2010-02-09 Microsoft Corporation Systems and methods that facilitate improved display of electronic documents
CN100463405C (zh) * 2005-06-09 2009-02-18 腾讯科技(深圳)有限公司 基于群组的通信方法及系统
US20080285729A1 (en) * 2007-05-16 2008-11-20 Jay Glasgow Communication Modalities Management
KR101079624B1 (ko) * 2008-05-06 2011-11-03 삼성전자주식회사 브라우저의 표시 방법 및 이를 이용하는 휴대 단말기
US8881020B2 (en) * 2008-06-24 2014-11-04 Microsoft Corporation Multi-modal communication through modal-specific interfaces
US8464167B2 (en) * 2008-12-01 2013-06-11 Palo Alto Research Center Incorporated System and method for synchronized authoring and access of chat and graphics
US20100223345A1 (en) * 2009-03-02 2010-09-02 Microsoft Corporation Communications application having conversation and meeting environments
US9047584B2 (en) * 2010-09-16 2015-06-02 Facebook, Inc. Web-based user interface tool for social network group collaboration
US9762524B2 (en) * 2011-09-28 2017-09-12 Elwha Llc Multi-modality communication participation
US9503550B2 (en) * 2011-09-28 2016-11-22 Elwha Llc Multi-modality communication modification
US20140143355A1 (en) * 2012-06-14 2014-05-22 Bert Berdis Method and System for Video Texting
US9083816B2 (en) * 2012-09-14 2015-07-14 Microsoft Technology Licensing, Llc Managing modality views on conversation canvas
WO2014078598A1 (en) * 2012-11-14 2014-05-22 invi Labs, Inc. System for and method of embedding rich media into text messages
US20140189537A1 (en) * 2013-01-03 2014-07-03 Qualcomm Incorporated Framework and method for dynamic talker ID based media treatment in a group communication
US9537810B2 (en) * 2013-08-14 2017-01-03 Red Hat, Inc. System and method for flexible holding storage during messaging
GB201404617D0 (en) * 2014-03-14 2014-04-30 Microsoft Corp Instant messaging
GB201404615D0 (en) * 2014-03-14 2014-04-30 Microsoft Corp Instant messaging
US10212111B2 (en) * 2014-09-12 2019-02-19 Google Llc System and interface that facilitate selecting videos to share in a messaging application
US20160139785A1 (en) * 2014-11-16 2016-05-19 Cisco Technology, Inc. Multi-modal communications

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110941573A (zh) * 2018-09-25 2020-03-31 富士施乐株式会社 控制装置及计算机可读介质
US20210328948A1 (en) * 2019-03-29 2021-10-21 Verizon Media Inc. Systems and methods for initiating communication between users based on machine learning techniques
US11641329B2 (en) * 2019-03-29 2023-05-02 Verizon Patent And Licensing Inc. Systems and methods for initiating communication between users based on machine learning techniques

Also Published As

Publication number Publication date
WO2017105900A2 (en) 2017-06-22
EP3425872A1 (en) 2019-01-09
WO2017105900A3 (en) 2017-07-27
US20170168692A1 (en) 2017-06-15
EP3375162A2 (en) 2018-09-19

Similar Documents

Publication Publication Date Title
CN108370380A (zh) 双模客户端应用
US11303590B2 (en) Suggested responses based on message stickers
CN110709869B (zh) 用于在聊天对话中与嵌入式应用一起使用的建议项目
US10409381B2 (en) Gestures, interactions, and common ground in a surface computing environment
CN106462679B (zh) 从虚拟白板主张数据
Gross Supporting effortless coordination: 25 years of awareness research
Whitworth The social requirements of technical systems
Chung et al. VisPorter: facilitating information sharing for collaborative sensemaking on multiple displays
EP2667340A1 (en) Method and apparatus for operating teacher and student devices for a group activity
US20100306670A1 (en) Gesture-based document sharing manipulation
CN106462541A (zh) 用于管理、共享和组织存储在多项云端服务上的信息的系统和方法
Hjorth et al. Digital media practices in households: Kinship through data
Streitz et al. Cooperative buildings: integrating information, organization, and architecture
KR20080008319A (ko) 공동 작업 공간
AU2007324103A1 (en) Shared space for communicating information
CN108713183A (zh) 用于管理应用的操作的方法和电子设备
CN107704169A (zh) 虚拟人的状态管理方法和系统
US20210075758A1 (en) Server and user terminal for supporting management of social network
US20210278941A1 (en) Collaboration User Interface for Computing Device
US20230101773A1 (en) Data storage and retrieval system for subdividing unstructured platform-agnostic user input into platform-specific data objects and data entities
Brandau et al. Critical and participatory design in-between the tensions of daily schooling: working towards sustainable and reflective digital school development
Thimm Media technology and media logic (s): the media grammar approach
US20240176630A1 (en) Machine learning for targeting help content
Hespanhol Human-computer intra-action: a relational approach to digital media and technologies
Perminow Becoming Digital, Elderly Engagements with a Norwegian Digital Present

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WW01 Invention patent application withdrawn after publication

Application publication date: 20180803

WW01 Invention patent application withdrawn after publication