即时消息传送群组投票的制作方法

文档序号:11162089阅读:322来源:国知局
即时消息传送群组投票的制造方法与工艺

基于分组的通信系统允许诸如个人计算机之类的设备的用户跨使用诸如互联网协议(IP)之类的分组协议的计算机网络进行通信。基于分组的通信系统可以用于各种类型的通信事件。可以建立的通信事件包括语音通话、视频通话、即时消息传送、语音邮件、文件传输等。这些系统对用户是有利的,这是因为它们通常具有显著低于固定线路或移动网络的成本。对于长距离通信来说尤其是这样的情况。为了使用基于分组的系统,用户在他们的设备上安装并执行客户端软件。客户端软件提供基于分组的连接以及诸如注册和认证之类的其他功能。

通信系统允许设备的用户跨诸如互联网之类的计算机网络进行通信。可以建立的通信事件包括语音通话、视频通话、即时消息传送、语音邮件、文件传输等。

即时消息传送通信会话允许经由计算机网络在计算机设备的用户之间进行聊天。每个用户可以将文本输入到字段中、致动发送按钮、并且由此创建传送至另一个用户的即时消息。

对即时消息传送通信会话的用户而言,创建投票并且在会话期间与即时消息传送通信会话的其他用户分享投票以接收他们的反馈是已知的。创建投票的用户手动地指定每个投票选项。例如,创建投票以使得一群朋友能够决定去哪里去吃午餐的用户找出附近餐馆的名称、手动地将它们输入为投票选项、并且与该群组的其余人分享投票。



技术实现要素:

发明人已经认识到,对于群组即时消息传送通信会话中的用户而言,当前没有办法在已经接收的消息上协作。例如,如果用户接收到需要反馈(例如,在投票消息中的选票)的消息,则用户没有办法在原始消息的上下文中提供该反馈。相反,用户必须创建并发送新的消息,这不必要地重复了即时消息传送通信会话的聊天历史中的相同信息。

根据本公开的一个方面,提供了一种用于对在多个参与者中的每个都与参与者设备相关联的多个参与者之间的即时消息传送通信会话期间、通过通信网络所交换的消息进行更新的方法,所述消息包括多个可更新的字段,所述方法包括:将所述多个可更新的字段中的每个字段的状态信息保存在存储器中;检测所述多个参与者中的一个或多个参与者的、用于编辑所述可更新的字段中的至少一个可更新的字段的至少一个选择;响应于所述检测,更新所述多个可更新的字段中的所述至少一个可更新的字段的所述状态信息;以及将经更新的状态信息传送至所述即时消息传送通信会话的所述参与者中的至少一个参与者。

根据本公开的进一步的方面,提供了一种用户设备,所述用户设备包括:存储器;显示器,所述显示器被配置为显示在与所述用户设备相关联的参与者与每个都与参与者设备相关联的至少一个进一步的参与者之间的即时消息传送通信会话期间、通过通信网络所交换的消息,所述消息包括多个可更新的字段;以及被配置为运行客户端应用的一个或多个处理器,其中,所述客户端应用被配置为执行以下操作:将所述多个可更新的字段中的每个可更新的字段的状态信息保存在所述存储器中;检测所述多个参与者中的一个或多个参与者的、用于编辑所述可更新的字段中的至少一个可更新的字段的至少一个选择;响应于所述检测,更新所述多个可更新的字段中的所述至少一个可更新的字段的所述状态信息;以及将经更新的状态信息传送至所述即时消息传送通信会话的所述参与者中的至少一个参与者。

根据本公开的另一个方面,提供了一种计算机程序产品,所述计算机程序产品是在计算机可读介质上实施的并且被配置为当在处理器上被执行时执行本文所述的方法中的任何一个方法。

根据本公开的一个方面,提供了一种计算机程序产品,所述计算机程序产品用于更新在多个参与者中的每个都与参与者设备相关联的多个参与者之间的即时消息传送通信会话期间、通过通信网络所交换的消息,所述消息包括多个投票选项,所述投票选项中的每个投票选项都与可更新的字段相关联,所述计算机程序产品是在计算机可读介质上实施的并且被配置为当在处理器上执行时执行以下操作:将所述多个可更新的字段中的每个可更新的字段的状态信息保存在存储器中;检测所述多个参与者中的一个或多个参与者的、用于编辑所述可更新的字段中的至少一个字段的至少一个选择;响应于所述检测,更新所述多个可更新的字段中的所述至少一个可更新的字段的所述状态信息;以及将经更新的状态信息传送给所述即时消息传送通信会话的所述参与者中的至少一个参与者。

提供了本发明内容以用简化的形式引入了将在以下的具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。

附图说明

为了更好地理解本公开并且示出如何实现本公开,现在将作为示例对以下附图进行参考,其中:

图1示出了通信系统;

图2示出了用户终端的示意图;

图3是针对生成投票消息的过程的流程图;

图4a示出了显示通信客户端应用的聊天窗口的用户终端;

图4b示出了显示通信客户端应用的第一投票生成窗口的用户终端;

图4c示出了显示通信客户端应用的第二投票生成窗口的用户终端;

图4d示出了显示通信客户端应用的第三投票生成窗口的用户终端;

图4e示出了在通信客户端应用的聊天窗口中显示已发送的投票的用户终端;

图5是针对编辑投票消息的过程的流程图。

具体实施方式

现在将仅通过示例的方式描述实施例。

图1示出了通信系统100,其包括与用户终端102相关联的第一用户104(用户A)、与用户终端108相关联的第二用户110(用户B)、与用户终端112相关联的第三用户114(用户C)、和与用户终端116相关联的第四用户118(用户D)。用户终端可以在通信系统100中通过通信网络106进行通信,从而允许用户通过通信网络106与彼此通信。通信网络106可以是具有提供用户终端之间的通信信道的能力的任何适当的网络。例如,通信网络106可以是互联网或者诸如高数据速率移动网络之类的另一种类型的网络,例如第三代(“3G”)移动网络。

应当注意的是,在可替代的实施例中,用户终端可以经由未在图1中示出的额外的中间网络而连接至通信网络106。例如,如果用户终端是移动设备,则其可以经由诸如GSM或UMTS网络之类的蜂窝移动网络(未在图1中示出)而连接至通信网络106。

用户终端可以是例如移动电话、个人数字助理(“PDA”)、个人计算机(“PC”)(包括,例如WindowsTM、Mac OSTM和LinuxTM PC)、平板计算机、游戏设备、或者能够连接至通信网络106的其他嵌入式设备。

用户终端102执行由与通信系统100相关联的软件提供商所提供的通信客户端应用105。通信客户端应用105是在用户终端102中的本地处理器上执行的软件程序。通信客户端应用105在用户终端102处执行所需的处理,以便使得用户终端102通过通信系统100发送和接收数据。在用户终端102处所执行的通信客户端应用105可以通过数字证书的呈现(例如,证明用户104是通信系统的真实订阅者——在WO2005/009019中更加详细地进行了描述)而被认证以通过通信系统进行通信。

用户终端108、112、116各自在本地处理器上执行通信客户端应用,所述通信客户端应用与在用户终端102处所执行的通信客户端应用105相对应。在图1中所示出的用户终端是通信系统中的末端。为了清楚起见,图1仅仅示出四个用户和四个用户终端,但是更多的用户和用户设备可以被包括在通信系统100中,并且可以使用在相应的用户设备上执行的相应的通信客户端而通过通信系统100进行通信,如在本领域中公知的。

在即时消息传送通信会话期间交换的消息是通过网络106来传输的。它们可以经由连接至网络106的网络实体(例如,服务器)而在用户终端之间传输。可替代地或者额外地,通信会话的消息可以在用户终端之间的点对点路径(即,不经由通信系统100中的任何服务器的路径)上传输,如在本领域中公知的。

图2示出了其上执行有用于通过通信系统100来进行通信的通信客户端应用的用户终端102的详细视图。用户终端102包括连接有诸如屏幕或触摸屏之类的显示器204的中央处理单元(“CPU”)202、诸如小键盘206之类的输入设备、相机208、和触摸屏204。输出音频设备210(例如,扬声器)和输入音频设备212(例如,麦克风)连接至CPU 202。可以将显示器204、小键盘206、相机208、输出音频设备210、和输入音频设备212集成到如在图2中所示出的用户终端102中。在可替代用户终端中,显示器204、小键盘206、相机208、输出音频设备210、和输入音频设备212中的一个或多个可以不集成到用户终端102中,并且可以经由相应的接口而连接至CPU 202。这样的接口的一个示例是USB接口。CPU 202连接到网络接口224,例如用于与通信网络106进行通信的调制解调器。可以将网络接口224集成到如在图2中所示出的用户终端102中。在可替代用户终端中,没有将网络接口224集成到用户终端102中。用户终端102还包括用于存储数据的存储器226,如在本领域中公知的那样。存储器226可以是永久性存储器,例如ROM。存储器226可以可替代是临时性存储器,例如RAM。

用户终端102安装有通信客户端应用105,其中通信客户端应用105被存储在存储器226中并且被设置为在CPU 202上执行。图2还示出了在CPU 202上执行的操作系统(“OS”)214。在OS 214顶层运行的是在上文中提到的通信客户端应用112的软件堆栈216。软件堆栈示出了I/O层218、客户端引擎层220、和客户端用户界面层(“UI”)222。每一层负责具体的功能。因为每一层通常与两个其他层进行通信,所以这些层被认为布置在堆栈中,如在图2中所示。操作系统214管理计算机的硬件资源,并且处理经由网络接口224而往来于通信网络106的数据。I/O层218包括音频和/或视频编码解码器,其接收到来的经编码的流并且对它们进行解码以适当地输出至扬声器210和/或显示器204,其还从麦克风212和/或相机208接收未编码的音频和/或视频数据并且对它们进行编码以作为流而传输至通信系统100的其他末端用户终端。客户端引擎层220处理如在上文中所讨论的VoIP系统的连接管理功能,例如通过基于服务器的或者P2P的地址查找和认证来建立呼叫或其他连接。客户端引擎还可以负责没有在本文中讨论的其他辅助功能。客户端引擎220还与客户端用户接口层222进行通信。客户端引擎220还可以被设置为控制客户端用户接口层222以经由在显示器204上显示的客户端的用户界面向用户终端102的用户呈现信息,并且经由用户界面从用户终端102的用户接收信息。

投票消息创建

现在将参考图3来描述通过通信网络106在多个用户设备(在本文中另外被称为用户终端)之间的即时消息传送通信会话期间所实现的方法,其中,图3是由在用户终端102上执行的客户端应用105所执行的用于生成投票消息的过程300的流程图。还将对图4a、4b、4c、4d和4e进行参考,其示出了作为过程300的一部分在各种实施例中所呈现的示例性客户端用户界面。

参考用户A 104、用户B 110、用户C 114和用户D 118参与即时消息传送会话来描述本公开的实施例,其中可以在即时消息传送通信会话中在用户终端102、108、112和116之间发送和接收信息。

由在用户终端102上执行的通信客户端应用105提供的客户端用户界面可用于显示由用户A 104输入的待在即时消息传送通信会话的消息中发送但是还未被发送的文本。具体而言,通信客户端应用105经由客户端用户界面来显示消息字段402(在图4a中所示),其中,用户A 104能够使用例如触摸屏204或小键盘206向所述消息字段402输入文本。客户端用户界面显示用户A 104可以在输入这样的文本之后选择的可选择的发送选项408。作为响应,通信客户端应用105创建包含输入文本的消息,并且经由通信网络106将所创建的消息发送至用户终端108、112、116。将从用户终端102发送的消息和从用户终端108、112、116接收的消息显示在聊天窗口403中。

在步骤S302处,通信客户端应用105基于检测由通信客户端应用105所提供的与客户端用户界面的交互来检测由用户A 104进行的用于向用户B-D发送投票消息的选择。通信客户端应用105可以经由客户端用户界面显示用户A 104能够使用诸如鼠标(未在图2中示出)、小键盘206之类的合适的输入设备或使用触摸屏204来选择的菜单按钮(图4a和4e中的404)。通过浏览菜单选项,用户A 104能够进行合适的选择以向用户B-D发送投票消息。可替代地或额外地,通信客户端应用105可以经由客户端用户界面来显示用于发送投票消息的专用按钮。

响应于在步骤S302处的检测,过程300继续至步骤S304。在步骤S304处,通信客户端应用105经由客户端用户界面来显示第一投票生成窗口405。在图4b中示出了第一投票生成窗口405。

在步骤S306处,通信客户端应用105接收投票问题和搜索项。

如在图4b中所示,第一投票生成窗口405包括投票问题输入字段408。可以由用户A 104使用诸如小键盘206之类的合适的输入设备或使用触摸屏204来在投票问题输入字段408中输入投票问题。图4b示出了已经被输入到投票问题输入字段408中的示例投票问题409“这些地方中的哪一个地方?”。

第一投票生成窗口405包括第一可选择的图标410和第二可选择的图标412。如果用户A 104希望通信客户端应用105执行针对投票选项的自动化搜索,则用户A 104选择第一可选择的图标410,而如果他想手动地输入投票选项,则选择第二可选择的图标412。

响应于检测到对第一可选择的图标410的选择,通信客户端应用105可以经由客户端用户界面来显示第二投票生成窗口425(在图4c中所示)。可替代地,在选择了第一可选择的图标410之后,用户A 104可以选择可选择的按钮407a以导航至第二投票生成窗口425。

如图4c中所示的第二投票生成窗口425包括搜索项输入字段414。

可以由用户A 104使用诸如小键盘206之类的合适的输入设备或使用触摸屏204在搜索项输入字段414中输入搜索项。图4c示出了已经被输入到投票问题输入字段408中的示例搜索项416“披萨”。

用户A 104可以选择可选择的按钮407a以导航至第三投票生成窗口435。

在步骤S308处,通信客户端应用105可选地确定用户A的上下文。在一个示例中,步骤S308包括确定用户终端102的位置(从而确定用户A 104的位置)。

通信客户端应用105可以以各种方式确定用户终端102的位置。

在一个示例中,通信客户端应用105可以通过与在OS 214顶层运行的位置确定模块230进行通信来确定用户终端102的位置。位置确定模块230被配置为确定用户终端102的位置。位置确定模块230使用地理位置技术以用于在相对于地球表面的地理位置方面来确定用户终端102的位置;所述地理位置技术例如诸如GPS(全球定位系统,包括诸如辅助GPS或差分GPS的潜在变体)、GLONASS(全球导航卫星系统)、或伽利略之类的基于卫星的定位系统;和/或相对于多个不同的无线基站或具有已知位置的接入点的三边测量(或更一般地,多边测量);和/或基于检测相对于已知基站或接入点的信号强度的技术。其他公知的方法可以用于使得用户终端102来确定其位置。在该示例中,响应于向位置确定模块230发送针对位置信息的请求,通信客户端应用105基于从位置确定模块230接收的位置信息(例如,纬度/经度信息)来确定用户终端102的位置。

通信客户端应用105可以基于对由用户A 104选择或输入的用户终端102的位置的指示来确定用户终端102的位置。例如,用户A 104可以在由通信客户端应用105所提供的客户端用户界面中手动地输入他的位置。在另一个示例中,用户A 104可以在由通信客户端应用105所提供的客户端用户界面中选择提供对用户A的位置的指示(例如,指示他在特定的城市、州、或国家)的在线状态或者输入情绪消息。

在另一示例中,通信客户端应用105可以基于机器学习技术来确定用户终端102的位置。例如,通信客户端应用105可以在一天的各个时间与位置确定模块230进行通信(这可以周期性地进行,例如每小时一次),并且如果用户终端102在经扩展的时间段内在相同区域中(由通信客户端应用105的提供者配置),则通信客户端应用105可以推断用户A的工作位置(基于用户终端102在早上8点至下午5点之间的位置)和用户A的家庭位置(基于用户终端102从下午6点起的位置)。因此,基于一天中的时间,通信客户端应用105能够预测用户终端102在这些预期的位置中的一个位置处。

用户A 104的其他上下文信息可以包括用户A的年龄、语言、国籍、和性别等。通信客户端应用105能够基于由用户A 102所输入的简档信息来确定该其他上下文信息。上下文信息还可以包括一天中的时间。

在步骤S310处,通信客户端应用105使用至少搜索项(term)416来执行搜索。步骤S310包括通信客户端应用105向与网络106耦合的网络服务器(未在图1中示出)发送包括搜索项416的搜索请求。网络服务器被配置为执行网络搜索引擎软件以针对万维网上的内容进行搜索。示例性搜索引擎是由所提供的BingTM搜索引擎。

如果执行步骤S308,则取决于所使用的搜索方法,上下文信息被包括在搜索项中的搜索请求中或搜索参数中。提供了上下文信息,因为这有助于向通信客户端应用105提供与用户A 104更相关的搜索结果。例如,如果位置信息被包括在搜索请求中,则通信客户端应用105被配置为向网络服务器发送搜索请求,该网络服务器被配置为基于搜索项416和位置信息来返回用户终端102附近的感兴趣的位置的搜索结果。例如,使用应用程序接口(API)(例如,微软Bing的兴趣点API)使得网络服务器能够基于搜索请求来在网络106中搜索存储感兴趣的位置以及与感兴趣的位置相关联的位置信息的数据库。

上下文信息还可以用于挑选合适的搜索介质。例如,如果上下文信息包括来自社交网络(例如,)的用户的好友列表,则通信客户端应用105可以在步骤S310处在用户A的社交网络的活动馈送中执行搜索。如本领域技术人员公知的,用户的活动馈送显示来自用户已经选择关注的其他用户和页面的活动(例如,状态更新、照片、视频、链接等)。

在步骤S312处,客户端应用105在第三投票生成窗口435中显示预先确定的数量的所返回的搜索结果。该预先确定的数量是由客户端应用105的提供者确定的。

图4d示出了第三投票生成窗口435,其包括响应于搜索请求而从网络服务器返回至客户端应用105的多个搜索结果418a-d。

在其中搜索请求包括搜索项416“披萨”和用户终端102的位置信息的示例中,通信客户端应用105接收关于在地理上位于接近用户终端102的位置的“披萨”地点的搜索结果。即,返回至客户端应用105的多个搜索结果418a-d是与搜索项416“披萨”相关的感兴趣的位置。

所返回的感兴趣的位置418a-d将被用作在发送给用户B-D的投票消息中的投票选项。图4d示出了第一感兴趣的位置“披萨广场”418a、第二感兴趣的位置“披萨披萨”418b、第三感兴趣的位置“Luigi的披萨”418c、和第四感兴趣的位置“Papa JJ的披萨”418d。

在向用户B-D发送投票消息之前,可以由用户A 104来编辑投票选项。例如,如果用户A 104不想在待发送给用户B-D的投票消息中包括所述投票选项中的一个或多个投票选项,则用户A 104可以通过选择与待移除的相应的投票选项相关联的可选择的投票选项移除图标420来移除所述投票选项中的一个或多个投票选项。

在检测到投票选项的移除之后,通信客户端应用105可以被配置为代替经移除的投票选项而将响应于搜索请求由网络服务器所返回的可替代的有兴趣的位置显示为投票选项。可替代地,通信客户端105可以被配置为仅仅是移除投票选项。

在向用户B-D发送投票消息之前,可以由用户A 104手动地输入额外的投票选项。

一旦用户A 104已经完成了编辑投票选项(如果必要的话),用户A 104就可以选择可选择按钮407a来向用户B-D发送包括投票问题409和投票选项418的投票消息。

响应于检测到对可选择按钮407a的选择,通信客户端应用105被配置为通过网络106将投票消息422发送至与用户B-D中的每个用户相关联的用户终端。

图4e示出了在由通信客户端应用105所提供的客户端用户界面的聊天窗口403中显示的已发送的投票消息422。如在图4e中所示,已发送的投票消息包括投票问题409和多个投票选项418。应当理解的是,在用户终端108、112、和115中的每个终端上执行的通信客户端应用都在由相应的通信客户端应用所提供的客户端用户的聊天窗口中显示已接收的投票消息422。

本公开的实施例通过基于用户的上下文(例如位置和搜索标准)而自动地生成投票的选项来改善希望生成在即时消息传送通信会话中使用的投票的用户的用户体验。通过自动地生成投票选项,投票消息可以被快速地生成,并且具有降低的数量的、必须由希望生成投票的用户执行的手动步骤。

与现有技术方法不同,在即时消息传送通信会话期间所交换的投票消息422被显示在由通信客户端应用105所提供的客户端用户界面的聊天窗口403中,即其中显示在即时消息传送通信会话期间所交换的消息的区域中。通过在聊天窗口403中显示投票消息422,可以保持IM对话的连续性并且增加用户参与度。

为了在生成投票的过程中的任何时间点导航离开投票生成窗口,用户A104可以选择可选择的按钮407b以返回至聊天窗口403。

编辑投票消息

本公开的实施例允许即时消息传送通信会话的参与者通过对投票选项418中的一个或多个投票选项进行投票来编辑所发送的投票消息422。

现在将参考图5来描述通过通信网络106在用户终端104、108、112、116之间的即时消息传送通信会话期间所实现的方法,其中图5是用于编辑投票消息的过程500的流程图。

可以由在相应的用户终端104、108、112、116上执行的每个通信客户端应用来执行过程500。可替代地,如果在即时消息传送通信会话期间所交换的消息是经由连接至网络106的网络实体(例如服务器)而通过网络106来传输的,则可以由该网络实体来执行过程500。

首先将关于待由在即时消息传送通信会话中所涉及的用户终端中的一个用户终端上执行的通信客户端应用(特别是在用户终端102上执行的通信客户端应用105)执行来描述过程500。

响应于将投票消息422通过网络106发送至与用户B-D中的每个用户相关联的用户终端,在步骤S502处,通信客户端应用105被配置为将投票消息422的状态信息存储在用户终端102的存储器(例如,存储器226)中。所述状态信息包括关于投票消息中的多个可更新的字段426的信息。所述状态信息还可以包括投票消息422的消息标识符、投票问题409、和投票选项418。

投票消息422的投票选项418中的每个投票选项与可更新的字段426相关联。可更新的字段426指示与其相关联的投票选项相关的用户反馈。在下文中将参照多个可更新的字段426来描述实施例,所述可更新的字段426包括指示针对与其相关联的投票选项的选票的数量的计数器值(如在图4e中所示)。然而,可更新的字段可以采取如随后将更加详细地描述的许多不同的形式。

当通过网络106将投票消息422发送至与用户B-D中的每个用户相关联的用户终端时,计数器值被设置为默认的初始值(即,零)。因此,在发送了投票消息422之后存储在存储器226中的多个可更新的字段426的状态信息包括这些默认的初始计数器值。

在步骤S504处,通信客户端应用105检测即时消息传送通信会话中的参与者是否已经选择了编辑投票消息422。

用户A-D中的任何一个用户可以通过使用他们相应的用户终端选择他们希望投票的投票选项,来对多个投票选项418中的一个投票选项进行投票。响应于检测用户对投票选项418中的一个投票选项的选择(即,对与所选择的投票选项相关联的计数器值进行编辑),过程500继续至步骤S506。

在步骤S506处,通信客户端应用105通过将所存储的计数器值增加1来更新与存储在存储器226中的所选择的投票选项相关联的计数器值。接着,过程500继续至步骤S508。

在步骤S508处,通信客户端应用105将经更新的状态信息传送至即时消息传送通信会话的参与者(即用户A-D)中的至少一个参与者。

用户A 104可以通过在由通信客户端应用105所提供的用户界面中进行选择来选择他希望投票的投票消息422中的投票选项。通信客户端应用105被配置为检测该选择。

如在图4e中所示,投票消息422可以包括多个可选择的图标424,每个可选择的图标都与相应的投票选项418相关联。用户A 104可以通过选择与他希望投票的投票选项相关联的可选择的图标424来选择他希望投票的投票选项。可替代地,投票选项本身可以是可选择的图标,用户A 104可以通过选择他希望投票的投票选项来对该可选择的图标进行投票。用户A104可以使用适当的输入设备(例如,小键盘206、鼠标)或使用触摸屏204来选择投票选项。

通信客户端应用105通过修改在用户终端102的显示器204上的用户界面中所显示的投票消息422的显示来将经更新的状态信息传送至用户A 104。特别地,通过显示与由用户A 104所选择的投票选项相关联的增加的计数器值426。

通信客户端应用105还被配置为将检测到的选择传送至在用户终端108、112、和116上执行的相应的通信客户端应用,以使得它们可以相应地更新在这些终端上所显示的投票消息422。

为此,通信客户端应用105生成投票选项选择消息,其包括投票消息422的消息标识符、标识用户A 102的用户标识符、和由用户A选择的投票选项的指示。通信客户端应用105通过通信网络106将所生成的投票选项选择消息发送至用户终端108、112、和116。

通信客户端应用105被配置为基于从参与者的用户终端(例如,用户终端108、112和116中的一个终端)接收投票选项选择消息来检测由其他参与者(用户B-D)中的一个参与者对他们希望投票的投票选项的选择。通信客户端应用105被配置为基于投票选项选择消息中的消息标识符来确定投票选项选择消息涉及的投票消息(即投票消息422),并且检测在投票选项选择消息中所指示的所选择的投票选项。因此,通信客户端应用105能够通过将存储的计数器值增加1来更新与存储在存储器226中的所选择的投票选项相关联的计数器值,并且通过修改显示在用户终端102的显示器204上的用户界面中的投票消息422的显示而将经更新的状态信息传送至用户A 104。特别地,通过显示与所选择的投票选项相关联的增加的计数器值426。

在用户终端108、112和116上执行的通信客户端中的每个客户端都被配置为以与针对通信客户端应用105而在上文中所描述的相同的方式进行操作。因此,在即时消息传送通信会话中所涉及的用户中的每个用户可以对多个投票选项418投票,并且响应于用户的投票来更新与投票消息422中的每个投票选项418相关联的投票计数。

如上所述,如果在即时消息传送通信会话期间所交换的消息是经由连接至网络106的网络实体(例如,服务器)而通过网络106发送的,则过程500可以由该网络实体来执行。

在该实施例中,网络实体被配置为将投票消息422的状态信息存储在网络实体的存储器中或者存储在由网络实体可访问的网络106中的外部存储单元中。

响应于在用户终端102、108、112和116中的一个用户终端上执行的通信客户端应用检测到由与其上执行通信客户端应用的用户终端相关联的用户对投票选项418中的一个投票选项的选择,通信客户端应用生成投票选项选择消息,其包括投票消息422的消息标识符、标识用户的用户标识符、以及对用户选择的投票选项的指示。通信客户端应用通过通信网络106将所生成的投票选项选择消息发送至网络实体。

网络实体将用户的列表以及用户针对特定的投票消息(由投票消息的消息标识符所标识)的投票响应(每个用户选择的投票选项)保存在其存储器中(或存储在外部存储中)。网络实体从该列表中确定针对某一投票选项的选票的数量,并且将状态信息传送给即时消息传送通信会话的所有参与者(即,用户A-D)。这是需要的,以便避免单个用户能够对多个投票选项418中的多于一个投票选项进行投票。

如上所述,投票消息可以限制单个用户仅对多个投票选项418中的一个投票选项进行投票。可替代地,投票消息可以允许单个用户对多个投票选项418中的多个投票选项进行投票。对于限制单个用户仅对多个投票选项418中的一个投票选项进行投票的投票消息而言,保存投票消息(通信客户端应用或网络实体)的状态信息的实体用于基于投票消息422的消息标识符和标识用户的用户标识符来防止用户对多个投票选项的多个投票选项进行投票,或者防止对同一投票选项进行多次投票。即,保存投票消息的状态信息的实体能够检测特定的用户是否已经对投票选项418中的一个投票选项进行了投票,并且如果是,则防止响应于来自用户的进一步投票而对状态信息进行更新。

尽管上文已经关于包括指示对其相关联的投票选项的选票的数量的计数器值(如在图4e中所示)的多个可更新的字段426而描述了实施例,但这仅仅是指示与投票选项418相关的用户反馈的一个示例方式。可更新的字段426可以采用许多不同的形式。

例如,多个可更新的字段426中的每个可更新的字段可以包括指示针对特定的投票选项所投的总票数的百分比的数值。当将投票消息422通过网络106而发送至与用户B-D中的每个用户相关联的用户终端时,百分比值被设置为初始值(0%)。保存投票消息的状态信息的实体在检测到用户A-D针对多个投票选项418进行了投票之后通过计算新的百分比值来对与存储在存储器中的投票选项相关联的百分比值进行更新。

在另一个示例中,多个可更新的字段426中的每个字段可以包括指示针对特定的投票选项进行投票的平均星级评分的星级评分(例如,总共5颗星)。当将投票消息422通过网络106而发送至与用户B-D中的每个用户相关联的用户终端时,星级评分被设置为初始值(例如零)。保存投票消息的状态信息的实体在检测到用户A-D针对投票选项投了一票或多票之后通过计算平均星级评分来对与存储在存储器中的投票选项相关联的星级评分进行更新。

本公开的实施例扩展至对于本领域技术人员来说是显而易见的指示与投票选项418相关的用户反馈的其他方法。

尽管未在图中示出,但是显示在即时消息传送通信会话期间所交换的投票消息的通信客户端应用可以被配置为指示有多少用户已经针对投票选项418中的每个投票选项进行了投票和/或指示已经对投票选项418中的每个投票选项进行了投票的用户的用户名(用于向其他用户唯一地标识通信系统的用户)。

从上述实施例中应当理解的是,可以由即时消息传送通信会话的用户通过进行投票/提供对投票选项418中的一个或多个投票选项的评分来编辑投票消息422。另外,可以以其他方式来编辑投票消息。

例如,即时消息传送通信会话的用户可以通过在投票消息的评论字段(为在图中示出)中输入文本来对投票选项进行评论。可以由用户使用诸如小键盘206之类的适当的输入设备或者使用触摸屏204来将文本插入到评论字段中。这允许用户提供与投票选项相关的额外的反馈。例如,参考在图4e中所示出的投票消息422的投票选项418,仅仅作为示例用户可以评论“本周已经来过这里了”,“此地点被关闭以进行翻新”、或“总是想要去这里”。因此,应当理解的是,由即时消息传送通信会话的一个用户插入到投票消息中的评论可以影响即时消息传送通信会话的其他用户的投票。

本公开的实施例使得用户能够在原始消息的上下文中对需要反馈的消息提供反馈。这避免了对即时消息传送通信会话的聊天历史中的相同信息的不必要的重复。

在上文中关于在显示器204的可用区域400中显示内容的客户端用户界面而描述了本公开的实施例。如在图4a-e中所描绘的,显示器的可用区域是整个显示器。然而,可以设想显示器的可用区域(即,对客户端105可用的区域)可以仅构成显示器的一部分,例如,显示器的剩余部分由操作系统和/或在其上执行以显示其他内容的其他应用来使用。

在图3和图5中单独示出的步骤可以或可以不作为分离的步骤来实现。

通常而言,在本文中所描述的任何功能都可以使用软件、固件、硬件(例如,固定逻辑电路)、或这些实现的组合来实现。如在本文中所使用的术语“控制器”、“功能”、“组件”和“应用”通常表示软件、固件、硬件、或其组合。在软件实现的情况下,控制器、功能、组件、或应用表示当在处理器(例如,一个或多个CPU)上执行时执行指定的任务的程序代码。可以将所述程序代码存储在一个或多个计算机可读存储器设备中。在下文中所描述的技术的特征是与平台无关的,这意味着可以在具有多种处理器的多种商业计算平台上实现所述技术。

例如,用户终端还可以包括使得用户终端的硬件执行操作的实体(例如,软件),例如,处理器功能块等。例如,用户设备可以包括计算机可读介质,其可以被配置为保存使得用户终端,并且更加特别地使得操作系统和用户终端的相关联的硬件执行操作的指令。因此,指令用于配置操作系统和相关联的硬件以执行操作,并且以该方式引起操作系统的状态的转换并且使得相关联的硬件执行功能。可以由计算机可读介质通过多种不同的配置而将指令提供至用户终端。

计算机可读介质的一种这样的配置是信号承载介质,并且因此被配置为将指令(例如,作为载波)发送至计算设备,例如,经由网络。计算机可读介质还可以被配置为计算机可读存储介质,并且因此不是信号承载介质。计算机可读存储介质的示例包括:随机存取存储器(RAM)、只读存储器(ROM)、光盘、闪速存储器、硬盘存储器、以及可以使用磁、光、和其他技术来存储指令和其他数据的其他存储器设备。

尽管已经用特定于结构特征和/或方法动作的语言描述了主题,但是应当理解的是,在所附权利要求中所限定的主题不一定限于在上文中所描述的具体的特征或动作。相反,在上文中所描述的具体的特征和动作是作为实现所述权利要求的示例形式而公开的。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1