联网消息传递系统中的时移通信的制作方法

文档序号:17732448发布日期:2019-05-22 02:56阅读:175来源:国知局
联网消息传递系统中的时移通信的制作方法

联网消息传递平台对于在用户之间传送通信已经变得流行,所述通信例如电子邮件(email)、即时消息传递、文本消息传递或其他消息传递技术。可以为最终用户提供这些消息传递平台以起草或撰写各种消息并创建对话链式消息通信(conversation-threadedcommunication),以便与一个或多个用户交互。用户可以通过在智能手机、计算机、膝上型电脑、平板电脑、游戏系统等上采用的图形接口和用户应用来与消息传递系统交互。

在典型的工作日期间,用户可以与其他用户发送和接收许多消息。这些用户可能分布在一个大的地理区域上,例如全球不同的国家和地区。用于用户的典型工作流程可以包括处理任务和响应在一天中接收到的邮件,例如电子邮件或即时消息。然而,办公室工作人员可能在空的电子邮件收件箱的情况下离开工作,但在第二天早上到达时有来自不同的位置或时区的工作人员的大量电子邮件消息。这可能对工作人员的优先级、即时工作负载和个人压力水平造成破坏性影响。此外,不同时区的用户可能传送可能在不期望的时间段期间(例如在午夜)唤醒用户的电子邮件。



技术实现要素:

本文提供了用于计算环境中的网络消息传递系统的系统、方法、装置和软件。在一个示例中,提供了联网消息传递系统,其接收由发送者发起的、用于通过联网消息传递服务传送给接收者的消息,并且识别包括对接收者的时移递送的用于消息的处理过程。联网消息传递系统确定产生对接收者的时移递送的时间延迟,并且根据时间延迟传送用于递送给接收者的消息。

提供该概述是为了以简化的形式介绍对构思的选择,所述构思将在以下具体实施方式中被进一步描述。可以理解,该概述不旨在识别所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。

附图说明

参考下面的附图可以更好地理解本公开内容的许多方面。虽然结合这些附图描述了若干实施方式,但是本公开内容不限于本文公开的实施方式。相反,意图是涵盖所有替代方案、修改和等同物。

图1示出了实施方式中的消息传递环境。

图2示出了实施方式中的消息时移过程。

图3示出了实施方式中的消息传递环境。

图4示出了实施方式中的消息时移过程。

图5示出了适用于实现本文公开的架构、过程和操作场景中的任一者的计算系统。

具体实施方式

诸如电子邮件(email)系统、即时消息传递平台、文本消息传递或其他消息传递技术之类的联网消息传递平台允许一个或多个用户撰写各种消息并且允许通信以与一个或多个用户交互。在工作日期间,用户可以与可能分布在大的地理区域(例如,全球不同国家和地区)上的其他用户发送和接收许多消息。用于用户的典型工作流程可以包括处理任务和响应在一天中接收到的消息,例如电子邮件或即时消息。然而,办公室工作人员可能在有组织的或空的电子邮件收件箱的情况下离开工作,但在第二天早上到达时有来自不同位置或时区的工作人员的大量电子邮件消息。这可能会对工作人员优先级、即时工作负载和个人压力水平产生破坏性影响。此外,不同时区的用户可能传送在不方便的时间(例如,在晚上或在工作日结束之后)递送的即时消息。

本文的示例提供用于在用户之间传送消息的增强的处理和操作。这些消息可以包括电子邮件、即时消息、文本消息、聊天消息或其他消息,包括其组合。增强的操作包括在消息的发送者和接收者之间建立时间差,并且根据接收者的本地时间属性(例如,时区)来递送消息。这有利地允许接收者在与接收者相关联的工作日时间段(timeframe)期间的适当时间接收消息,而不是根据与发送者相关联的工作日时间帧。技术效果包括提高用户生产力和更高效地使用本地计算系统和处理资源。进一步的技术效果可以包括在发送者网络的高峰时段减少通信网络的使用以及将跨与接收者相关联的网络的消息传递时移到接收者设备通常被加电和活动的时间,这可以引起根据用户的活动工作日的增强的网络资源调度。

作为增强型联网消息传递的第一示例,呈现了图1。图1是包括联网消息传递环境100的系统图。环境100包括用户系统110、消息传递平台120和目标设备130。用户系统110和消息传递平台120通过链路140进行通信。目标设备130和消息传递平台120通过链路141进行通信。消息传递平台120包括时移服务125。用户系统110包括操作系统111、消息传递服务112和用户接口113。

在图1中,用户系统110位于与第一时区相关联的第一地理位置中,而目标设备130位于与不同于第一时区的第二时区相关联的第二地理位置中。应当理解,实际的硬件或设备可能不位于每个地理位置,而是相关联的用户可能位于相应的地理位置,其中,用户通过集中式或分布式计算接口、网络接口、虚拟化接口或其他接口(包括其组合)来访问消息传递平台的消息传递特征。

在操作中,用户系统110的用户可以撰写诸如消息150之类的消息,以便递送给各种接收者,例如与目标设备130相关联的接收者。这些消息可以包括电子邮件、即时消息或其他消息,并且可以还包括各种附件、链接、数字文件或其他信息。通常,与用户系统110相关联的发送者将在发送者的工作日期间发送这些消息,例如从发送者的本地时区的上午8点到下午5点。然而,在电子邮件或消息传递系统中,优选快速递送消息并使延时最小化。该偏好可以引起由发送者传送给各个接收者的消息的快速或“即时”递送。然而,各种接收者可能位于与发送者不同的时区,因此可能在不方便的时间或在接收者不在工作场所或办公室的时间段期间接收由发送者传送的消息。此外,当这些接收者处于后续工作日时,来自跨许多不同位置的许多不同发送者的消息可能在接收者不在的情况下、在接收者未检查新邮件的时间期间、或在接收者不希望被这些消息打扰的一天的某个时间期间被递送。

有利地,在图1中,时移服务125在发送者与接收者之间建立时间差,以使得根据每方的本地时区属性来同步工作日或其他生产时间段。消息传递平台120可以根据由时移服务125建立的时间差来递送消息给接收者。

作为图1的操作的另外的示例,呈现了图2。在图2中,消息传递平台120接收(201)由发送者发起的消息,以便通过联网消息传递服务传送给接收者。联网消息传递服务可以包括:消息传递平台120的元素,以及最终用户接口,其可以包括消息传递服务112、用户应用、网络接口、终端接口等的。可以采用分布式或集中式消息传递平台,例如图1中的。然而,本文描述的操作也可以应用于对等消息传递系统,如以下将讨论的。

消息可以由用户系统110的用户撰写,例如在操作系统111和消息传递服务112的框架中执行的用户接口(ui)113的消息撰写元素内。消息可以包括由发送者指示的一个或多个接收者,并且可以包括链式消息对话或主题行组织的消息传递。电子邮件和即时消息二者等都可以由发送者撰写。

一旦已经撰写了消息,发送者就可以指示要递送消息,例如通过选择“发送”按钮或其他用户接口元素。然而,在该示例中,采用时移过程来将时移的递送提供给接收者。发送者可以指示时移过程。发送者可以在用户接口中选择指示发送者偏好使用时移的递送的时移指示元素。可以使用其他动作来指示用户接口元素、配置设置、菜单选择、对话框等中的时移的递送。

响应于接收到要用时移来递送的消息,消息传递平台120确定(202)包括对接收者的时移递送的用于消息的处理过程。在该示例中,消息传递平台120可以采用时移服务125来执行各种时移操作,但是另外的元素可以被采用。处理过程被确定为包括:时移递送,以及其他处理选项,包括递送网络、网络地址、递送给接收者服务器或服务;在时移时段期间的任何待处理消息的保存或存储位置;以及其他处理过程。

时移可以包括识别(203)产生对接收者的时移递送的时间延迟。时间延迟与从发送者接收消息到消息传递平台120中的时间与从消息传递平台120向接收者递送的时间的差异相对应。当采用对等消息传递平台时,时间延迟可以包括从发送者传送消息的延迟、或者就已经隐藏递送的消息警告接收者的延迟,以及其他操作。当多个接收者被发送者指示或者与消息相关联时,多个时间延迟可以被确定——具有针对每个接收者确定的相关联的时间延迟。

为了确定时间延迟,可以采用各种过程。在第一示例中,确定发送者与接收者之间的时区差异。可以通过针对与接收者相关联的时区处理与发送者相关联的时区来确定该时区差异。可以采用将相关联的本地时移转换为公共时间指示,例如协调世界时(utc)或其他公共时间指示。

在其他示例中,可以考虑发送者和接收者的本地时区以及关联方的工作日时间表。例如,发送者可能具有指示为发送者的本地时区中的上午9点至下午5点的工作日时间表,并且接收者可能具有指示为该当地时区中的上午10点至下午6点的工作日时间表。还可以考虑工作日和周末或休假日来建立时间延迟。

工作日时间表的同步可以通过建立时间延迟来实现,以便在关于发送者和接收者的工作日的大致相似的时间段处递送消息。例如,如果发送者撰写消息,然后在发送者的时区中的上午9点发起传送消息,则时移服务125可以确定接收者的工作日和时区内用于递送消息的相对时间。具体而言,时移服务125可以在接收者的时区中的上午9点递送消息。在另外的示例中,可以考虑各方之间相对工作日的差异。例如,接收者可能具有上午8点至下午5点的工作日时间表,并且发送者可能具有上午9点至下午6点的工作日。由发送者在发送者的时区中的上午11点传送的消息可以由用于补偿相应方的工作日时间表的差异的附加的小时抵消,因此在接收者的本地时区中的上午10点被递送。其他考虑因素可能有时间延迟、时间差和相对工作日/时间表偏差。

因此,使用以上讨论的时移过程中的一者或多者,消息平台120传送(204)消息以便根据时间延迟递送给接收者。例如,消息平台120可能在从用户系统110接收到消息150之后缓存或以其他方式缓冲消息150。消息平台120可以包括一个或多个存储设备,以用于缓存消息直到适当的递送时间,例如根据本文的时移过程。抑制或延迟消息的递送,直到已经达到递送时间。一旦已经达到递送时间,就可以发生对一个或多个接收者的消息递送。在对等示例中,“对等”或端点之一可能包括该时移功能和缓存特征,以确保根据时间延迟递送给接收者。替代地,发送者可能立即传送消息以便递送给接收者,但是目标设备可以缓冲消息并且抑制就消息的接收警告接收者,直到时间延迟期满。其他对等示例是可能的,包括具有第三方高速缓存和代表发送者或接收者的消息递送的时移。

回到对图1的元素的讨论,用户系统110和目标设备130均包括任何数量的最终用户系统,例如终端、计算设备、平板设备、智能手机、个人计算机、服务器、基于云的系统、分布式计算平台等。用户(例如,通信平台的用户或其他人员)可以撰写、传送和接收消息,例如电子邮件和即时消息。用户系统110和目标设备130均包括一个或多个网络接口(例如,网络接口卡、无线接口、光联网接口等),通过所述网络接口可以发起搜索请求和通信会话。用户系统110和目标设备130均可以包括用于使用网络接口、终端接口、控制台接口、shell接口、api、图形用户接口、文本用户接口以及其他用户接口(包括其组合)与证书平台接合的硬件和软件元素。

操作系统111包括一个或多个执行元素,其在面向用户的应用与输入设备和相关联的执行硬件之间提供执行平台。在许多示例中,操作系统111包括用于诸如消息传递服务112之类的用户应用以及其他应用或服务的多任务或多线程操作环境,并且还提供对用户接口113和各种硬件元件的逻辑访问,所述硬件元件例如显示器、用户输入设备、多媒体设备等。操作系统111允许在相关联的处理系统和存储器设备上执行消息传递服务113和ui113。

用户接口(ui)113包括一个或多个图形或文本用户接口元素,其被呈现给实施方式100的用户,以用于与消息传递服务112的元素以及其他应用和服务进行交互。ui113可以包括许多图形层或图形元素,其被叠加和相互关联以将交互式窗口或平板接口呈现给用户,例如在一个或多个显示屏上。ui113还可以包括用于向用户指示可听用户接口元素的各种音频输出元素。ui113从各种输入设备接收用户输入,所述输入设备例如键盘、鼠标、触摸屏、触摸板、游戏控制器、或可以与例如鼠标输入、键盘输入、语音输入、视觉输入或其他用户输入方法组合使用的其他用户输入设备。该用户输入可以由ui113检测到并且被转换为可以由实施方式100的另外的元素(例如,操作系统111或消息传递服务112)解释的动作。

消息传递服务112包括用户应用,例如消息传递应用、内容编辑应用、生产力应用、游戏应用或通信应用。消息传递服务112呈现一个或多个用户接口元素(例如,使用ui113来呈现的用户接口元素),以允许用户与消息传递服务112交互。例如,在消息传递服务112中,消息可以通过一个或多个网络接口接收、经由us113显示给用户,并且用户可以查看消息、编辑和撰写消息、以及编辑任何附件。消息传递服务112可以包括逻辑接口元素,例如软件定义的接口和应用编程接口(api)。

消息传递平台120包括时移服务125以及其他元素。消息传递平台120包括基于服务器或基于分布式计算的消息传递服务和平台,例如电子邮件消息传递平台、聊天平台或即时消息传递平台等。消息传递平台120可以包括通信接口、网络接口、处理系统、计算机系统、微处理器、存储系统、存储介质或一些其他处理设备或软件系统,并且可以分布在多个设备之中或跨多个地理位置分布。消息传递平台120的示例可以包括诸如操作系统、日志、数据库、实用程序、驱动程序、联网软件和存储在计算机可读介质上的其他软件之类的软件。消息传递平台120可以包括由分布式计算系统或云计算服务托管的一个或多个平台。消息传递平台120可以包括逻辑接口元素,例如软件定义的接口和应用编程接口(api)。消息传递平台120可以包括一个或多个用户接口,例如图形用户接口、网络接口、api、终端接口、控制台接口、命令行shell接口、可扩展标记语言(xml)接口等。

链路140-141均可以包括一个或多个通信链路,例如包括无线或有线网络链路的一个或多个网络链路。链路140-141可以包括各种逻辑、物理或应用编程接口。示例性通信链路可以使用金属、玻璃、光学、空气、空间或某个其他材料作为传输介质。链路140-141可以使用各种通信协议,例如互联网协议(ip)、以太网、混合光纤同轴(hfc)、同步光纤联网(sonet)、异步传输模式(atm)、时分复用(tdm)、电路切换、通信信令、无线通信或某个其他通信格式,包括其组合、改进或变型。链路140-141可以包括直接链路或者可以包括中间网络、系统或设备,并且可以包括通过多个物理链路传输的逻辑网络链路。链路140-141可以包括用于在端点之间传输流量的路由器、交换机、桥、流量处理节点等。

作为消息的时移递送的另一示例,呈现了图3。图3示出了通过电子邮件和即时消息传递平台在各种用户与用户系统之间提供消息传递特征的消息传递环境300。具体而言,环境300包括用户系统310、生产力平台320和用户系统330-331。在操作中,用户可以撰写和传送消息,以便通过生产力平台320递送给其他用户。生产力平台320包括时移特征,以允许在用户之间时延传送这些消息。

生产力平台320包括一个或多个消息传递服务/平台,其中,每个消息传递服务/平台具有相关联的时移服务。生产力平台320包括具有相关联的时移服务323的电子邮件平台321。生产力平台320包括具有相关联的时移服务324的即时消息传递平台322。电子邮件平台321和即时消息传递平台322二者都为用户提供用于撰写消息并将其发送给其他用户的平台,例如通过api接口、网络接口、分布式计算接口或其他接口,包括任何相关联的网络和链路。电子邮件平台321提供电子邮件服务,例如消息撰写、地址簿特征、附件递送、邮箱存储和其他特征。即时消息传递服务322提供即时消息传递服务,例如文本消息传递、聊天和链式消息对话特征。虽然电子邮件平台321和即时消息传递平台322可以共享相似的特征,但是通常这些类型的消息传递系统包括不同的用例和历史区别。此外,电子邮件通常包括在用户之间传送的离散消息,而即时消息传递通常包括成员之间的相对实时的文本聊天。

在图3中,示出了三个用户。第一用户301在与utc-5相对应的时区“a”中。第二用户302在与utc+1相对应的时区“b”中。第三用户303在与utc+6相对应的时区“c”中。因此,用户301和302之间的时间差是6小时,而用户301和303之间的时间差是11小时。每个用户可能具有不同的工作日时间表和相关联的活动时间。在图3的示例中,考虑了时区。然而,应当理解,可以根据个人活动时间或工作日时间表对时间差进行调整,如以上描述的。

为了基于相对时区差异或活动时间/工作日时间表来确定时间延迟,时区服务325可以跟踪个别用户的时间属性或者根据用户的属性来动态地确定延迟。确定这些属性可以包括:将网络地址与地理位置和时区相互关联,解释消息的属性(例如,元数据)以确定关联的时区或地理位置,识别用户指定的时间或位置属性,从用户简档中识别时间属性,或其他确定。时区服务325可以持久保存用户的时间属性以用于递送许多消息。即时消息传递平台322还可以包括确定和存储用户的时间属性的时区服务。

每个用户系统310和330-331包括用于参与消息传递操作的一个或多个相关联的应用。具体而言,用户系统310包括电子邮件应用311和即时消息传递应用312,用户系统330包括电子邮件应用332,并且用户系统331包括即时消息传递应用333。这些相关联的应用提供生产力平台的用户接口和本地执行的部分。在一些示例中,相关联的应用包括网络浏览器接口、完整应用、移动app以及其他操作实施方式。

在操作期间,用户中的每一者可以传送消息以便在其他用户之间相互递送。在该示例中,为了清楚起见,将集中讨论由用户系统310传送的消息。在第一示例性消息中,电子邮件消息351被撰写并传送以便递送给用户302。发送者(用户301)指示将针对消息351采用时移的递送,并且在将消息351接收到电子邮件平台321中时对消息351进行缓存以便时移递送。时移服务323采用消息高速缓存服务326来在递送给接收方之前存储或缓冲所传送的消息。一旦已经达到对应的时间延迟,时移服务323就可以指示电子邮件平台321将消息351递送给用户302。在第二示例中,撰写并传送即时消息352以便递送给用户303。发送者(用户301)指示针对消息352采用时移递送,并且在将消息接收到即时消息传递平台322中时将消息352缓存以便时移递送。时移服务324采用与时移服务323相似的消息高速缓存服务来存储或缓冲传送的即时消息,直到递送给接收方。一旦已经达到对应的时间延迟,时移服务324就可以指示即时消息传递平台322将消息352递送给用户303。在第三示例中,采用非时移信息,即紧急消息353。用户301可以指示将不对消息353采用时移,或者默认行为可以引起将消息即时或立即传送给接收者。

除了非时移的紧急消息之外,用户还可能选择覆盖(override)活动的时移过程。例如,根据时移过程,若干消息可能在队列或高速缓存中等待递送。受影响的用户(例如,接收者)可以选择将所有待处理的邮件立即递送。用户可能选择用户接口元素,例如覆盖按钮或其他接口元素。在图3中,覆盖354指示用户302选择在没有时移过程的情况下将所有消息或其指定部分递送。这些消息可能由高速缓存服务326或与即时消息传递平台322相关联的高速缓存服务存储。在另一示例中,用户可能期望将所有已经排队或缓存的消息在白天期间的指定时间被递送。用户可以指定递送时间,并且所有高速缓存/延迟的消息或其指示的部分可以被迅速地递送。

当用户选择递送待处理消息时,另外的时移过程仍然可以是活动的。在时移或覆盖特征之间,链式消息对话可以是不同的,以使得某些对话链式消息可能没有应用时移,同时其他的可能应用了时移。当用户参与可能具有过时消息的对话并且用户想要将对话链式消息的所有消息无延迟传送,或者当用户想要仅针对特定消息传递链式消息参与实时对话时,这可能是有用的。链式消息可以通过用户输入、主题行或嵌入的元数据以及其他区别来区分。对于各种对话链式消息,用户可以选择特定链式消息的消息,例如图形按钮、右键单击上下文菜单、或其他用户接口元素,以指定时移或实时递送以及其他选项。

作为在时间延迟期满时待递送的被缓冲或存储的消息的另外示例,呈现了图4。图4包括消息时移高速缓存410,其包括待递送的多个消息。这些消息411-419可以是各种类型或形式的,并且可以包括电子邮件、即时消息和将不进行时移的消息,例如实时消息417。可以使用公共数据结构或高速缓存来存储时移消息和非时移信息二者,如消息417指示的。表410中针对每个消息指示时间延迟,并且基于发送者时间与接收者时间之间的时区差计算该时间延迟。因此,表410中的两列指示包括任何适当的时间延迟的发送时间和递送时间。

图4中的时移过程420被包括以示出本文描述的时移过程的附加示例。例如,从表410中提取用于递送给特定用户或特定方的消息,以强调时移的特征。每个个别的消息包括相关联的时间延迟,以确保根据时区的相对差异来执行递送。这在两个或更多用户之间建立滚动时移同步。滚动时移提供对接收者的消息递送或警告,其保持来自发送者的并且根据所涉及的各方的时区、工作日时间表或活动时间来移位的消息传送的原始次序。有利地,接收者可以在整个工作日接收消息,就好像消息是由发送者在接收者本地的对应时间发送的一样,虽然发送者是在发送者本地的对应时间传送消息的。

图5示出了计算系统501,其表示在其中可以实现本文公开的各种操作架构、场景和过程的任何系统或系统集合。例如,计算系统501可以用于实现图1的元素中的任一者,例如图1的消息传递服务112或消息传递平台120,以及图3的生产力平台320或图3的用户系统中的任一者。

由计算系统501实现的示例包括但不限于服务器计算机、云计算系统、分布式计算系统、软件定义的联网系统、计算机、桌上型计算机、混合计算机、机架服务器、网络服务器、云计算平台、和数据中心设备、以及任何其他类型的物理或虚拟服务器机器、以及其他计算系统和设备、以及其任何变型或组合。当计算系统501的部分在用户设备上实现时,示例性设备包括智能手机、膝上型计算机、平板计算机、桌上型计算机、游戏系统、娱乐系统等。

计算系统501可以实现为单个装置、系统或设备,或者可以以分布式方式实现为多个装置、系统或设备。计算系统501包括但不限于处理系统502、存储系统503、软件505、通信接口系统507和用户接口系统508。处理系统502操作地与存储系统503、通信接口系统507和用户接口系统508耦合。

处理系统502从存储系统503加载并执行软件505。软件505包括消息传递服务506,其表示关于前面的附图所讨论的过程、服务和平台。

当由处理系统502执行以提供增强的消息传递服务(包括时移的消息递送)以及其他服务时,软件505指导处理系统502如本文描述地至少针对在前述实施方式中讨论的各种过程、操作场景和序列进行操作。计算系统501可以可选地包括出于简洁的目的而未讨论的附加设备、特征或功能。

仍然参考图5,处理系统502可以包括微处理器和处理电路,其从存储系统503取回软件505并执行软件505。处理系统502可以在单个处理设备内实现,但也可以跨合作执行程序指令的多个处理设备或子处理系统分布。处理系统502的示例包括通用中央处理单元、专用处理器、和逻辑设备、以及任何其他类型的处理设备、其组合或变型。

存储系统503可以包括可由处理系统502读取并且能够存储软件505的任何计算机可读存储介质。存储系统503可以包括以用于存储例如计算机可读指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。存储介质的示例包括随机存取存储器、只读存储器、磁盘、光盘、闪速存储器、虚拟存储器和非虚拟存储器、磁带盒、磁带、磁盘存储装置或其他磁存储设备、或任何其他合适的存储介质。在任何情况下,计算机可读存储介质都不是传播的信号。

除了计算机可读存储介质之外,在一些实施方式中,存储系统503还可以包括计算机可读通信介质,通过其可以内部地或外部地传送软件505中的至少一些软件505。存储系统503可以实现为单个存储设备,但也可以跨相对于彼此共同定位或分布的多个存储设备或子系统实现。存储系统503可以包括能够与处理系统502或可能其他系统进行通信的附加元素,例如控制器。

软件505可以以程序指令并且在其他功能之中实现,并且在由处理系统502执行时,可以指导处理系统502以如关于本文所示的各种操作场景、序列和过程所描述的那样进行操作。例如,软件505可以包括用于实现增强的消息传递服务的程序指令,包括时移的消息递送以及其他服务。

具体而言,程序指令可以包括协作或以其他方式交互以执行本文描述的各种过程和操作场景的各种组件或模块。各种组件或模块可以以编译或解释的指令体现,或者以某个其他变型或指令的组合体现。各种组件或模块可以以以下方式执行:同步或异步方式、串行或并行、在单线程环境中或多线程地、或根据任何其他合适的执行范例、变型或其组合。附加于或包括消息传递服务506,软件505可以包括附加的过程、程序或组件,例如操作系统软件或其他应用软件。软件505还可以包括固件或可由处理系统502执行的某个其他形式的机器可读处理指令。

通常,软件505可以在被加载到处理系统502中并且被执行时,将合适的装置、系统或设备(其中,计算系统501具有代表性)整体地从通用计算系统变换为被定制为提供增强的消息传递服务的专用计算系统,包括时移消息递送以及其他服务。实际上,存储系统503上的编码软件505可以变换存储系统503的物理结构。物理结构的特定变换可以取决于本说明书的不同实施方式中的各种因素。这样的因素的示例可以包括但不限于用于实现存储系统503的存储介质的技术、以及计算机存储介质是被表征为主存储装置还是二级存储装置、以及其他因素。

例如,如果计算机可读存储介质被实现为基于半导体的存储器,则软件505可以在程序指令被编码在其中时变换半导体存储器的物理状态,例如通过变换晶体管、电容器或其他构成半导体存储器的分立电路元件的状态。关于磁性或光学介质可以发生相似的变换。在不脱离本说明书的范围的情况下,物理介质的其他变换是可能的,而前述示仅是为促进本讨论而被提供。

消息传递服务506包括一个或多个软件元素,例如os521和应用522。应用522可以通过用户接口系统508接收用户输入,例如来自用户的消息撰写请求和消息发送请求。应用522可以包括消息传递用户接口523、时移接口524和时移过程525、或可以提供增强的消息传递服务的其他服务,包括时移消息递送。这些元素可以描述用户与之交互的计算系统501的各个部分。例如,os521可以提供在其上执行用户应用的软件平台,并且允许接收和监测来自用户接口系统508的输入以及通过通信接口递送消息和其他内容。

用户应用522可以是本文讨论的任何应用,例如生产力、消息传递、电子邮件、即时消息传递、网络聊天、联网消息传递、编辑器、文字处理器、电子表格或应用,并且包括可以由用户操纵的用户接口元素。在一个示例中,消息传递用户接口523包括图形用户接口530,其还包括消息内容视图526、消息发送用户接口元素527和消息时移发送用户接口元素528。消息传递用户接口523处理消息和附件的接收和传送。消息传递用户接口523可以例如通过用户接口系统508向用户呈现撰写用户接口视图以及所接收的消息和附件。当用户期望发送使用消息传递用户接口523撰写的消息时,用户可以选择立即发送或以时移发送,如由元素527和528分别指示的。消息内容526可以包括消息编辑器并且包括若干用户接口元素,其可以包括命令行、图形或基于网络的用户接口元素等。

时移接口524可以提供用户接口元素,以从用户接收对时移过程的指示,例如允许用户手动录入时间延迟或自动检测发送者与接收者之间的时间延迟。在一些示例中,时移接口524被并入到由消息传递用户接口523呈现的用户接口元素(例如,元素528)中。时移过程525可以根据时间延迟或其他延迟来延迟消息的传送。时移过程525可以识别由用户录入的时间延迟,或者根据发送者和接收者实体的属性自动识别时间延迟。在一些示例中,时移过程525可以包括保留消息直到达到时间延迟的消息高速缓存。

通信接口系统507可以包括允许通过通信网络(未示出)与其他计算系统(未示出)通信的通信连接和设备。一起允许系统间通信的连接和设备的示例可以包括网络接口、网络接口卡、天线、功率放大器、rf电路、收发机和其他通信电路。连接和设备可以通过通信介质进行通信以与其他计算系统或系统网络交换通信,所述通信介质例如金属、玻璃、空气或任何其他合适的通信介质。

用户接口系统508可以通过网络接口(例如,通信接口系统507)接收输入并提供输出。在网络示例中,用户接口系统508可能包括网络接口和终端接口。用户接口系统508可以打包显示或图形数据以供通过在一个或多个网络接口或网络接口上耦合的显示系统或计算系统进行远程显示。用户接口系统508的物理或逻辑元素可以向用户或其他操作者提供警报或视觉输出。用户接口系统508还可以包括可由处理系统502执行以支持以上讨论的各种用户输入和输出设备的相关联的用户接口软件。单独地或与彼此以及其他硬件和软件元素结合,用户接口软件和用户接口设备可以支持图形用户接口、自然用户接口或任何其他类型的用户接口。在其他示例中,用户接口系统508可以包括用于从用户接收输入的触摸屏、键盘、鼠标、语音输入设备、音频输入设备或其他触摸输入设备。诸如显示器、扬声器、网络接口、终端接口和其他类型的输出设备之类的输出设备也可以被包括在用户接口系统508中。

计算系统501与其他计算系统之间的通信可以通过一个或多个通信网络并且根据各种通信协议、协议的组合或其变型发生。示例性网络包括内联网、互联网、因特网、局域网、广域网、无线网、有线网、虚拟网络、软件定义网络、数据中心总线、计算背板或任何其他类型的网络、网络的组合或其变型。上述通信网络和协议是公知的,并且不需要在此详细讨论。然而,可以使用的一些通信协议包括但不限于因特网协议(ip、ipv4、ipv6等)、传输控制协议(tcp)、和用户数据报协议(udp)、以及任何其他合适的通信协议、变型或其组合。

从前述公开内容可以领会某些发明方面,其中,下面是各种示例。

示例1:一种计算装置,包括:一个或多个计算机可读存储介质;处理系统,其操作地与所述一个或多个计算机可读存储介质耦合;以及程序指令,其存储在包括联网消息传递服务的所述一个或多个计算机可读存储介质上。所述联网消息传递服务当由所述处理系统执行时指导所述处理系统至少执行以下操作:接收由发送者发起的消息,以便通过所述联网消息传递服务传送给接收者;识别用于所述消息的包括对所述接收者的时移递送的处理过程;确定产生对所述接收者的所述时移递送的时间延迟;以及传送所述消息,以便根据所述时间延迟递送给所述接收者。

示例2:示例1的计算装置,包括进一步的程序指令,所述进一步的程序指令当由所述处理系统执行时指导所述处理系统至少执行以下操作:通过至少确定与所述发送者相关联的第一时区和与所述接收者相关联的第二时区以及基于所述第一时区与所述第二时区之间的时间差建立所述时间延迟,确定产生所述时移递送的所述时间延迟。

示例3:示例1-2的计算装置,包括进一步的程序指令,所述进一步的程序指令当由所述处理系统执行时指导所述处理系统至少执行以下操作:抑制所述消息被递送给所述接收者,直到传送所述消息的所述时间延迟到期,以便根据所述时间延迟递送给所述接收者。

示例4:示例1-3的计算装置,其中,用于所述消息的所述处理过程包括与所述时间延迟相对应的消息递送延迟。

示例5:示例1-4的计算装置,包括进一步的程序指令,所述进一步的程序指令当由所述处理系统执行时指导所述处理系统至少执行以下操作:通过从所述发送者接收用于产生所述时移递送的指示,将所述处理过程识别为包括对于所述消息的所述时移递送。

示例6:示例1-5的计算装置,包括进一步的程序指令,所述进一步的程序指令当由所述处理系统执行时指导所述处理系统至少从呈现给所述发送者的用户接口元素接收用于产生所述时移传递的指示。

示例7:示例1-6的计算装置,其中,所述消息的递送被延迟至少用于同步所述发送者和所述接收者的工作时间表的所述时间延迟。

示例8:示例1-7的计算装置,其中,所述时间延迟与被指示用于所述发送者的工作时间表和被指示用于所述接收者的工作时间表之间的差异相对应,以在所述接收者的工作时间表中的、与所述发送者的工作时间表中的时间相对应的时间处产生所述消息的递送。

示例9:示例1-8的计算装置,其中,所述消息包括电子邮件消息和即时消息之一。

示例10:一种操作联网消息传递系统的方法,所述方法包括:接收由发送者发起的、用于通过联网消息传递服务传送给接收者的消息;识别用于所述消息的包括至少基于所述接收者的时区的对所述接收者的时移递送的处理过程;确定产生对所述接收者的所述时移递送的时间延迟;以及传送所述消息,以便根据所述时间延迟递送给所述接收者。

示例11:示例10的方法,还包括:通过至少确定与所述发送者相关联的第一时区和与所述接收者相关联的第二时区以及基于所述第一时区与所述第二时区之间的时间差建立所述时间延迟,确定产生所述时移递送的所述时间延迟。

示例12:示例10-11的方法,还包括:抑制所述消息被递送给所述接收者,直到传送所述消息的所述时间延迟到期,以便根据所述时间延迟递送给所述接收者。

示例13:示例10-12的方法,其中,用于所述消息的所述处理过程包括与所述时间延迟相对应的消息递送延迟。

示例14:示例10-13的方法,还包括:通过从所述发送者接收用于产生所述时移递送的指示,将所述处理过程识别为包括对于所述消息的所述时移递送。

示例15:示例10-14的方法,还包括:从呈现给所述发送者的用户接口元素接收用于产生所述时移递送的指示。

示例16:示例10-15的方法,其中,所述消息的递送被延迟至少用于同步所述发送者和所述接收者的工作时间表的所述时间延迟。

示例17:示例10-16的方法,其中,所述时间延迟与被指示用于所述发送者的工作时间表和被指示用于所述接收者的工作时间表之间的差异相对应,以在所述接收者的工作时间表中的、与所述发送者的工作时间表中的时间相对应的时间处产生所述消息的递送。

示例18:示例10-17的方法,其中,所述消息包括电子邮件消息和即时消息之一。

示例19:一种计算装置,包括:一个或多个计算机可读存储介质;处理系统,其操作地与所述一个或多个计算机可读存储介质耦合;以及程序指令,其存储在包括消息传递应用的所述一个或多个计算机可读存储介质上。所述消息传递应用当由所述处理系统执行时指导所述处理系统至少执行以下操作:呈现用户接口,所述用户接口包括具有工作日同步指示元素的消息撰写视图;接收由发送者通过所述消息撰写视图撰写的、用于递送给接收者的消息;通过所述工作日同步指示元素来接收工作日同步指定,所述工作日同步针对向所述接收者的所述消息的递送指示时移递送;确定产生对所述接收者的所述时移递送的时间延迟;以及抑制传送所述消息,以便根据所述时间延迟递送给所述接收者。

示例20:示例19的计算装置,包括进一步的程序指令,所述进一步的程序指令当由所述处理系统执行时指导所述处理系统至少执行以下操作:通过至少确定与所述发送者相关联的第一时区和与所述接收者相关联的第二时区以及基于所述第一时区与所述第二时区之间的时间差建立所述时间延迟,确定产生所述时移递送的所述时间延迟。

附图中提供的功能框图、操作场景和序列、以及流程图表示用于执行本公开内容的新颖方面的示例性系统、环境和方法。虽然出于简化解释的目的,本文中包括的方法可以采用功能图、操作场景或序列、或流程图的形式,并且可以被描述为一系列动作,但是应当理解和领会,方法不受动作次序的限制,这是因为一些动作可以根据其以不同的次序发生和/或与本文示出和描述的其他动作同时发生。例如,本领域技术人员将理解并领会,方法可以替代地被表示为一系列相互关联的状态或事件,例如在状态图中。此外,并非方法中示出的所有动作都可能是新颖实施方式所要求的。

本文中包括的描述和附图描绘了用于教导本领域技术人员如何制造和使用最佳选项的具体实施方式。出于教导发明原理的目的,已经简化或省略了一些传统方面。本领域技术人员将从落入本公开内容范围内的这些实施方式中领会变型。本领域技术人员还将领会,以上描述的特征可以以各种方式组合以形成多个实施方式。

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