一种运动提醒信息的生成、推送方法及装置与流程

文档序号:28651359发布日期:2022-01-26 18:48阅读:143来源:国知局
一种运动提醒信息的生成、推送方法及装置与流程

1.本发明涉及智能设备技术领域,特别涉及一种运动提醒信息生成、推送的方法及装置。


背景技术:

2.当今社会互联网、智能终端、可穿戴设备发展迅速,应运而生的大数据、云计算技术通过上述终端设备的普及深入到人们生活的方方面面,深刻影响着人们的生活,给人们生活带来极大的便利。甚至在运动健康领域,各类智能应用产品也在协助人们进行健康管理、日常记录和运动规划,潜移默化地影响着人们的生活习惯。从而保有稳定的用户群体,加深用户和智能应用产品之间的粘性,以谋求更大的商业契机。
3.在市面上现有的众多运动健康终端应用产品中,发明人发现现有产品在使用中,其记录功能单纯地相当于一个记事本,不具备提醒功能;或仅根据用户的基础设置按固定时间推送运动提醒,其作用相当于一个定时闹钟,而不具备分析用户的运动习惯,在适合用户运动的时间推送个性化提醒消息服务的智能提醒功能。


技术实现要素:

4.为了解决现有技术的问题,本发明实施例提供了一种运动提醒信息生成、推送方法及装置,以克服现有技术中产品不具备分析用户运动习惯,在适当的时间进行个性化提醒消息推送服务的问题。
5.为了解决上述的一个或多个技术问题,本发明采用的技术方案如下:
6.第一方面,提供了一种运动提醒信息生成方法,包括:
7.获取某一用户的运动数据;
8.根据所述运动数据,确定用户关于至少一项运动项目运动次数最多的时段作为计算时段;
9.根据所述计算时段计算用户关于至少一个运动项目的运动时间,将所述运动时间作为运动提醒时间;
10.根据所述运动提醒时间生成运动提醒信息,并向客户端发送所述运动提醒信息,以便所述客户端提醒用户运动。
11.进一步地,所述方法还包括:
12.根据运动项目的所述运动时间,计算运动项目关联的所述运动时间对应的用户数量;
13.确定运动项目关联所述用户数量最多的所述运动时间为默认时间,将所述默认时间作为运动项目的所述运动提醒时间。
14.进一步地,所述根据所述运动数据,确定用户关于至少一项运动项目运动次数最多的时段作为计算时段,包括:
15.根据所述运动数据获取用户关于运动项目的运动时间,按照预设时间段累加用户
关于运动项目的运动次数;
16.比较运动项目在各所述时间段中的运动次数,确定所述运动次数最多的时段为所述计算时段。
17.进一步地,所述根据所述计算时段计算用户关于至少一个运动项目的运动时间,包括:
18.根据所述运动数据获取用户关于运动项目在所述计算时段中的运动发生时间;
19.根据用户在所述计算时段中所述运动发生时间计算所述运动时间。
20.进一步地,所述根据所述运动提醒时间生成运动提醒信息,并向客户端发送所述运动提醒信息,包括:
21.监控当前系统时间,若所述当前系统时间到达某一运动项目对应的所述运动提醒时间,则根据与所述当前系统时间对应的所述运动提醒时间生成第一运动提醒信息;
22.向所述客户端发送所述第一运动提醒信息。
23.进一步地,所述根据所述运动提醒时间生成运动提醒信息,并向客户端发送所述运动提醒信息,包括:
24.根据预设服务时段内所有的所述运动提醒时间生成第二运动提醒信息;
25.当接收到所述客户端发送的提醒服务请求时,向所述客户端发送所述第二运动提醒信息。
26.第二方面,提供了一种运动提醒信息推送方法,包括:
27.接收第一运动提醒信息,获取所述运动提醒时间;
28.监控当前设备时间,计算接收所述第一运动提醒信息的时间与当前设备时间的时间差;
29.判断所述时间差是否超过延迟时间,若未超过,则读取用户当前运动数据判断用户是否已经执行所述运动提醒时间对应的运动项目,若未执行,则推送所述第一运动提醒信息。
30.进一步地,所述方法还包括:
31.发送提醒服务请求;
32.接收第二运动提醒信息,获取所述运动提醒时间;
33.根据所述运动提醒时间和所述预设延迟时间生成信息推送时间;
34.监控当前设备时间,判断当前设备时间是否到达所述信息推送时间,若到达,则判断是否已接收到所述第一运动提醒信息,若否,则读取用户当前运动数据判断用户是否已经执行所述运动提醒时间对应的运动项目,若未执行,则按照所述信息推送时间推送所述第二运动提醒信息。
35.第三方面,提供了一种运动提醒信息生成装置,包括:
36.数据获取模块,用于获取某一用户的运动数据;
37.计算时段确定模块,用于根据所述运动数据,确定用户执行至少一项运动项目次数最多的时段为计算时段;
38.运动提醒时间计算模块,用于根据所述计算时段计算用户关于至少一个运动项目的运动时间,将所述运动时间作为运动提醒时间;
39.信息生成模块,用于根据所述运动提醒时间生成运动提醒信息;
40.信息发送模块,用于向客户端发送运动提醒信息,以便所述客户端提醒用户运动。
41.进一步地,所述运动提醒时间计算模块,还用于根据运动项目的运动时间,计算运动项目关联的运动时间对应的用户数量,确定运动项目关联用户数量最多的运动时间为默认时间,将默认时间作为运动项目的运动提醒时间。
42.进一步地,计算时段确定模块,具体用于:
43.根据运动数据获取用户关于运动项目的运动时间,按照预设时间段累加用户关于运动项目的运动次数;
44.比较运动项目在各时间段中的运动次数,确定运动次数最多的时段为计算时段。
45.进一步地,计算时段确定模块,具体用于:
46.根据运动数据获取用户关于运动项目在计算时段中的运动发生时间;
47.根据用户在计算时段中运动发生时间计算运动时间。
48.进一步地,信息发送模块,具体用于:
49.监控当前系统时间,若所述当前系统时间到达某一运动项目对应的所述运动提醒时间,则根据与所述当前系统时间对应的所述运动提醒时间生成第一运动提醒信息;
50.信息生成模块,具体用于:
51.向所述客户端发送所述第一运动提醒信息。
52.进一步地,信息发送模块,具体用于:
53.根据预设服务时段内所有的所述运动提醒时间生成第二运动提醒信息;
54.信息生成模块,具体用于:
55.当接收到所述客户端发送的提醒服务请求时,向所述客户端发送所述第二运动提醒信息。
56.第四方面,提供了一种运动提醒信息推送装置,包括:
57.信息接收模块,用于接收第一运动提醒信息,获取所述运动提醒时间;
58.时间差计算模块,用于监控当前设备时间,计算接收所述第一运动提醒信息的时间与当前设备时间的时间差;
59.延迟判断模块,用于判断所述时间差是否超过延迟时间;
60.信息推送模块,用于当所述时间差未超过延迟时间时,推送所述第一运动提醒信息。
61.进一步地,所述装置还包括:
62.请求发送模块,用于发送提醒服务请求;
63.信息接收模块,还用于接收第二运动提醒信息,获取所述运动提醒时间;
64.信息推送时间计算模块,用于根据所述运动提醒时间和所述预设延迟时间生成信息推送时间;
65.信息推送模块,还用于监控当前设备时间,判断当前设备时间是否到达所述信息推送时间,若到达,则判断是否已接收到所述第一运动提醒信息,若否,则按照所述信息推送时间推送所述第二运动提醒信息。
66.本发明实施例提供的技术方案带来的有益效果是:
67.1.对于客户端应用程序的新、老用户分别提供了一种与运动项目相关联的运动提醒时间的生成方法。根据老用户的运动习惯生成个性化的运动提醒时间,并在到达相应运
动的提醒时间点向老用户推送提醒信息,帮助老用户保持运动习惯;基于老用户的运动数据统计,向新用户推送相应运动的提醒时间,帮助新用户养成运动习惯。
68.2.通过客户端请求和平台定时推送这两种提醒消息推送方式,确保设置了运动提醒功能的用户在相应运动项目到达运动提醒时间时,能够收到运动提醒消息的推送。
69.3.通过运动提醒消息推送算法,确保设置了运动提醒功能的用户在当日未开展运动锻炼的情况下,能够收到运动提醒消息的推送;在当日进行过锻炼或接收过提醒消息后,不再重复接收运动提醒消息推送,避免打扰用户生活。
附图说明
70.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
71.图1是本发明实施例提供的一种运动提醒信息生成方法流程图;
72.图2是本发明实施例提供的一种确定用户关于至少一项运动项目运动次数最多的时段的方法流程图;
73.图3是本发明实施例提供的一种确定用户关于至少一项运动项目的运动时间的方法流程图;
74.图4是本发明实施例提供的一种对于新用户的运动提醒信息生成方法流程图;
75.图5是本发明实施例提供的一种对于第一运动提醒信息的推送方法流程图;
76.图6是本发明实施例提供的一种对于第二运动提醒信息的推送方法流程图;
77.图7是本发明实施例提供的一种运动提醒信息生成装置的模块示意图;
78.图8是本发明实施例提供的一种运动提醒信息推送装置的模块示意图;
79.图9是本发明实施例提供的一种老用户提醒时间计算方法;
80.图10是本发明实施例提供的一种新用户提醒时间计算方法;
81.图11是本发明实施例提供的一种运动健康平台和客户端的交互系统示意图。
具体实施方式
82.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施方式中的附图,对本发明实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
83.第一方面,从服务端,本发明实施例提供了一种对于老用户的运动提醒信息生成方法,如图1所示,包括:
84.s1:获取某一用户的运动数据。
85.s2:根据所述运动数据,确定用户执行至少一项运动项目次数最多的时段作为计算时段。
86.s3:根据所述计算时段计算用户关于至少一个运动项目的运动时间,将所述运动时间作为运动提醒时间。
87.s4:根据所述运动提醒时间生成运动提醒信息,并向客户端发送所述运动提醒信息,以便所述客户端提醒用户运动。
88.其中,在步骤s1中运动数据包括:用户信息,用户信息对应的运动项目,运动项目对应的运动开始时间、运动持续时间、运动的具体内容、本次运动时间内重复进行某一技术动作练习的内容、重复练习的组数、每组包含的次数等的一种或多种。
89.在步骤s2中,计算时段是为了计算步骤s3中运动时间而采集运动数据的时间段。本步骤中选取各运动项目运动次数最多的时间段作为计算时段,主要为了能够最大可能多地采集用户的在该运动项目对应的运动数据,提高运动时间计算的准确性。步骤s2具体地,可首先将一天的24个小时预先划分成若干时间段,在运动数据中获取用户在相应运动项目的运动开始时间,将运动开始时间与各预先划分的时间段对应,统计用户进行各运动项目次数最多的时间段作为计算时段。
90.在步骤s3中,运动时间为根据计算时段内相应运动项目运动开始时间计算出的用户应该开始运动的时间,以该运动时间提醒用户进行相应的运动项目,以保证用户能够按时运动。
91.在步骤s4中,运动提醒信息为提醒用户进行某一项运动的信息,包括:运动的项目运动项目对应的运动开始时间、运动项目的具体内容、常规的运动时长等信息中的一种或多种。运动提醒信息的形式可以但不限于:文字短消息形式,闹钟结合文字形式,应用软件推送形式,窗口弹出形式。步骤s4中可按照运动提醒时间的时间顺序依次向客户端发送运动提醒信息。上其中,客户端包括但不限于手机app应用程序,可穿戴设备的应用程序,台式计算机应用软件等。
92.作为一种情况的,上述步骤s2包括:
93.根据所述运动数据获取用户关于运动项目的运动时间,按照预设时间段累加用户关于运动项目的运动次数;
94.比较运动项目在各所述时间段中的运动次数,确定所述运动次数最多的时段为所述计算时段。
95.上述,运动数据为一个用户的历史运动信息,预设时间段为划定的多个统计运动次数的时间段,累加计算后,各预设时间段均对应相应运动项目的运动次数,最终对比各时间段对应的运动次数后,确定运动次数最多的时段为计算时段。
96.上述,在实际设备的应用场景中,如图2所示,累加计算运动次数具体可以通过执行循环读取用户运动报告,统计各时段关联运动次数的方式实现包括:
97.s21:开始循环读取用户运动报告的过程;
98.s22:读取每一用户昨天的运动报告:向数据中心请求用户“运动报告”,并获得数据中心反馈的用户“运动报告”数据;
99.s23:取出用户每次运动的时间,找到对应时间段,将数据中心中“用户运动次数表”中的运动计数加1,并更新数据中心的“用户运动次数表”;
100.s24:结束读取用户运动报告。
101.上述,获取用户关于运动项目的运动时间可以在每天的固定时间开始操作,一般选择在夜晚数据流量较小、服务器工作量较小的时刻开始这一过程,具体地,可以选择每天00:00进行这一服务。读取每一用户昨天的运动报告包含了对数据中心中的数据进行访问
的过程,访问过程是先通过服务器发出请求,在由数据中心返回相关数据的方式进行。具体地,昨天的运动报告可以指当日00:00前,24小时之内的用户所生成的历史运动数据。
102.作为一种情况地,对于具有历史运动数据的老用户,步骤s3中的根据计算时段计算用户关于至少一个运动项目的运动时间,包括:
103.运动时间根据所述运动数据获取用户关于运动项目在所述计算时段中的运动发生时间;
104.根据用户在所述计算时段中所述运动发生时间计算所述运动时间。
105.上述,由于计算时段为用户在某一运动项目中运动次数最多的时间段,因此该时段内的运动发生时间能够准确地反映用户的运动习惯,考虑到计算时段内每次运动发生时间会有差异,因此对计算时段内的运动发生时间做计算获得运动时间,该计算具体可以是平均计算或者加权平均计算等。
106.具体地,如图3所示,在实际的设备应用场景中,运动时间的获得包括:
107.s31:从数据中心中循环读取用户;
108.s32:根据运动数据,确定用户关于至少一个运动项目,运动次数最多的时段作为计算时段;
109.s33:取出用户运动次数最多的时间段;
110.s34:取出运动次数最多的时间段内的运动记录,计算运动时间;
111.s35:将计算得到的运动时间存入数据中心;
112.s36:结束本循环。
113.其中,s32的详细过程在s21至s24中已详细阐述;对于运动时间的计算方法可以是对所述计算时间段中的所有时间求平均数得到;也可以对所述计算时间段进行进一步细分,根据运动时间属于进一步细分时间段的数量确定各个细分区间的权重,对所有时间求加权平均数得到;也可以对所述计算时间段内的时间按照一定的规则提取具有某一特征的样本,计算样本的平均时间,或加权平均时间。对数据中心中运动数据的采样可以人为设置样本容量的大小,可以是5次的数据,可以是10次的数据,也可以是其他次数的数据。本技术中,将以这种做法为例:在运动次数最多的计算时间段内取出最近的10次运动记录,提取10次运动记录对应的运动开始时间,对10次运动开始时间求平均数得到运动时间。
114.作为一种情况的,一种对于不具有历史运动数据的新用户,本发明实施例通过其他用户的运动时间确定新用户的运动时间,因此在老用户运动提醒时间计算方案的基础上,本发明实施例公开的方法还包括:
115.根据运动项目的运动时间,计算运动项目关联的运动时间对应的用户数量;
116.确定运动项目关联用户数量最多的运动时间为默认时间,将默认时间作为运动项目的运动提醒时间。
117.上述,各运动项目对于各用户均会对应有相应的运动时间,以运动时间为标准以用户数量为统计维度,最终可以确定各运动项目的默认时间,该默认时间体现了最多用户的运动发生时间,因此将默认时间作为新用户的运动提醒时间,能够为新用户提供运动时间的参考。
118.应用在实际的设备场景中,如图4所示,对于新用户的运动提醒时间的计算,包括:
119.s51:获取预设数量用户对于某运动项目的运动时间;
120.s52:根据该运动项目的运动时间,计算运动项目在该运动时间对应的用户数量;
121.s53:确定关联运动项目用户数量最多的运动时间为默认时间,将所述默认时间作为运动项目的所述运动提醒时间。
122.其中,确定运动项目关联的运动人数最多的时间段后,可以采用不同的对应规则获取默认时间,例如:选取该时间段的起点时刻、中点时刻、终点时刻,或者对该时间段在进行细分,统计细分时段内的运动人数后进行比较,选取细分时段的对应时刻作为默认时间。
123.作为一种情况的,步骤s4,包括:
124.监控当前系统时间,若所述当前系统时间到达某一运动项目对应的所述运动提醒时间,则根据与所述当前系统时间对应的所述运动提醒时间生成第一运动提醒信息;
125.向所述客户端发送所述第一运动提醒信息。
126.其中,当前系统时间指的是服务器的本地时间,系统时间通过同步对时自动进行校正,因此,可以认为生成的第一运动提醒信息的提醒时间是精确的时间,可以采用此提醒时间作为推送提醒信息的标准时间。但是,第一运动提醒信息在由服务器传递至客户端时,可能会遇到网络阻塞、数据丢失等情况,无法将在精确时间点推送的提醒信息传递给用户端。
127.作为一种情况地,为了保证客户端能够准时收到提醒信息,避免第一运动提醒信息丢失而导致客户端未接收到即时发送的运动提醒信息。步骤s4包括:
128.根据预设服务时段内所有的所述运动提醒时间生成第二运动提醒信息;
129.当接收到客户端发送的提醒服务请求时,向所述客户端发送所述第二运动提醒信息。
130.其中,第二运动提醒信息中包括某用户对应的多项运动提醒信息,第二运动信息基于客户端的请求发送,客户端发送提醒服务请求时,可在客户端启动时发送,请求发送时间要早于第一运动提醒信息的运动提醒时间。第二运动提醒信息将在第一提醒信息发送过程中,遇到网络阻塞,不能到达客户端时,作为备用向用户发送提醒消息。
131.第二方面,从客户端,本发明实施例提供了一种运动提醒信息推送方法,包括:
132.接收第一运动提醒信息,获取运动提醒时间;
133.监控当前设备时间,计算第一运动提醒信息中的运动时间与当前设备时间的时间差;
134.判断时间差是否超过延迟时间,若未超过,则推送第一运动提醒信息。
135.上述,由于网络延迟的原因,客户端接收第一运动提醒信息的时间即当前设备的时间可能会晚于第一运动提醒信息中的运动时间,因此若发生此种情况,则会导致第一运动提醒信息无提醒意义。延迟时间为预设的允许延迟时间范围。进一步地,在计算时间差之前,还可以预先判断用户是否已经执行了相应运动项目的运动,若没有执行,则计算时间差,进行时间差判断步骤。
136.具体地,如图5所示,在实际的设备应用场景中,第一运动提醒信息的推送,包括:
137.s1':接收第一运动提醒信息,获取运动提醒时间;
138.s2':判断是否处理过平台推送的提醒消息;若否,
139.s3':判断用户是否有运动记录或处于运动中;若否,
140.s4':由获取第一运动提醒信息中,获取运动时间;
141.s5':监控当前设备时间,计算接收所述第一运动提醒信息的时间与当前设备时间的时间差,判断所述时间差是否超过延迟时间(5秒);若否,
142.s6':推送接收到的第一运动提醒信息。
143.其中s2',首先判断客户端是否处理过平台推送的提醒消息,是为了排除因网络阻塞、数据丢失等情况;并且验证了运动提醒信息是否重复发送,避免了在客户端重复提醒用户的情况。s5'中提及的延迟时间可以由后台进行设置,一般将其数值设置为:大于经过网络阻塞后又能到达客户端的信息所经历的最长传输时间。若超过该延迟时间仍未收到第一运动提醒信息,则视为该条信息丢失。设置该延迟时间,是为了客户端在超过该延迟时间后向用户推送第二提醒信息,用来保证用户在当日未锻炼的情况下一定能够接收到提醒信息。
144.作为一种情况的,由于第一运动提醒信息是按照运动提醒时间即时发送的,因此为了确保用户能够正常获取到运动提醒,本发明公开的运动提醒信息推送方法,还包括:
145.接收第二运动提醒信息,获取运动提醒时间;
146.根据运动提醒时间和预设延迟时间生成信息推送时间;
147.监控当前设备时间,判断当前设备时间是否到达信息推送时间,若到达,则判断是否一逆境接收到第一运动提醒信息,若否,则按照信息推送时间推送第二运动提醒信息。
148.上述,第二运动提醒信息是服务端接收到客户端的提醒服务请求时发送的,其中包括了该用户多个运动提醒信息,第二运动提醒信息主要用于当第一运动提醒信息不能及时到达客户端时,确保用户仍然能够接收到运动提醒。进一步地,在判断当前设备时间是否达到信息推送时间前,本方法还可以先判断用户是否已经执行了相应运动项目,若是,则无需发送第二运动提醒信息。
149.一种运动提醒信息推送方法,如图6所示,包括:
150.s7':发送提醒服务请求;
151.s8':接收第二运动提醒信息,获取所述运动提醒时间;
152.s9':根据所述运动提醒时间和所述预设延迟时间生成信息推送时间;
153.s10':监控当前设备时间;
154.s11':判断当前设备时间是否到达所述信息推送时间;
155.s12':若当前设备时间到达信息推送时间,则判断是否已接收到所述第一运动提醒信息;
156.s13':若未接收到第一运动提醒信息,则读取用户当前运动数据判断用户是否已经执行所述运动提醒时间对应的运动项目;
157.s14':若未执行,则按照所述信息推送时间推送所述第二运动提醒信息。
158.根据第二提醒信息向用户推送的提醒消息,是为了在网络存在阻塞的情况下,保证用户依然能够收到提醒消息。
159.第三方面,在第一方面运动提醒信息生成方法的基础上,本发明实施例提供了一种运动提醒信息生成装置,如图7所示,包括:
160.数据获取模块701,用于获取某一用户的运动数据;
161.计算时段确定模块702,用于根据所述运动数据,确定用户执行至少一项运动项目次数最多的时段为计算时段;
162.运动提醒时间计算模块703,用于根据所述计算时段计算用户关于至少一个运动项目的运动时间,将所述运动时间作为运动提醒时间;
163.信息生成模块704,用于根据所述运动提醒时间生成运动提醒信息;
164.信息发送模块705,用于向客户端发送运动提醒信息,以便所述客户端提醒用户运动。
165.作为一种情况地,所述运动提醒时间计算模块703,还用于根据运动项目的运动时间,计算运动项目关联的运动时间对应的用户数量,确定运动项目关联用户数量最多的运动时间为默认时间,将默认时间作为运动项目的运动提醒时间。
166.作为一种情况地,计算时段确定模块702,具体用于:
167.根据运动数据获取用户关于运动项目的运动时间,按照预设时间段累加用户关于运动项目的运动次数;
168.比较运动项目在各时间段中的运动次数,确定运动次数最多的时段为计算时段。
169.作为一种情况地,计算时段确定模块702,具体用于:
170.根据运动数据获取用户关于运动项目在计算时段中的运动发生时间;
171.根据用户在计算时段中运动发生时间计算运动时间。
172.作为一种情况地,信息发送模块705,具体用于:
173.监控当前系统时间,若所述当前系统时间到达某一运动项目对应的所述运动提醒时间,则根据与所述当前系统时间对应的所述运动提醒时间生成第一运动提醒信息;
174.信息生成模块704,具体用于:
175.向所述客户端发送所述第一运动提醒信息。
176.作为一种情况地,信息发送模块705,具体用于:
177.根据预设服务时段内所有的所述运动提醒时间生成第二运动提醒信息;
178.信息生成模块704,具体用于:
179.当接收到所述客户端发送的提醒服务请求时,向所述客户端发送所述第二运动提醒信息。
180.第四方面,在第二方面运动提醒信息推送方法的基础上,本发明实施例提供了一种运动提醒信息推送装置,包括:
181.信息接收模块801,用于接收第一运动提醒信息,获取所述运动提醒时间;
182.时间差计算模块802,用于监控当前设备时间,计算接收所述第一运动提醒信息的时间与当前设备时间的时间差;
183.延迟判断模块803,用于判断所述时间差是否超过延迟时间;
184.信息推送模块804,用于当所述时间差未超过延迟时间时,推送所述第一运动提醒信息。
185.作为一种情况地,所述装置还包括:
186.请求发送模块,用于发送提醒服务请求;
187.信息接收模块801,还用于接收第二运动提醒信息,获取所述运动提醒时间;
188.信息推送时间计算模块,用于根据所述运动提醒时间和所述预设延迟时间生成信息推送时间;
189.信息推送模块804,还用于监控当前设备时间,判断当前设备时间是否到达所述信
息推送时间,若到达,则判断是否已接收到所述第一运动提醒信息,若否,则按照所述信息推送时间推送所述第二运动提醒信息。
190.上述所有可选技术方案,可以采用任意结合形成本发明的可选实施例,在此不再一一赘述。下面将以较佳的结合方式,对本发明提供的技术方案做具体说明。
191.下面结合具体的应用场景,对本发明公开的技术方案详细说明。如背景技术所述,现有技术中客户端的运动健康类应用不具备分析用户运动习惯,为用户定制个性化运动时间并推送运动提醒消息的功能。为了解决上述技术问题,本技术提供了一种运动提醒信息的生成方法。客户端经用户设置智能提醒的项目,包括:是否接收智能提醒、需要智能提醒的运动类型等,其中,客户端包括但不限于手机app应用程序,可穿戴设备的应用程序,台式计算机应用软件等。
192.客户端经api接口将用户设置的智能提醒项目上传至运动健康平台,其中运动健康平台包括:api接口,业务逻辑处理模块和数据中心。运动健康平台接收到用户设置的智能提醒参数,对用户是否设置了智能提醒功能进行分析,将用户的设置结果生成“用户智能提醒设置表”,将此表保存在数据中心中。
193.当客户进行运动时,用户可以选择手动输入,或是客户端自动生成运动报告。完整的运动报告生成后,客户端经由api接口将运动报告上传至运动健康平台。进行业务逻辑处理,生成运动报告表,并保存在数据中心。
194.运动健康平台于每天00:00开始对收集到的数据进行运算处理,首先计算老用户的提醒时间,具体过程如图9所示。将一天的时间划分为:05:00-08:00、08:00-10:00、10:00-14:00、15:00-19:00、19:00-23:00几个时间段;平台依次读取用户信息,从存储于数据中心的运动报告中读取各个运动项目的运动时间,对应至上述时间段。对该用户进行的所有运动的运动时间按上述时间段进行次数统计。生成用户运动次数表,并存储在数据中心。
195.从用户运动次数表中取出用户运动次数最多的时间段,取出在上述时间段内,最近10次进行运动的时间,计算平均运动时间,作为该用户的该项运动的运动提醒时间。生成该用户关于各项运动提醒时间的用户提醒日表,并将用户提醒日表保存在数据中心中。
196.循环读取所有用户的信息,直至每一个用户关于各项运动的运动提醒时间都生成,并存储于用户提醒日表中。
197.区别于一种针对客户端老用户的运动提醒信息生成方法,本实施例在图10中提供了一种针对客户端新用户的运动提醒时间生成方法流程图,包括:运动健康平台智能提醒时间计算服务结束之后,在计算得到老用户运动时间的基础上,将启动默认运动提醒时间计算服务。
198.其具体流程如下:
199.按照与老用户运动时间计算过程中对一天的时间相同的划分方法,划分一天的时间段,依次从数据中心的用户提醒日表中循环读取用户提醒数据,判断由从数据中心的用户提醒日表中读取的用户提醒数据的记录是否为空,如果记录不为空,则为每项运动对应的时段用户数加1,以最终运算结果为依据生成每项运动在每个时间段运动用户数表,并将上述表格存储于数据中心。直至从用户提醒日表中读取到的记录为空,则结束读取用户提醒数据的操作。从存储于数据中心的上述每项运动在每个时间段涌动用户数表中获取每项运动用户数最多的时间段,将此时间段内的某一时间点更新至每项运动默认运动的时间
点,并存储在数据中心。本实施例中选用该时间段对应的开始时刻作为默认运动时间在创建每项运动默认运动的时间点记录表时,需注意:要为每项运动默认运动的时间点设置初始值。运动健康平台从数据中心中的用户提醒日表读取最近的运动时间对应的需要提醒的用户,读取用户的提醒时间,判断该用户是否存在提醒时间,若无,则从默认最多用户运动时间点中读取默认最多用户运动时间点作为提醒时间,向客户端返回是否有设置智能提醒和提醒时间;若判断该用户存在提醒时间,则直接向客户端返回是否有设置智能提醒和提醒时间。相关内容传输至客户端后,客户端判断用户是否设置智能提醒,若未设置,则结束任务;若设置了智能提醒,则返回提醒时间,并结束任务。设置的提醒值,并判断用户对于该运动时间相关联的运动项目是否设置智能提醒服务,如果用户对该项运动设置了智能提醒服务,则根据时间设置定时任务;如果用户没有设置智能提醒,则从用户提醒日表中读取下一条记录,如果下一条记录为空则结束任务,如果下一条记录不为空,则返回“值取出设置提醒值”步骤,进行新一轮判断流程。
200.客户端经用户启动时,将向运动健康平台请求运动提醒时间:从用户智能提醒设置表中读取用户智能提醒设置,从用户提醒日表读取用户提醒时间列表,判断有无提醒时间,若有提醒时间的记录,说明该用户曾进行过这项运动,则返回是否设置智能提醒与提醒时间;若无提醒时间的记录,说明该用户未曾进行过这项运动,则从默认最多用户运动时间点中读取默认最多用户运动时间点,作为提醒时间。运动健康平台将是否设置智能提醒与提醒时间返回到客户端,客户端对用户是否设置智能提醒进一步判断,若无,则结束任务;若有,则更新从运动健康平台出接收的返回值。
201.运动健康平台的从数据中心中的用户智能提醒设置表中读取用户智能提醒设置;进一步地,从数据中心中的用户提醒日表读取最近的运动时间对应的需要提醒的用户,读取用户的提醒时间,判断该用户是否存在提醒时间,若无,则从默认最多用户运动时间点中读取默认最多用户运动时间点作为提醒时间,向客户端返回是否有设置智能提醒和提醒时间;若判断该用户存在提醒时间,则直接向客户端返回是否有设置智能提醒和提醒时间。相关内容传输至客户端后,客户端判断用户是否设置智能提醒,若未设置,则结束任务;若设置了智能提醒,则返回提醒时间,并结束任务。设置的提醒值,并判断用户对于该运动时间相关联的运动项目是否设置智能提醒服务,如果用户对该项运动设置了智能提醒服务,则根据时间设置定时任务;如果用户没有设置智能提醒,则从用户提醒日表中读取下一条记录,如果下一条记录为空则结束任务,如果下一条记录不为空,则返回“值取出设置提醒值”步骤,进行新一轮判断流程。客户端接收到由运动健康平台定时发送的智能提醒消息后,判断用户是否有运动记录或者处于运动中,如果用户有运动记录或者处于运动中,则结束任务;如果用户没有运动记录且者未在运动中,则进行下一步比较收到消息时间与智能提醒时间的判断。
202.在对比较收到消息时间与智能提醒时间进行判断时,如果两个时间相差大于5秒,则结束任务;如果两个时间相差小于5秒,则由客户端向用户发送提醒消息,提醒用户已到达锻炼时间点。
203.为了防止因网络阻塞,没有收到来自运动健康平台的提醒消息。客户端在本地时间到达接收到的提醒时间时也将执行提醒任务,具体的过程是:判断是否处理过运动健康平台推送的提醒消息,如果客户端处理过运动健康平台推送的提醒消息,则结束推送任务;
如果用户端没有处理过运动健康平台推送的提醒消息,则进一步判断用户是否有运动记录或正处于运动中,如果用户已有运动记录或正处于运动中,则结束推送任务;如果用户没有运动记录且未处于运动中,则弹出提醒消息,提醒用户开始运动,并结束任务。
204.作为可交互的两套系统:运动健康平台和客户端各自所承担的服务,图11展示了客户端与运动健康平台各自的功能架构。客户端包括:运动健康app,后台消息服务,运动提醒定时服务;运动健康平台包括:计算用户经常运动时间点服务,消息推送服务;同时平台端还包括:api模块,业务逻辑处理模块等物理层,还包括:存储有用户运动报告,用户提醒日表,用户设置信息表的数据中心。
205.以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1