著录项信息
专利名称 | 一种互联网实时抽奖系统及其实现方法 |
申请号 | CN201110206085.5 | 申请日期 | 2011-07-22 |
法律状态 | 驳回 | 申报国家 | 中国 |
公开/公告日 | 2012-01-25 | 公开/公告号 | CN102332132A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | G06Q30/00 | IPC分类号 | G06Q30/00查看分类表>
|
申请人 | 深圳市财富万方信息技术有限公司 | 申请人地址 | 广东省深圳市福田区深南中路1027号新城大厦西座***
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 深圳市财富万方信息技术有限公司 | 当前权利人 | 深圳市财富万方信息技术有限公司 |
发明人 | 陈胜;邢雅彬 |
代理机构 | 深圳市千纳专利代理有限公司 | 代理人 | 胡坚 |
摘要
一种互联网实时抽奖系统及其实现方法,涉及到计算机应用软件技术领域,具体涉及到一种互联网实时抽奖系统及其实现方法。解决现有抽奖技术存在的时间跨度长,现场互动性不足,以及抽奖随机数产生方法的缺陷,包括有:客户端单元、通信服务器单元、抽奖服务器单元、数据库服务器单元、抽奖现场单元及中奖通知单元;创建了一个互联网实时抽奖的系统,使参与者与主办方在同一时间和情境下,以互动的方式完成抽奖活动。实时抽奖的效果,增强了活动氛围,也提高了参与者的兴趣,有利于主办方达成商业推广的目的。简化了抽奖程序,使抽奖过程透明化,使所有参与者亲自见证抽奖活动的过程以及中奖结果的产生。同时,还可以为不同的主办方用于不同类型的抽奖活动,节省软件开发成本。
1.一种互联网实时抽奖系统,其特征在于包括有:客户端单元、通信服务器单元、抽奖服务器单元、数据库服务器单元、抽奖现场单元及中奖通知单元;
所述客户端单元与通信服务器单元连接,用于与用户之间建立人机对话,创建客户端即时会话窗口,向通信服务器单元发送登陆请求,以及接收通信服务器单元返回的用户信息,实现抽奖代码选取的操作;
所述的通信服务器单元,用于验证客户端单元的登陆请求,并返回到客户端单元,保持客户端单元的通信;
所述的抽奖服务器单元,用于管理抽奖用户表和抽奖事件,包括设置抽奖活动的获奖人数、奖项、启动时间、抽奖算法,并创建一个与抽奖现场单元相应的动态抽奖过程;
所述的数据库服务器单元,用于对用户信息存储和管理,以及从所有用户信息中,依次读取具有参与抽奖资格的用户,向这些用户的客户端单元发送抽奖活动信息,触发客户端单元的抽奖代码选取功能,并根据用户选取的代码,创建抽奖用户表,并将该抽奖用户表存储至抽奖服务器单元;
所述的抽奖现场单元,根据抽奖服务器单元存储的抽奖信息,触发并创建一个实时抽奖的窗口,接收抽奖服务器单元的抽奖过程数据,同步显示在实时抽奖的窗口中,直至完成抽奖过程,显示最后的中奖代码、中奖用户及领奖信息;
所述的中奖通知单元,用于向中奖用户发送获奖信息,以通知该用户按收到的信息领奖。
2.根据权利要求1所述的一种互联网实时抽奖系统,其特征在于所述客户端单元与用户之间的人机对话还包括有个人信息维护操作。
3.根据权利要求1所述的一种互联网实时抽奖系统,其特征在于所述即时会话窗口包括有:参与抽奖活动的用户之间的即时会话频道,以及主办方与用户之间的即时会话频道。
4.根据权利要求1所述的一种互联网实时抽奖系统,其特征在于所述客户端单元的抽奖代码选取的操作方案有:若用户有抽奖资格,则数据库服务器单元触发客户端单元的抽奖代码选取功能,选取方式包括自选和随机获取两种方式;自选代码需用户输入若干位数的数字作为自己的抽奖代码,随机获取的数字代码是由计算机自动产生的一组包含若干位数的随机数字,若用户确定,则以此随机数字为该用户的抽奖代码,该抽奖代码返回数据库服务器单元,存储至抽奖用户表;若具备抽奖资格的用户没有选择抽奖代码,则视为放弃抽奖活动,不在抽奖用户表内。
5.根据权利要求1所述的一种互联网实时抽奖系统,其特征在于所述的中奖通知单元通知相应中奖用户的方式为:当中奖用户的客户端单元在线时,向该客户端单元发送一个即时会话频道消息,显示用户中奖信息,同时向该客户端单元发送邮件消息;当中奖用户离线时,将获奖信息保存至数据库服务器中,当该中奖用户登陆时,再以邮件消息方式将中奖信息发送到该中奖用户的客户端单元中。
6.根据权利要求5所述的一种互联网实时抽奖系统,其特征在于所述的中奖信息的内容包括中奖者的抽奖代码、用户ID、奖项、领奖方式和领奖说明。
7.根据权利要求6所述的一种互联网实时抽奖系统,其特征在于所述的中奖通知单元向中奖用户发送中奖信息的同时,还向其他参与抽奖用户发送中奖信息,向其他参与抽奖用户发送的中奖信息中的中奖用户ID不完整显示,中奖用户ID的若干位数以☆屏蔽。
8.一种应用上述权利要求1~7项任一项所述互联网的实时抽奖系统实现抽奖的方法,其特征在于包括如下步骤:
a、用户发起客户端登陆请求;
b、通信服务器单元对用户登陆请求进行身份验证,验证通过后进入下一步,否则循环等待合法登陆请求;
c、在客户端单元中创建客户端窗口和即时会话窗口,在客户端窗口中接收数据库单元发送的抽奖活动通知,具有抽奖资格的用户选取抽奖代码,在即时会话窗口显示抽奖主办方以及用户之间的会话信息以及当前抽奖活动的实时信息;
d、抽奖现场单元根据抽奖服务器单元预设的触发条件,启动抽奖活动并创建实时抽奖窗口;
e、抽奖服务器单元根据抽奖代码的总长度和每次抽取中奖代码子段的位数,创建若干抽奖子过程,在每个抽奖子过程中,包括一个实现抽奖代码子表的随机变换程序,一个与抽奖代码子表等长的随机数队列,以及每个子过程中所包含的有效抽奖用户表,在若干抽奖子过程中,所产生的中奖代码的若干位数同步显示在实时抽奖窗口中,直至完整的中奖代码抽取完成,将中奖代码返回抽奖服务器单元;
f、所述每个抽奖子过程中,按从高到低的顺序依次抽取若干数位的中奖代码子段,实现步骤是:
f1、首先取抽奖代码的前若干位,依次遍历整个抽奖用户表,以前若干位读取到的值创建一个数字表,该表的值唯一;判断该数字表的元素个数,若元素个数等于1,则直接输出数字表中唯一的元素的值,显示在抽奖窗口,即已产生中奖代码的第一个中奖代码段,若元素个数大于1,则执行f2;
f2、创建三个随机数生成器,其中前两个随机数生成器分别用于生成不大于上述数字表长度的正整数,分别表示上述数字表变换的源数据和目的数据的元素位数,第三个随机数生成器生成取值为0或1的随机数,其中0表示对上述数字表进行数值互换,1表示插值操作;若第三个随机数生成器的取值为0,则将上述数字表中源数据对应位置的元素值与目的数据对应位置的元素值互换,若第三个随机数生成器的取值为1,则将所述取得的源数据和目的数据执行插值操作,将位置排在上述数字表中后面的元素插入到位置靠前的元素前面,并重新对数字表排序;若前两个随机数生成器产生的数值相等,则放弃该次操作,进行下一次运算;
f3、创建一个队列,队列中每个元素取值为不大于上述数字表长度的正整数;创建一个给该队列赋值的随机数生成器,进行若干次赋值,每生成一个随机数,写入当前队列,根据该随机数,查找f2中数字表对应位置的元素值,并更新显示在实时抽奖窗口,直至满足该抽奖子过程的结束条件;
f4、上述步骤f2、f3在各自线程中同步运行,当满足该抽奖子过程的结束条件时,取f3步骤中队列的最后赋值,根据该赋值,查找f2中数字表对应位置的元素值,显示在实时抽奖窗口,此数值为本次抽奖的第一个中奖代码段;
f5、在抽奖用户表中,读取所有在同等位数包含第一个中奖代码段的抽奖用户,以剩余的位数,形成第二个抽奖子过程的抽奖用户表;若当前抽奖用户表的人数等于1,则将当前用户的剩余位数直接输出并显示到实时抽奖窗口,此用户完整的抽奖代码即是中奖号码,结束抽奖过程;若当前抽奖用户表的人数大于1,则重新开始上述f1、f2、f3、f4,反复执行抽奖子过程,依次抽取其余的中奖代码段,直至当前抽奖用户表的人数等于1,或完成所有中奖代码子段的抽取;
f6、当完成所有抽奖子过程,将每个子过程产生的中奖代码子段依次排列,即得到完整的中奖代码,由于抽奖代码选取不唯一,因此可能出现多个中奖用户的情况;由所述抽奖过程可知,所述方法不会产生空号中奖的情形。
9.根据权利要求7所述的实现抽奖的方法,其特征在于还包括有中奖通知步骤,所述中奖通知步骤由中奖通知单元根据中奖代码通知中奖用户。
10.根据权利要求7所述的实现抽奖的方法,其特征在于还包括有用户信息管理步骤,若属以积分形式分配抽奖名额的情形,则在抽奖现场单元完成后,数据库服务器单元将已参与抽奖用户的积分减掉若干数值。
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 1 | | 2015-02-12 | 2015-02-12 | | |
2 | | 2013-10-12 | 2013-10-12 | | |
3 | | 2012-08-08 | 2012-08-08 | | |
4 | | 2014-09-26 | 2014-09-26 | | |
5 | | 2014-05-22 | 2014-05-22 | | |
6 | | 2012-10-18 | 2012-10-18 | | |
7 | | 2016-01-05 | 2016-01-05 | | |
8 | | 2013-12-02 | 2013-12-02 | | |
9 | | 2012-07-13 | 2012-07-13 | | |
10 | | 2012-11-13 | 2012-11-13 | | |
11 | | 2016-06-17 | 2016-06-17 | | |
12 | | 2012-08-08 | 2012-08-08 | | |
13 | | 2013-12-03 | 2013-12-03 | | |
14 | | 2016-02-22 | 2016-02-22 | | |
15 | | 2012-11-29 | 2012-11-29 | | |
16 | | 2016-01-05 | 2016-01-05 | | |
17 | | 2012-07-09 | 2012-07-09 | | |
18 | | 2014-09-26 | 2014-09-26 | | |
19 | | 2014-09-26 | 2014-09-26 | | |
20 | | 2012-11-29 | 2012-11-29 | | |
21 | | 2013-12-02 | 2013-12-02 | | |
22 | | 2016-02-03 | 2016-02-03 | | |
23 | | 2013-08-07 | 2013-08-07 | | |