具体实施方式
在以下描述中,阐述了某些具体细节以便提供对各种公开实施例的透彻理解。然而,相关领域的技术人员将认识到,可以在没有这些具体细节中的一个或多个的情况下或者在使用其他方法、部件、材料等的情况下实践实施例。在其他情况下,与包括客户端的计算系统和服务器计算系统以及网络相关联的公知结构未详细示出或描述,以避免不必要地使对实施例的描述变得模糊不清。
然而,在阐述实施例之前,首先阐述在下文中使用的某些术语的定义可能有助于对实施例的理解。
在本公开中,“故事”是基于计算机的对象,该对象包括以一致的方式组织的一个或多个存储元件,使得每个故事可以被单独识别。在一个非限制性实施例中,故事包括至少一个多媒体部分、与多媒体对象到基于时间的社交网络中的接受(例如,在确定的节点、线路、模块等处)相关联的时间和日期标记、以及与故事的呈现相关联的用户选择的时间信息。多媒体部分可以可选地包括照片、视频、音频剪辑、文本、表示触觉信息的数字化存储块、表示气味或其他嗅觉信息的数字化存储块、表示电子收集的大脑情绪信号的数字化存储块、或其他生理信息以及任何其他类似信息中的任何一种或多种。故事可以包括例如由具有相关联的相机的智能手机或可穿戴设备的用户捕获的图像或视频,并且附加地或替代地,故事可以包括描述图像或视频的方面的文本描述,或者故事可以是纯粹基于文本的故事。
在某些情况下,故事包括附加信息,诸如与故事的内容相关联的地理信息、与正在发布故事的用户相关联的地理信息、与故事的内容相关联的主题信息、以及由用户或基于时间的社交网络提供并且被基于时间的社交网络所允许的任何其他这样的信息。
在很多情况下,故事被布置为存储在暂态或非暂态计算机可读介质中的数据(例如,信息)的集合。故事的数据可以存储在单个位置,或者故事的数据可以分布并且存储在多个位置。故事的数据可以存储在已经生成数据或将呈现数据的设备的本地。在某些情况下,故事的数据被远程存储,例如存储在被全部或部分地索引、可搜索、相关的或具有其他已知数据库特征的数据库中。
为了举例而非限制,故事可以与个人的社交方面、商业的社交方面、另一类型的组织(例如,教育机构、政府实体、非营利组织或任何其他这样的组织)的社交方面、用于出租或出售或某个其他商业目的、工作或某个其他就业或服务提供、简历、旅行、地理位置或任何其他类似目的的项目相关联。已经考虑将很多其他类型的信息包括在故事的数据中,但是为了简洁而不是为了限制,已经省略了这样的信息。
故事可以由基于时间的社交网络的用户发布。发布包括以电子方式向基于时间的社交网络提供故事的一些或所有数据。发布还可以包括呈现故事的一些或全部数据或者将这样的数据传送到远程设备以进行呈现。一个或多个故事的呈现可以经由软件应用来进行,诸如在计算设备(例如,智能电话、平板电脑、膝上型电脑、可穿戴计算设备、植入人体的计算设备、台式计算设备、自助服务终端、地面或空中飞行器或任何其他这样的计算设备)上执行的网络浏览器。
故事可以由基于时间的社交网络的用户查看,其中查看故事可以包括在显示器上或经由诸如扬声器、压电设备或某种其他音频设备等音频设备呈现故事。查看故事还可以包括传递故事的触觉信息、嗅觉信息、生理信息或其他信息。
提供流时间线社交网络(其在本文中也可以称为基于时间的社交网络)以允许用户查看由用户创建的故事以及由社交网络系统的其他用户创建的故事。
当用户创建故事时,用户可以分配将与该故事相关联的过去、当前或将来的任何时间(例如,一天中的时间,日期,或一天中的时间和日期)。因此,故事将在用户的基于时间的社交网络推送中呈现为已经发生或将在指定时间发生。例如,第一用户可以通过上传过去数年拍摄的照片来创建故事。第一用户可以添加描述性文本作为故事的一部分,并且第一用户可以进一步将所创建的故事与拍摄照片的日期相关联。根据该信息,基于时间的社交网络将在拍摄照片的日期并且根据第一用户分配的时间、日期或根据时间和日期两者在第一用户的推送以及与第一用户相关联的其他用户(即,“朋友”)的推送中呈现所创建的故事。
在一些实施例中,用户推送(其也可以称为“墙面”)可以以两种模式呈现在流时间线社交网络中,即浏览模式和阅读模式。在浏览模式中,向用户呈现沿着水平时间线布置的故事的图标或列,每个图标或列表示特定时间段(例如,一天、一周、一个月、一年、数天、数周、数月或数年等)。用户可以沿着水平时间线(例如,左和右)滚动并且选择感兴趣的任何特定时间段或图标(例如,特定的天、周、月或年)。一旦选择了特定时间段,流时间线社交网络推送就切换到阅读模式。在阅读模式中,与特定时间段相关联的特定故事以可滚动的竖直布置的时间线显示,其中每个故事基于创建故事的实际时间或基于某个其他标准(诸如地理位置、主题、价格(例如,在市场的情况下))等竖直排序,而不是基于由创建用户分配给故事的时间。
图1是示出根据本公开的一个或多个实施例的流时间线社交网络系统10(为了简洁起见,在下文中可以将其称为“系统10”)的框图。系统10包括计算服务器20、故事数据库32、图像数据库34、市场数据库36和由附加数据库38表示的任何数量的其他数据库,其中计算服务器20配置有流时间线社交网络软件22(例如,应用、网站、操作系统、网络服务器等中的一个或多个)、被布置作为社交网络软件22的一部分的时间关联模块24和应用接口26。计算服务器20包括具有被布置为执行存储在相关存储器中的指令的的处理器核的计算服务器架构。由处理器核执行的指令由从多个远程计算设备12a-12n接收的请求来指示。
系统10还可以包括可以经由第一通信网络14a访问流时间线社交网络软件22的一个或多个用户计算机设备12a-12n。用户计算机设备12a-12n包括例如固定计算设备和移动计算设备,诸如智能电话、平板电脑、膝上型电脑、可穿戴计算设备、植入人体的计算设备、台式计算设备、自助服务终端、地面或空中飞行器或任何其他这样的计算设备。这样的计算设备具有至少一个处理器,所述至少一个处理器被布置为执行存储在与所述至少一个处理器相关联的非暂态计算机可读介质中的指令。这些电子线路(即硬件)和其他线路明确地布置在用户计算机设备12a-12n中,但为了简洁起见而未示出。
第一通信网络14a可以利用一个或多个协议经由一个或多个物理网络进行通信,所述一个或多个物理网络包括可以实现无线网络、专用线路、内联网、因特网等的个人网络、局域网和广域网。用户计算机设备12a-12n通常(但未必一定)能够通过第一通信网络14a访问和传递数据。
在一些情况下,用户计算机设备12a-12n包括诸如显示器之类的用户界面13。用户界面13可以包括能够接收来自触摸屏幕的用户的输入的触摸屏。在一些实施例中,用户计算机设备12a-12n可以包括能够接收来自用户计算机设备12a-12n的用户的输入的一个或多个外围输入设备,诸如键盘、鼠标、触摸板、按钮等。
流时间线社交网络软件22可以至少部分存储在包含于计算服务器20中或可由计算服务器20以其他方式访问的暂态或非暂态计算机可读存储器中。当计算服务器20的一个或多个处理核执行流时间线社交网络软件22时,提供基于时间的社交网络的各种特征和功能,如本文中进一步详细描述的。
虽然流时间线社交网络软件22在图1中示出为驻留在单个计算服务器20设备上,但是将容易理解,流时间线社交网络软件22可以设置在分布式计算环境中,使得流时间线社交网络软件22的一些部分存储在多个物理上分开的服务器计算机中和/或由其执行,其中每个服务器计算机可以访问流时间线社交网络软件22的一个或多个其他部分,这些部分可以存储在一个或多个其他计算服务器设备中并且由其执行。
附加地或替代地,用户计算机设备12a-12n还可以包括本地流时间线社交网络应用15。本地流时间线社交网络应用15可以是例如已下载的用于在本地执行的应用,该应用可以向用户计算机设备12a-12n提供流时间线社交网络软件22的一些或所有特征和功能。在某些时候,特定计算机设备12a-12n的本地流时间线社交网络应用15经由应用接口26通信地耦合到流时间线社交网络软件。因此,本地流时间线社交网络应用15可以向用户计算机设备12a-12n的用户提供系统10的一些或全部特征,即使当例如用户计算机设备12a-12n没有经由第一通信网络14a与流时间线社交网络软件22通信时也可以。
系统10的第一用户可以使用用户计算机设备12a-12n创建故事16。创建的故事16是由系统10的第一用户创建的对象,用于发布和/或用于与流时间线社交网络系统10的其他用户(例如,经由系统10连接到第一用户的朋友或其他用户)共享。创建的故事16可以与系统10内的第一用户的简档或账户相关联。
每个创建的故事16可以通过时间关联模块24与两个确定的时间相关联。首先,时间关联模块24可以将所创建的故事16与所创建的故事16实际创建的时间和日期相关联。其次,时间关联模块可以将所创建的故事16与将分配给所创建的故事16的用户指定的时间相关联。用户指定的时间可以是用户指定的一天中的时间、用户指定的日期、或者用户指定的一天中的时间和用户指定的日期这两者。以这种方式,系统10的用户可以指定要分配给每个创建的故事16的任何过去、现在或将来的时间。因此,创建的故事将在用户指定的时间出现在用户的推送中,这些推送是流时间线社交网络系统10内的基于时间的推送。换言之,为了便于理解,用户可以在第一特定时间和日期创建故事,并且用户可以向该故事分配第二特定时间,该第二特定时间是在过去或将来的数月或甚至数年。在这种情况下,故事将在该分配的日期出现在用户的推送以及能够访问特定用户的故事的其他用户的推送中,该分配的日期甚至可以是过去或将来的数月或数年。
在该示例中,时间关联模块24使用创建故事的实际时间和日期(例如,由时间关联模块24接收的)对所创建的故事16加时间戳。这样,可以对系统10中创建的故事进行编目,并且可以基于故事实际创建的时间以及创建用户分配给故事的时间来呈现故事。
计算机设备12a-12n的用户界面13被布置为经由本地流时间线社交网络应用15与流时间线社交网络软件22协作。协作可以包括创建和发布故事。例如,可以提供用户界面13作为智能手机的显示器。用户界面13可以允许用户在描述区域中输入文本,该描述区域由用户访问以输入用户正在创建的故事的文本描述。用户可以创建纯文本故事,或者用户可以输入描述要被包括在故事中的图像或另一多媒体对象的文本。用户界面13可以包括用于创建故事的各种特征,包括例如定位工具、文件或图像上载工具、相机工具、表情符号工具、时间输入工具和很多其他工具。
计算机设备12a-12n的定位工具可以与本地流时间线社交网络应用15完全或部分地一起布置并且用于为所创建的故事附加地理空间位置数据(例如,地址、城市、州、纬度/经度等)。例如,定位工具可以访问在本地流时间线社交网络应用15或流时间线社交网络软件22内的或以其他方式对本地流时间线社交网络应用15或流时间线社交网络软件22可访问的全球定位系统(GPS)设备或映射模块。
文件或图像上载工具也可以与本地流时间线社交网络应用15完全或部分地一起布置。文件或图像上载工具允许计算机设备12a-12n的用户向正在创建的故事中插入已经存储在用户计算机设备12a-12n上的文件或图像。例如,用户可以使用文件或图像上载工具来访问存储在用户计算机设备12a-12n上的图像库。然后,所选择的文件或图像可以被添加到故事并且插入到图像区域中。
相机工具也可以完全或部分地与本地流时间线社交网络应用15一起布置。用户可以经由本地流时间线社交网络应用15访问包括在用户计算机设备12a-12n中或与用户计算机设备12a-12n相关联的相机,并且因此用户可以拍摄图片或视频,图片或视频然后可以被插入图像区域中。
在一些实施例中,表情符号工具还可以与本地流时间线社交网络应用15完全或部分地一起布置。表情符号工具可以用于将一个或多个表情符号插入到所创建的故事的描述区域中。此外,可以经由用户界面13来提供文本输入工具(例如,显示在计算机设备12a-12n上的虚拟键盘),文本输入工具允许用户向描述区域中提供文本输入。
时间工具也可以与本地流时间线社交网络应用15完全或部分地一起布置。时间工具允许用户提供将与所创建的故事相关联的用户指定的时间。用户指定的时间可以是用户指定的一天中的时间、用户指定的日期、或用户指定的一天中的时间。例如,使用时间工具,用户可以指定将与所创建的故事相关联的任何过去、现在或将来的日期。然后,一旦发布了创建的故事,故事将被插入到用户的故事推送以及可以访问或以其他方式包括特定用户的故事(其在与故事相关的过去、现在或将来的时间发生)的任何其他用户的推送中。
在创建故事之后,用户可以利用帖子故事工具发布故事,帖子故事工具在某些情况下是经由用户点击经由该用户界面13呈现的单个图标来执行的。一旦创建的故事被发布,该故事可以根据用户对特定的所创建的故事的偏好而可用于用户、用户的基于时间的社交网络朋友或甚至系统10的所有用户。在一些情况下,用户界面13允许用户指定将与每个创建的故事相关联的隐私级别(例如,“公开”、“朋友”、“仅我”等)。
仍然参照图1,创建的故事16经由第一通信网络14a被提供给流时间线社交网络软件22。流时间线社交网络软件22访问时间关联模块24以使用故事创建和发布的实际时间和日期对所创建的故事“加时间戳”。作为示例,时间关联模块24可以利用由计算服务器架构的确定节点检索到的UNIX时间戳对所创建的故事16加时间戳。时间关联模块24还可以在故事16的创建期间被使用,以向该故事分配特定日期和/或时间,如上面关于计算机设备12a-12n的时间工具所描述的。以这种方式,当用户为所创建的故事16指定时间、日期、或时间和日期两者时,时间工具可以访问时间关联模块24,访问时间关联模块24将所创建的故事16与指定的时间相关联。
时间关联模块24为系统10的每个创建的故事16提供与两个单独的时间线的关联。首先,时间关联模块24将所创建的故事16与故事创建和发布的实际日期和时间相关联(例如,UNIX时间戳)。其次,时间关联模块24将所创建的故事16与指定所创建的故事16何时发生或何时将要发生的用户提供的时间数据相关联(即,将关于用户推送的时间线表示来显示故事)。
创建的故事16由流时间线社交网络应用15提供,并且由流时间线社交网络软件22传递到故事数据库32、图像数据库34、市场数据库36或附加数据库38。创建的故事16是经由第二通信网络14b传递的。第二通信网络14b可以利用一个或多个协议经由一个或多个网络沿着第一通信网络14a的线路进行通信。在一些情况下,第一通信网络14a和第二通信网络14b是同一个通信网络。
创建的故事16可以全部或部分地存储在故事数据库32中。故事数据库32可以是任何数据库,并且可以是例如由AMAZON WEB SERVICES(AWS)托管、提供或维护的DYNAMODB。此外,故事数据库32可以是分布式数据库,其驻留在流时间线社交网络软件22可访问的多于一个物理存储介质上。创建的故事16可以包括用户指定的和用户指示的时间关联(例如,故事的创建时间和用户指定的时间),这些关联可以由时间关联模块24在创建故事时提供。
存储在故事数据库32中的每个故事可以存储在故事数据库32中的主表中,该主表具有相关联的基于时间的存取器(例如,指针、引用等),这些存取器在两个方向上(例如,在时间上向前和在时间上向后)对故事排序。这些存取器允许沿着水平时间轴和竖直时间轴显示和滚动故事。
图像数据库34可以存储由系统10的用户创建的作为所创建的故事16的一部分而被包括的图像或其他多媒体。即,图像数据库34可以存储由系统10的用户上传的实际图像文件作为所创建的故事16的一部分。在这种情况下,故事数据库32可以存储故事的文本描述以及与故事相关联的任何其他细节(例如,用户评论、喜欢/不喜欢、位置信息、表情符号等)。图像数据库34还可以存储到图像数据库34的位置的一个或多个链接,以检索与特定故事相关联的图像或其他多媒体。因此,当用户经由用户计算机设备12a-12n访问故事推送时,本地流时间线社交网络应用15和流时间线社交网络软件22可以检索存储在故事数据库32中的故事。例如,基于故事数据库32中的故事内包含的链接,可以直接从图像数据库34检索与该故事相关联的图像或其他多媒体,以便当它呈现在用户计算机设备12a-12n上时包含在故事中。
图像数据库34可以是例如由内容传递网络提供的数据库,诸如AMAZON S3(AMAZONSIMPLE STORAGE SERVICE)。此外,图像数据库34可以是分布式数据库,其驻留在流时间线社交网络软件22可访问的多于一个物理存储介质上。
图2包括沿着计算机设备12a-n的线路的计算机设备12的一部分。在图2中,用户界面13包括其上呈现有流时间线社交网络的内容的显示器。图2A和2B示出了用户的流时间线社交网络推送的不同图形用户界面视图。流时间线社交网络推送由本地流时间线社交网络应用15和流时间线社交网络软件22的协作提供。图3A示出了“浏览”模式,而图3B示出了“阅读”模式。
如图2A所示,在浏览模式中,用户可以经由用户计算机设备12a的用户界面13显示器沿着水平布置的时间线查看他们的故事推送。推送在图2A中示出为每日推送;然而,很容易理解,推送可以例如以每周、每月、每年或其他这样的时间增量(即,选定的时间段)来显示。在浏览模式中,用户可以在左或右方向上水平滚动。例如,滚动可以通过利用智能手机的触摸屏上的手指轻扫、鼠标、箭头或任何其他这样的输入机制来实现。以这种方式,期望的时间段可以被突出显示或以其他方式带到所显示的推送的中央。
如图2A所示,可以突出显示表示与今天300相关联的故事的图标。在这种情况下,表示与明天310、从今天起的两天320、从今天起的三天330和从今天起的四天340相关联的故事的图标可以顺序地显示在对于今天300的图标的右侧。与此类似,表示与昨天290、两天前280、三天前270和四天前260相关联的故事的图标可以顺序地显示在对于今天300的图标的左侧。
在图2A的表示中,时间段表示单日,但是在其他实施例中,可以由用户选择不同的时间段(例如,按小时、按周、按月、按年、按十年、按世纪、按千年等)。同样在图2A的表示中,示出了各种图标以表示每个时间段,该表示有助于基于用户选择的时间段理解水平可滚动的呈现。在一些实施例中,可以呈现与每个时间段相关联的竖直故事列,而不是“图标”。在诸如这样的情况下,水平滚动包括水平滚动多列用户故事,其中每列与不同的时间段相关联。
在图2A中,每个创建的故事16因此与诸如日期等浏览模式时间段相关联。当用户生成创建的故事16时,由用户指定时间段,但是在一些实施例中,可以编辑对于任何特定故事的时间段。因此,创建的故事16将在由创建用户指定的时间段以浏览模式在用户的推送和某些其他用户的推送中提供。
在为了帮助阐明主题而提供的示例性实施例中,用户在2016年5月10日太平洋标准时间上午8:00创建故事。用户使用例如本地流时间线社交网络应用15的时间工具指定日期2013年1月17日。2013年1月17日的指定数据与该故事相关联。在创建的故事被发布之后,在2013年1月17日发生的创建的故事将出现在用户的推送以及用户的网络内的其他用户(例如,朋友)的推送中。
除了用户指定的时间段之外,每个创建的故事16与创建的时间和日期相关联。创建的时间和日期可以是故事创建的实际时间和日期、与流时间线社交网络软件22的确定节点或线路接收故事的时间相关联的时间戳、或某个其他时间和日期。
图2B示出了根据本公开的一个或多个实施例的用于与用户的流时间线社交网络推送交互的阅读模式的图形用户界面视图。如图2B所示,在阅读模式中,用户可以经由用户计算机设备12a的用户界面13的显示器沿着竖直布置的时间线查看故事推送。用户可以从浏览模式切换到阅读模式,例如,通过首先水平滚动浏览模式以及然后识别特定的日、周、月、年或其他感兴趣的时间段。当识别出期望的时间段时,用户通过竖直滚动就可以进入阅读模式。
例如,如图2所示,用户希望访问“今天”300的推送中的故事。然后,用户可以选择感兴趣的时间(例如,今天300),例如,当今天300在主焦点区域中时停止水平滚动,其中主焦点区域是计算机设备12a的用户界面13显示器的中央列中的第一竖直列。用户可以通过点击触摸屏、点击鼠标等来停止水平滚动。一旦被选择,用户然后就可以使用阅读模式查看推送,如图2B所示。
在图2B中,主焦点区域示出了计算机设备12a的用户界面13显示器的中央列中的第一竖直列。左辅焦点区域是布置在第一竖直列的第一侧(例如,左侧)的第二竖直列,而右辅焦点区域是布置在第一竖直列的第二侧(例如,右侧)的第三竖直列。第二侧与第一侧相对。
在阅读模式中,用户推送中与该特定时间段(例如,今天300)相关联的所有故事(即,与用户相关联的所有故事,包括例如由用户创建的故事、由用户的朋友创建的故事、由用户正在关注的用户创建的故事等)在竖直可滚动的推送中提供。
在一些情况下,故事在阅读模式中基于创建故事的实际时间和日期(例如,可以根据附加到每个创建的故事的时间戳信息来确定)按照时间先后顺序布置。因此,在图2B的示例中,要在用户的阅读模式推送中显示的第一故事301可以是具有与阅读模式视图的日期(例如,今天300)相匹配的用户指定的日期的最最近创建的故事。第二故事302是第二近创建的故事,并且第三故事303是第三近创建的故事。通过竖直向下滚动,可以向用户提供与相关阅读模式日期(例如,今天300)相关联的附加故事。当用户向下滚动时,每个故事基于实际创建故事的日期和时间按照时间先后顺序显示。因此,用户越往下滚动,每个显示的故事越旧(即,在更远的过去创建)。
故事可以按任何期望顺序排序。例如,在一种情况下,基于时间日期标记对故事进行排序,并且在时间上更近的故事在时间上更远的故事之前推送。在另一种情况下,基于计算机设备12a的当前报告位置对故事进行排序,并且更接近当前报告位置的故事在更远离当前报告位置的故事之前推送。在其他情况下,基于商品或服务的特定类型,基于推送的主题,基于美元价值或者基于某个其他原因对故事进行排序。
可以选择阅读模式推送内的任何特定故事(例如,通过手指点击、鼠标点击等),并且然后可以显示该故事的进一步细节。例如,当用户从阅读模式中显示的故事中选择特定故事时,可以进一步显示与故事相关的用户评论、用户“喜欢”或“不喜欢”、到其他相关故事的链接等。
在图2B中还示出了故事推送的多个其他列。在今天300推送左侧的推送(即,今天300推送包括故事1c、故事2c、故事3c)在时间上较早,并且按照用户选择的时间段排序。紧邻在今天300推送左侧的推送是昨天290推送。在昨天290推送中,只有单个故事291被示出以避免不必要地混乱这个图。在昨天290推送左侧的是今天减去一天(今天-1(T-1))推送280,为了简洁起见仅示出了单个故事281。今天300推送右侧的推送在时间较晚,并且按照用户选择的时间段排序。今天300推送右侧的推送包括明天推送310和今天加一天(今天+1(T+1))推送320,为了简单起见也仅识别了单个故事311、321。
图3包括图3A至3H。在图3A-3H中,示出了根据本公开中描述的实施例的用户的计算机设备112的多个示例性用户界面113“屏幕截图”。用户的计算机设备112沿着计算机设备12(图2)和计算机设备12a-n(图1)的线,并且为了简洁起见,没有提供进一步的讨论。用户界面113沿着用户界面13(图1和图2)的线,并且为了简洁起见,没有提供进一步的讨论。示出了图3A-3H中的相似的附图标记和结构,并且在每个图中没有明确地示出,以避免不必要地使附图混乱并且从而模糊感兴趣的特定特征。
在图3A中,第一用户的计算机设备112通信地耦合到被布置为在计算服务器架构中组织基于时间的社交网络的流时间线社交网络软件22。第一用户的计算机设备112正在执行本地流时间线社交网络应用22。用户界面113被布置为显示在计算机设备112处接收的并且被布置用于基于用户选择的时间段进行水平和竖直可滚动的呈现的多个故事。用户选择的时间段可以是小时、一天、一个月、一年或某个其他时间段。在图3A中,时间段是一天。
第一列故事130表示今天,第二列故事120表示昨天,并且第三列故事140表示明天。多个故事已经由基于时间的社交网络的用户生成,并且每个故事已经与故事首次发布时的用户指定的时间相关联。在一些情况下,用户指定的时间可以由原始用户、已经被授权的不同用户或流时间线社交网络软件22编辑。用户指定的时间可以是用户指定的一天中的时间、用户指定的日期、或用户指定的时间和日期这两者。
已经由流时间线社交网络软件22接收的每个故事已经被分配了不同的系统范围的唯一号码。系统范围的唯一号码允许基于分配的系统范围的唯一号码和一个或多个数据库中的索引来大量存储故事,以便快速存储和检索。以这种方式,故事的存储和检索可以是实时的或接近实时的,这被用户感知为非常快并且几乎是即时的(如果不是完全即时的)。例如,每个故事可以与特定用户、一组用户、时间日期标记、用户指定的时间、地理位置、用户指定的主题、自动生成的系统确定的主题等相关联。
当用户操作在计算机设备112上执行的本地流时间线社交网络应用15时,通过流时间线社交网络软件22向设备推送多个故事。所述多个故事被布置为基于用户指定的时间段呈现在用户界面113上,并且流时间线社交网络软件22基于用户与本地流时间线社交网络应用15的交互从计算机设备112接受输入指示。用户的输入指示被布置为请求一个或多个有序故事,并且每个有序故事与同一个选定时间段相关联。
在图3A中,针对昨天、今天和明天中的每个呈现列化的多个故事。所述多个故事按特定顺序排序。特定顺序具有默认顺序,并且特定顺序可以由用户手动改变,或者由本地流时间线社交网络应用或流时间线社交网络软件22自动改变。
在图3A中,昨天列120中的故事包括故事121-126。尽管列的准则是沿着昨天列120的线,但是为了便于理解附图,没有明确地识别其他列上的其他故事。
每个故事还可以具有故事信息区域127。故事信息区域可以呈现所有权信息(例如,用户标识符、图标、缩略图照片等),并且附加地或替代地,故事信息区域可以呈现关于其他用户的交互的状态信息(例如,“喜欢”、“投票”、评论的数量、最后评论的时间、连接请求、从事交易的请求等)。故事信息区域127示出在故事的显示底部,但是在其他实施例中,显示的信息区域127可以在与特定故事相关联的任何其他一个或多个区域中。
每个列化的多个故事的特定顺序序列可以例如基于用户正在查看的内容的上下文。在某些情况下,基于时间日期标记对故事进行排序,并且在时间上更远的故事之前提供在时间上更近的故事。在一些情况下,基于第一用户远程计算设备的当前报告位置对故事进行排序,并且在更远离当前报告位置的故事之前推送更接近当前报告位置的故事。在某些情况下,基于社交网络的使用方式对故事进行排序。例如,社交网络可以用于报告社交信息,并且基于时间或日期对故事进行排序。社交网络可以在商业环境中使用(例如,用于销售商品或服务),并且在这种情况下,可以基于地理位置、价格、商品或服务类别、客户类别或任何其他类别对故事进行排序。如果社交网络用于将求职者连接到可得到的工作,则可以基于工作类型、工作职能、位置、薪水、资格或任何其他与雇佣相关的类别对故事进行排序。如果社交网络用于报告食品、旅行、娱乐、体育、政府机构或服务、学术机构或学习课程或某种其他广泛的类型,则可以按任何期望顺序对故事进行排序。
在图3A的实施例中,当用户向左或向右滚动时,整列故事被布置为向左或向右滚动。以这种方式,用户可以非常快速地滚动时间段。此外,经由用户界面,用户可以输入特定时间段,并且从而“时间旅行”到与该时间段相关联的故事列,其中新故事列也被紧邻新时间段的其他故事列包围。
在图3A的实施例中,用户界面113的中央列是计算机设备112的显示器的主焦点区域。中央列被示出为大于图3A中的周围列或其他列,但是在其他实施例中,主焦点区域不大于周围的辅焦点区域,而是以另一种方式强调主焦点区域或者甚至根本不强调主焦点区域。也就是说,在一些情况下的主焦点区域在用户界面113的中央部分中被识别,并且用户的交互使得用户很清楚主焦点区域所在的位置。
在图3A中,基于用户选择的日期按列呈现多个故事,使得与用户选择的日期相关联的故事被竖直地呈现在移动计算设备的显示器的主焦点区域中,并且与用户选择的日期无关的故事被竖直地呈现在移动计算设备的显示器的一个或多个辅焦点区域中。当用户竖直滚动主焦点区域时,本地流时间线社交网络应用15将接受竖直滚动信息并且向流时间线社交网络软件22传递对故事序列的一个或多个相应的请求;序列中的每个故事与同一个选定时间段相关联。流时间线社交网络软件22将从数据库检索有序故事并且将有序故事传送到计算机设备112,在计算机设备112中有序故事将在主焦点区域中竖直地呈现。换言之,用户可以向上、向下、或向上和向下滚动中央列以显示故事序列。
在图3A的实施例中,基于一天中的时间段呈现故事。例如,主焦点区域中的中央列表示与今天130相关联的故事。在中央列左侧的第一辅焦点区域表示与昨天120相关联的故事,并且在中央列右侧的第二辅焦点区域表示与明天140相关联的故事。在其他情况下,每个顺序时间段(即,每个顺序故事列)表示下一顺序周、下一顺序月、下一顺序年、下一顺序十年、下一顺序世纪、下一顺序千年等的故事列。
用户界面113包括上下文信息区域150。上下文信息区域可以用于传递信息,接收用户输入,或者既传递又接收与本地流时间线社交网络应用15、流时间线社交网络软件22相关联或与本地流时间线社交网络应用15和流时间线社交网络软件22两者都相关联的信息和用户输入。
在一个实施例中,上下文信息区域150指示用户对社交网络架构的访问的上下文。上下文信息区域150可以例如指示用户处于市场模式、社交网络模式、餐馆模式、旅行模式、特定爱好模式、运动模式或任何其他这样的模式。在这些实施例中的一个或在另一实施例中,上下文信息区域150包括用户可以改变用户选择的时间段的区域。上下文信息区域150可以用于基于时间的社交网络的任何一个或多个其他目的。
在图3B的实施例中,用户界面被示出为具有选择环152、第一输入图标154、第二输入图标156和第三输入图标158。第一、第二和第三输入图标152-156的图形可以表示在用户选择特定图标时将采取的对应动作。
在一个实施例中,例如,第一图标154表示通知功能。如果用户选择第一图标,则用户界面113部分或全部地转变到用户可以基于某些通知来查看、响应或以其他方式采取动作的界面。
在示例性实施例中,第二图标156表示简档功能。当选择简档功能时,用户界面113部分或全部地转变到用户可以查看、编辑、输入、删除或以其他方式操纵简档信息的界面。用户可以连接到网络“朋友”,断开与朋友的连接,并且采取其他社交网络动作。
在又一示例性实施例中,第三图标158表示对话功能。当选择对话功能时,用户界面113部分或全部地转变到用户可以与一个其他用户、一组用户或社交网络的所有用户通信地交谈的界面。例如,对话功能可以作为一对多聊天功能、一对一组聊天功能或广播聊天功能运行。
在一些情况下,用户可以水平滚动各种时间段,并且用户可以竖直地滚动选定时间段的故事序列。如果用户想要评论特定故事,则用户可以选择第三图标158并且进入对话用户界面。用户可以通过输入文本、输入音频、输入诸如视频或静止图像等视觉数据或者输入某种其他信息来进行评论。用户可以实时地与另一用户一对一地“聊天”,或者用户可以像在“聊天室”中那样实时地与一组用户聊天。在其他情况下,用户可以简单地发布社交网络的其他用户可访问的评论或其他多媒体输入。
为了简化附图并且易于理解,图3C示出了选择环152、第一图标154、第二图标156和第三图标158,其中省略了一些下面的故事。
在图3D中,用户已经选择了选择环152。选择可以经由用户界面113的触摸屏部分、鼠标指针和相关联的选择动作、语音命令或某种其他选择动作来进行。当选择了选择环152时,呈现选择环警报器160。选择环警报器160可以呈现与选择环152的操纵相关联的上下文信息。选择环警报器160可以包括如图3D中的视觉信息。选择环警报器160还可以或替代地包括音频信息、触觉信息或被布置为捕获用户注意的任何其他信息。
图3D中的选择环的操纵还导致呈现第四图标162、第五图标164和第六图标166。第四、第五和第六图标162-166可以呈现为图形、声音、触觉指示符或某种其他方式中的任何一种或多种。第四、第五和第六图标162-166可以被布置为传达关于与特定图标相关联的一个或多个特征功能的信息。在图3D的实施例中,第四图标162与时间旅行功能相关联,第五图标164与故事发布特征相关联,并且第六图标与搜索功能相关联。
在图3D中,选择环152已经被操纵并且定位在第四图标162上方。选择环警报器160指示第四图标162的选择将允许用户进入时间旅行功能界面。
在图3E中,选择环152已经被操纵并且定位在第五图标164上方。选择环警报器160指示第五图标164的选择将允许用户向基于时间的社交网络发布新故事。
在图3F中,选择环152已经被操纵并且定位在第六图标162上方。选择环警报器160指示选择第六图标162将允许用户进入搜索功能界面。
图3G示出了时间旅行功能界面168的一个实施例。时间旅行界面168包括用户选择的时间段输入界面170、月选择轮172、日选择轮174和年选择轮176。通过时间旅行界面168,允许用户对他们的基于时间的社交网络进行时间旅行。例如,在用户界面113的中央列(例如,图3A)中,与今天130相关联的故事序列呈现在主焦点区域中。同期时间段中的其他故事竖直地呈现在辅焦点区域中示出的列中。用户可以水平滚动以选择不同的用户选择的时间段,或者替代地,用户可以进入时间旅行功能界面168。使用时间旅行功能,本地流时间线社交网络应用15被布置为生成和传送用于将选定时间段更改为不同的选定时间段的输入指示。
在图3G的时间旅行功能界面168中,在不同的实施例中,用户可以创新地操纵竖直滚轮或某种其他类型的接口。已经发现,经由图示的月选择轮172、日选择轮174和年选择轮176实现的竖直滚轮非常有效。例如,当用户滚动选择器轮172-176中的任何一个时,信息可以从本地流时间线社交网络应用15传递到流时间线社交网络软件22。流时间线社交网络软件22被布置为使用这个初步信息来识别和构建查询以预先查找故事序列。以这种方式,用户获得了快速、直观且高效地在时间上旅行以创建新的用户选择的时间段的第一益处。同样,以这种方式,用户获得了进行选择(例如,接受用户选择的时间段界面170中的时间信息)并且使用户界面113快速转变到与新选择的时间段相关联的故事列的第二益处。新故事的转变和填充被布置为实时发生,并且对于用户来说,新故事的呈现非常快并且在某些情况下看起来是瞬时发生的。
在图3H中,用户刚刚在之前操纵了选择环152以将其定位在第五图标164上方(图3E)。选择环警报器160指示第五图标164的选择将允许用户向基于时间的社交网络发布新故事,并且用户已经进入发布功能界面。
在图3H的发布功能界面中,计算机设备112的多媒体功能被实例化。在图3H中,多媒体功能是相机,但在其他情况下,多媒体功能可以包括相机输入、音频输入、触觉输入、生理数据(例如,脑电波、情绪数据、生物材料采样数据(例如,尿液、唾液、痰等)、运动范围数据等)输入等中的任何一种或多种。
图3H的发布功能界面示出了第七图标180、第八图标182和第九图标184。第七、第八和第九图标180-184可以被呈现为图形、声音、触觉指示符或某种其他方式中的任何一种或多种。第七、第八和第九图标180-184可以被布置为传达关于与特定图标相关联的一个或多个功能的特定信息。在图3H的实施例中,例如,第七图标180与用于访问本地存储的多媒体的功能相关联,第六图标182与用于接受新的多媒体输入(例如,拍摄图片,记录音频/视频,捕获运动,等等)的功能相关联,并且第九图标与诸如输入文本等另一用户输入界面相关联。
在图3H的实施例中,用户可以进入发布功能界面,使用第八图标182拍照,并且立即向基于时间的社交网络发布新拍摄的多媒体。附加地或替代地,用户可以选择第七图标180并且选择先前捕获的多媒体,先前捕获的多媒体也可以被快速地发布到基于时间的社交网络。此外,附加地或替代地,用户可以选择第九图标184并且输入与将作为新故事发布的多媒体内容自动关联的文本或其他多媒体输入。例如,用户可以经由第八图标182的协作使用来拍照,并且然后经由第九图标184的协作使用具有描述性文本或者提供某种其他输入或评论来标记该图片。由计算机设备112收集的附加输入可以由流时间线社交网络软件22来布置在图3A的故事信息区域127中呈现。
图4示出了流时间线社交网络系统10A的实施例。在系统10A中,在计算机设备112上执行的客户端应用被允许向不同的基于时间的社交网络推送发布内容。在图4中,示出了四个特定推送(即,“社交”推送、“市场”推送、“食物”推送和“附加”推送。“附加”推送可以包括本公开中描述的或基于时间的社交网络组织架构中以其他方式预期的任何其他特定上下文推送)。
实现了超级结构114以管理多个单独的推送子系统。超级结构114管理各种推送的通信量。推送管理包括分离推送专属信息以及共享交叠的推送信息。例如,在一些情况下,属于不同推送的故事帖子将共享诸如用户标识符、时间戳或创建日期等属性。在某些情况下,属于不同推送的故事帖子将具有特定属性,诸如发布到“市场”推送的故事帖子具有“价格”属性。在一些情况下,超级结构114被实现为利用了特定数据库结构、网络服务结构和网页结构的服务器端网络应用框架。在一种情况下,超级结构114用单个RUBY ON RAILS服务器实现,该服务器具有多个工作者、服务和多个实例。
超级结构114还将管理故事发布和检索的其他方面。例如,发布流程将在一个推送与另一推送之间不同。例如,“市场”可以被布置为仅允许“公共”或群组帖子,并且“社交”可以被布置为可配置地允许“公共”帖子、“仅朋友”帖子、“仅我”私人帖子等。
在某些情况下,发布到各种推送的帖子符合JAVA SCRIPT OBJECT NOTATION(JSON)格式。在这些情况下,超级结构被布置为区分属于“社交”推送的帖子的JSON结构和属于“市场”推送的帖子的JSON结构等。
在超级结构114中,应用程序接口(API)请求从一开始就被分开。由超级结构114管理的每个推送因此布置了至少一个并且在一些情况下是多个用于故事创建(即,发布故事)的端点,并且布置了用于向不同的推送提供数据(即,获取或以其他方式检索故事)的多个端点。以这种方式,超级结构114至少具有用于故事创建(即,发布)和故事检索(即,获取)的分立的端点。
此外,通过分离每个推送的虚拟通信路径,超级结构114架构避免了存储标识故事是属于一个推送还是另一推送的“类型”域。针对每个“发布”请求,超级结构114基于请求路径自动知道要在哪里存储该故事。并且针对“获取”响应,超级结构114与本地流时间线社交网络应用15协作以知道客户端将在哪里推送一组故事。沿着这些线,每个推送支持“发布”、“放置”、“删除”和“获取”操作。
在系统10A中,超级结构114实施特定数据持久性策略。超级结构114将不同推送的故事存储到分立的数据库表中,并且基于使用情况而专门针对它们中的每个而设计存取器表。提供的API端点支持每个不同推送的“发布”、“放置”、“删除”和“获取”操作。以这种方式,基于时间的社交网络采用特定的组织来架构,从而允许快速、简单且直观的可扩展性。没有其他已知的社交网络架构是以这种方式组织的。当出现特定的商业、社交、教育、政府、慈善或其他情形以创建新的推送或删除不用的推送时,可以容易地采用超级结构114实现。而且,流时间线社交网络软件22的架构允许计算硬件资源轻松升级、轻松降级和业务负载平衡。
超级结构114包括用于每个推送发布操作的多个API端点。为了理解可以串联的展示各端点以理解该结构,但是各个实例并行操作以实现可伸缩性。
数据库服务器架构120与超级结构114协同工作。数据库服务器架构120可以包括或以其他方式可通信访问(图1)故事数据库32、图像数据库34、市场数据库36和附加数据库38。多个存取器1-n与多个相关联的功能和属性模块118a-n协作以在合适的数据库结构中适当地存储和检索故事。
图5示出了另一实施例中的流时间线社交网络系统10B。在系统10B中,多个存取器和服务在第二超级结构114b实施例的各个推送中协作,该第二超级结构114b通信地耦合到第二数据库服务器架构116b。
在系统10B中,每个推送被组织为具有用于过去故事、现在故事和将来故事的专用服务的虚拟管道。此外,每个推送虚拟管道具有基于时间的“发布”操作和基于时间的“获取”操作的专用服务。在具有这种特定目标服务的一些实施例中,时间旅行特征(图3G)被布置为执行预查找数据库过程,这提高了发布故事和检索故事的速度。
图6示出了又一实施例中的流时间线社交网络系统10C。系统10C被布置为包括多个引擎模块,包括水平滚动引擎202、竖直滚动引擎204、基于时间的发布引擎206和基于时间的提取引擎208。滚动引擎、发布引擎和提取引擎与分组引擎210相关并协作。系统10C还被配置为包括画面转换引擎212、选择环引擎214、基于时间的聊天引擎216、时间线引擎218、虚拟托管引擎220和握手引擎222。在另一模块224中提供了若干社交网络服务。社交网络服务包括标准搜索功能、登录引擎、安全模块、“朋友”模块、朋友网络模块、标准私人模块、标准公共聊天模块、数据压缩模块、数据转换模块和评级/评论模块。为了简洁起见,省略了其他社交网络服务。
水平和竖直滚动引擎202、204被布置用于无限流动架构。也就是说,当达到限制边界时,不是停止滚动,而是水平滚动引擎202和竖直滚动引擎204再次在终点处开始,就好像时间线“翻了回来”。在一个示例中,故事可以具有若干多媒体图像。当用户进入故事以查看或以其他方式消费内容时,用户可以水平地滚动内容,该内容可以基于时间、接近度或以其他方式显示。当滚动接近“最后的”图像时,滚动引擎自动地将视图翻回来以在第一图像处重新开始。
分组引擎210被布置为便于时间段的用户选择。例如,用户可能想要按天、按周、按月等查看故事。分组引擎210协助分组,使得选定时间段“组”将与水平滚动引擎202和竖直滚动引擎204无缝地一起操作。
画面转换引擎212被布置为将所呈现的多媒体内容的一个画面平滑地转换到另一画面。显示器上的展示使得一个新图像和缓移动并且转换成现有图像。
选择环引擎214控制经由用户界面呈现的选择环。选择环引擎214可以操作以照亮隐藏的图标,将主内容遮蔽到背景中,等等。选择环引擎214允许用一只手并且特别是用一个拇指在智能手机上操作流时间线社交网络的大部分或全部操作。也就是说,选择环位于显示器上,它可以被拖动、放下、轻敲或以其他方式操纵以生成故事,发布故事,滚动,编辑用户参数,等等。
基于时间的聊天引擎216基于用户的时间线来协助聊天功能。在一些实施例中,聊天功能可以是一对一、一对多或一对全部。
时间线引擎218被布置为按照用户选择的序列来传送故事。在某些情况下,基于时间呈现故事序列,使得最为最近发布的故事被首先呈现,而不是首先呈现更早时间之前发布的故事。在其他情况下,时间线引擎218基于相对于移动设备的当前位置的地理位置或某个其他用户选择的位置来对故事进行排序。在其他情况下,时间线引擎218允许流时间线社交网络软件22确定用于呈现故事的序列。
虚拟托管引擎220和握手引擎222促进基于时间的社交网络的商业化机会。例如,基于时间的社交网络的选定推送可以用于在个人用户之间或其他实体之间购买和销售商品或服务。在这些情况下,虚拟托管引擎220可以允许交易的每一方上载有价值的物品或有价值的物品的代表。有价值的物品可以是金钱、音乐会门票的条形码、商品的权属的表征、或任何其他这样的表征。然后,虚拟托管引擎220可以生成唯一的计算机可读码(例如,条形码、QR码等)。随后,当各方要完成交易时,采用虚拟握手引擎222让每一方扫描其他各方生成的码。当双方扫描了它们各自的码时,交换或以其他方式释放有价值的物品。可替代地,如果任何一方不追求完成交易,则将每一方的有价值物品退还给其原始所有者。
图7示出了在计算服务器架构700中组织基于时间的社交网络的方法。计算服务器架构具有被布置为执行存储在相关存储器中的指令的处理器核,并且指令由从多个远程计算设备接收的请求来指示。
在704,由基于时间的社交网络的用户生成多个故事。每个故事都与用户指定的日期相关联。在706,向所接收的多个故事中的每个故事分配不同的系统范围的唯一号码。处理转到708,在708中,将所接收的多个故事中的每个故事存储在存储器中,并且基于其分配的系统范围的唯一号码,将所接收的多个故事中的每个故事与用户、时间日期戳和用户指定的日期相关联。
在710,向第一用户远程计算设备推送多个故事。所述多个故事被布置为基于用户指定的日期被呈现。在712,从第一用户远程计算设备接受输入指示。输入指示被布置为请求一个或多个有序故事,所述一个或多个有序故事中的每个与同一个选定日期相关联。输入指示还被布置为将选定日期更改为不同的选定日期。
在714,执行可选操作。在一些情况下,将所接收的多个故事中的每个故事存储在存储器中并且进一步将其与地理位置相关联。在一些情况下,将所接收的多个故事中的每个故事存储在存储器中并且进一步将其与用户指定的主题相关联。在一些情况下,将所接收的多个故事中的每个故事存储在存储器中并进一步将其与系统确定的主题相关联。在某些情况下,基于时间日期戳对有序故事进行排序,并且在时间上更远的故事之前推送在时间上更近的故事。在一些情况下,基于第一用户远程计算设备的当前报告位置对有序故事进行排序,并且在更远离当前报告位置的故事之前推送更接近当前报告位置的故事。
在计算服务器架构中组织基于时间的社交网络的方法的处理可以在716处结束。在一些情况下,处理在702或704处再次开始。在一些情况下,在计算服务器架构中组织基于时间的社交网络的方法的处理并不结束。
图8示出了用于与被布置为使用移动计算设备800在计算服务器架构中操作的基于时间的社交网络交互的方法。移动计算设备具有至少一个处理器,所述至少一个处理器被布置为执行存储在与所述至少一个处理器相关联的非暂态计算机可读介质中的指令。
处理开始于802。
在804,与计算服务器架构形成通信关系。计算服务器架构被布置为访问存储由基于时间的社交网络的用户生成的多个故事的数据库架构。所述多个故事中的每个故事与用户指定的日期相关联。在806,向计算服务器架构传送用户选择的日期,并且在808,移动计算设备接收多个故事。所述多个故事被布置为基于用户选择的日期进行水平和竖直可滚动的呈现。
在模块810执行可选处理。在一些情况下,基于用户选择的日期呈现多个故事,使得与用户选择的日期相关联的故事竖直地呈现在移动计算设备的显示器的主焦点区域中,并且与用户选择的日期无关的故事竖直地呈现在移动计算设备的显示器的一个或多个辅焦点区域中。在一些情况下,接受竖直滚动信息,并且竖直滚动信息被布置为请求第一故事序列。这里,第一序列中的每个故事与同一个选定日期相关联,并且在移动计算设备的显示器的主焦点区域中竖直地呈现所接收的第一序列中的故事。
在810可选处理的一些情况中,接受水平滚动信息。水平滚动信息被布置为请求一个或多个第二故事序列。所述一个或多个第二序列与顺序递增日期或顺序递减日期相关联。在这种情况下,在移动计算设备的显示器上水平地呈现多个竖直布置的故事列。每个竖直布置的列与下一顺序日期相关联。在这些情况中的一些中,顺序递增日期按月或按年顺序地递增,使得每个顺序竖直布置的列分别包括下一顺序月或下一顺序年的故事。
在810可选处理的又一些其他情况下,所述多个故事在主焦点区域中呈现,作为移动计算设备的显示器的中央列中的第一竖直列。这里,左辅焦点区域是布置在第一竖直列的第一侧的第二竖直列,并且右辅焦点区域是布置在第一竖直列的第二侧的第三竖直列。第二侧与第一侧相对。
与被布置为使用移动计算设备在计算服务器架构中操作的基于时间的社交网络交互的方法的处理可以在816处结束。在一些情况下,处理在802或804处再次开始。在一些情况下,与使用移动计算设备在计算服务器架构中操作的基于时间的社交网络交互的方法的处理并不结束。
如在本公开中使用的,术语“模块”是指专用集成电路(ASIC)、电子线路、可操作以执行一个或多个软件或固件程序的处理器和存储器、组合逻辑电路、或者提供关于模块所描述的功能的其他合适的部件(硬件、软件、或硬件和软件两者)。
如在本公开中使用的处理核或处理器(即,处理单元)是指单独地、共享地或在一组中的具有一个或多个执行单元的一个或多个处理单元,并且这样的处理核和处理器包括执行指令的中央处理单元(CPU)、数字信号处理器(DSP)、微处理器、微控制器、状态机等。
在本公开中,存储器可以以一种配置或另一种配置来使用。存储器可以被配置为存储数据。替代地或附加地,存储器可以是非暂态计算机可读介质(CRM),其中CRM被配置为存储可由处理器执行的指令。指令可以单独存储或作为文档中的指令组来存储。文件可以包括功能、服务、库等。文件可以包括一个或多个计算机程序,或者可以是较大计算机程序的一部分。替代地或附加地,每个文件可以包括用于执行本公开中描述的系统、方法和装置的计算功能的数据或其他计算支持材料。
如本领域技术人员所知,诸如计算服务器20(图1)等计算设备具有一个或多个存储器,并且每个存储器包括用于读取和写入的暂态和非暂态、易失性和非易失性计算机可读介质的任何组合。易失性计算机可读介质包括例如随机存取存储器(RAM)。非易失性计算机可读介质包括例如只读存储器(ROM)、诸如硬盘等磁介质、光盘驱动器、闪存设备、CD-ROM等。在某些情况下,特定存储器被虚拟地或物理地分离成单独的区域,诸如第一存储器、第二存储器、第三存储器等。在这些情况下,可以理解,存储器的不同分区可以处在不同的设备中,或者在单个存储器中实施。存储器的一些或全部存储内容可以包括可由处理设备执行以实施一个或多个特定动作的软件指令。
诸如计算服务器20(图1)和计算机设备12、12a-n、112等计算设备还可以包括诸如操作系统等存在于传统计算设备中的操作软件、用于通过输入/输出(I/O)线路来指示操作的软件驱动器、联网线路和其他外围部件线路。另外,计算服务器可以包括操作应用软件,诸如用于与其他计算设备通信的网络软件、用于构建和维护数据库的数据库软件以及用于在各种处理单元之间分配通信和/或操作工作量的任务管理软件。这些计算设备还分别包括流时间线社交网络软件和本地流时间线社交网络应用。当如本文中描述的那样布置有实现本文中描述的一些或所有基于时间的社交网络的特定软件时,每个计算设备从通用和非特定计算设备变换为包括为特定目的而配置的硬件和软件的有形的、非抽象的组合设备。
本文中呈现的某些附图是示出可以由本地流时间线社交网络应用15和流时间线社交网络软件22的实施例使用的过程的流程图。在这方面,每个所描述的过程可以表示模块、片段或代码部分,其包括用于实现指定逻辑功能的一个或多个可执行指令。还应当注意,在一些实现中,过程中提到的功能可以以不同的顺序发生,可以包括附加的功能,可以同时发生,和/或可以省略。
在一些情况下,本文中实现的计算设备是具有本文中列出的硬件和软件的单个硬件机器,并且在其他情况下,计算设备是在服务器群中一起工作以执行基于时间的社交网络的功能的硬件和软件机器的联网集合。为了简单起见,在当前的附图中未示出传统的硬件和软件。
在一些情况下,计算服务器20是生产计算服务器。生产计算服务器20部署在现实世界环境中以通过因特网传送网站页面。计算服务器20可以按流时间线社交网络软件22的程序代码和计算机设备12、121-n、112的用户指示的操作的指示来从相关数据库32、34、36、38读取数据和写入数据。
这里的附图示出了被加载到计算设备的存储器中的软件部件。每个软件部件可以包括一个或多个计算机程序,或者可以是更大的计算机程序的一部分。替代地或附加地,每个软件部件可以包括用于流时间线社交网络软件22或本地流时间线社交网络应用15的数据或其他计算支持材料。
计算设备的存储器可以存储操作系统。操作系统通常为计算设备提供程序和设备管理服务。操作系统的示例包括各种版本的LINUX、MICROSOFT WINDOWS、UNIX等中的任何一个或多个。
存储器可以存储网页管理和监管工具。例如,存储器可以可选地存储一个或多个网络服务器模块、数据库服务器接口模块、脚本处理器模块和网络浏览器模块。网络服务器模块的示例包括APACHE、MICROSOFT INTERNET INFORMATION SERVICES(IIS)、NGINX和GOOGLE WEB SERVER(GWS)。网络服务器通常将网络页面传送到客户端设备。通常,请求是使用超文本传输协议(HTTP)进行的,并且网页作为超文本标记语言(HTML)文档或JAVASCRIPT文档与由文档调出的任何附加内容(例如,图像、样式表格、脚本、功能等)一起传递。
数据库服务器接口模块的示例包括ORACLE/SUN MICROSYSTEM MYSQL、MICROSOFTSQL SERVER和APACHE DERBY。数据库服务器接口模块通常实现在关系数据库上执行输入和输出功能的结构化查询语言(SQL)。在一些情况下,数据库服务器接口模块用实现数据库服务器(例如,故事数据库32、图像数据库34、市场数据库36、附加数据库38)的相同的硬件来实现数据存储库(例如,关系数据库),并且在其他情况下,存储库分布在若干不同机器之间。在某些情况下,数据存储库在单个数据库计算服务器中实现。
脚本处理器是解释和执行脚本语言的指令的计算模块。PHP是脚本语言的一个示例。MICROSOFT ACTIVE SERVER PAGES(ASP)是另一示例。在一些情况下,脚本语言嵌入到网页的HTML源代码中,并且由脚本处理器模块解释。
网络浏览器示例包括MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、MOZILLAFIREFOX和APPLE SAFARI。
这里和所附权利要求中使用的术语“实时(real-time)”或“实时(real time)”并不旨在明确地暗示即时处理、传输、接收等,视情况而定。相反,术语“实时(real-time)”或“实时(real time)”表示活动在可接受的短时间段内发生(例如,在微秒或毫秒的时间段内),并且活动可以持续地执行(例如,在用户选择的时间段操作(图3G)的中间期间触发的故事数据的识别和检索)。非实时活动的示例是在更长的时间段(例如,数小时或数天)内发生的活动或仅在人或其他活动的干预或指示之后才发生的活动。
在前面的描述中,阐述了某些具体细节以提供对各种公开的实施例的透彻理解。然而,相关领域的技术人员将认识到,可以在没有这些具体细节中的一个或多个的情况下或者利用其他方法、部件、材料等来实践实施例。在其他情况下,与包括客户端和服务器计算系统的电子和计算系统相关联的公知结构以及网络未详细示出或描述,以避免不必要地模糊对实施例的描述。
除非上下文另有要求,否则在整个说明书和所附权利要求中,词语“包括(comprise)”及其变型(诸如“包含(comprises)”和“含有(comprising)”)应当以开放的、包含性的意义来解释,例如,“包括但不限于”。
贯穿本说明书对“一个实施例”或“实施例”及其变型的引用表示结合该实施例描述的特定特征、结构或特性被包括在至少一个实施例中。因此,贯穿本说明书在各个地方出现的短语“在一个实施例中”或“在实施例中”不一定都是指同一实施例。此外,特定特征、结构或特性可以在一个或多个实施例中以任何合适的方式组合。
如在本说明书和所附权利要求中使用的,单数形式“一个(a)”、“一(an)”和“该(the)”包括复数指示物,除非内容和上下文另有明确说明。还应当注意,连词术语“和”和“或”通常在最广泛的意义上使用以包括“和/或”,除非内容和上下文明确规定了包容性或排他性,视情况而定。另外,“和”和“或”的组合当在本文中称为“和/或”时旨在涵盖包括所有相关项目或想法的实施例以及包括少于全部相关项目或想法的一个或多个其他替代实施例。
本文中提供的公开内容的标题和摘要仅为了方便,而不是限制或解释实施例的范围或含义。
通过参考所公开的本发明的优选实施例的详细描述,可以更容易地理解本发明。应当理解,本文中使用的术语仅用于描述具体实施方案的目的,而不意在作为限制。还应当理解,除非本文中具体定义,否则本文中使用的术语将被给定其在相关领域中已知的传统含义。
如本领域普通技术人员可以理解的,可以组合上述各种实施例的各方面以提供另外的实施例。根据以上详细描述,可以对实施例进行这些和其他改变。通常,在所附权利要求中,所使用的术语不应当被解释为将权利要求限于说明书和权利要求中公开的特定实施例,而是应当被解释为包括所有可能的实施例以及这样的权利要求有权享有的等同物的全部范围。因此,权利要求不受本公开的限制。
可以组合上述各种实施例以提供另外的实施例。本说明书中提及和/或在申请数据表中列出的所有美国专利、美国专利申请公开、美国专利申请、外国专利、外国专利申请和非专利出版物(包括但不限于2016年5月10日提交的序列号为62/334,318的美国临时申请)通过引用整体并入本文。如果需要,可以修改实施例的各方面以采用各种专利、申请和出版物的概念来提供另外的实施例。根据以上详细描述,可以对实施例进行这些和其他改变。通常,在所附权利要求中,所使用的术语不应当被解释为将权利要求限于说明书和权利要求中公开的特定实施例,而是应当被解释为包括所有可能的实施例以及这样的权利要求有权享有的等同物的全部范围。因此,权利要求不受本公开的限制。