发明内容
有鉴于此,本发明提供一种彩信的自动生成方法和装置,以解决上述不能针对各行各业客户的不同业务数据信息,灵活简便高效地制作彩信的问题。为解决上述问题,本发明实施例提供一种彩信的自动生成方法,所述方法包括:
接收需要制作彩信的基本信息,至少包括彩信的帧数和彩信内容,所述的彩信内容包括给彩信接收者的静态信息部分和/或动态信息部分,静态信息部分用于描述给彩信接收者的公共信息,动态信息部分用于描述给彩信接收者的个性化信息;
根据获得的彩信基本信息制作彩信模板,所述彩信模板至少包括模板标识、包含的帧数和彩信业务对象,所述的彩信业务对象描述给彩信接收者的彩信内容,包括静态信息部分和/或动态信息部分;
如果彩信模板中包含了彩信的动态信息部分,则获取有关彩信业务对象的个性化业务数据作为彩信的实例化动态信息内容;
按照所述的彩信模板,自动组装静态信息和实例化动态信息内容,生成与所述彩信模板适配的个性化彩信。
优选的,获取有关彩信业务对象的个性化业务数据的方法具体为:
收集适用所述彩信模板的业务对象的原始个性化业务数据;
按照结构化业务数据制作规则,将面向不同业务对象的原始个性化业务数据制作成与所述彩信模板对应的以固定格式组合的结构化业务数据;
所述彩信模板中的动态信息部分与所对应的结构化业务数据中面向不同业务对象的个性化业务数据之间建立对应关系描述规则,确定匹配模式;
根据所述对应关系描述规则和匹配模式,查找并获取所述结构化业务数据中面向不同业务对象的个性化业务数据。
更进一步的,制作彩信模板的方法中,通过配置彩信资源描述串来描述彩信业务对象的静态信息和/或动态信息,所述的资源描述串是包括静态信息和/或动态信息的固定顺序的串。
优选的,按照所述的彩信模板生成与所述彩信模板适配的个性化彩信的过程具体为:
所生成彩信的帧数取于所述彩信模板定义的帧数;
所生成彩信的每一帧的静态信息,取于所述彩信模板定义的每一帧的静态信息;
如果彩信模板中包含了彩信的动态信息部分,获取对应于所述彩信模板的面向不同业务对象的个性化信息,生成彩信的动态信息;
按照彩信模板中配置的资源描述串中所规定的静态信息和动态信息的固定顺序,组装所生成的静态信息和动态信息,生成面向不同业务对象的个性化彩信。
更进一步的,所述的彩信资源描述串中的动态信息部分,通过动态资源位置规则建立与所对应结构化业务数据中面向不同业务对象的个性化信息的对应关系。
优选的,所述的结构化业务数据可以是文件、数据库表或数据流。
优选的,如果以文件形式记录结构化业务数据,制作为业务数据文件,所述的结构化业务数据制作规则具体为:
采用带标记符的信息行方式记录每个业务对象的业务数据信息,至少包括起始行,并为起始行标记起始符,标识记录该业务对象数据信息的开始;两个相邻起始行之间的一行或多行用于记录一个业务对象的业务数据信息;
所述彩信模板中的动态信息部分与所对应业务数据文件中面向不同业务对象的个性化业务数据之间建立对应关系描述规则具体为:
彩信模板的动态资源位置规则按照信息行位置和行内数据位置相结合的描述来标识一个业务对象的个性化信息在对应业务数据文件中的相应位置。
更进一步的,生成彩信的动态信息的方法具体为:
从所述业务数据文件的开始找到一个业务对象的起始符,逐行读取所述业务对象的业务数据信息,并按照所述彩信模板中的动态资源位置信息的信息行位置和行内数据位置的顺序读取,生成所述业务对象的彩信动态信息,直到找到下一个起始符,所述业务对象的彩信动态信息生成结束;保存业务数据文件的当前读取位置,作为下一次再从所述业务数据文件中查找下一个业务对象的标识,直至完成业务数据文件中所有业务对象的彩信动态信息的生成。
优选的,结构化业务数据制作完成之后还需要对文件内容进行校验,检查结构化业务数据的内容是否完全符合结构化业务数据制作规则,如果不符合则进行纠错处理,直到结构化业务数据的内容完全符合结构化业务数据制作规则。
本发明还公开了一种彩信的自动生成装置,所述装置包括:
彩信信息接收单元,接收需要制作彩信的基本信息,至少包括彩信的帧数和彩信内容,所述的彩信内容包括给彩信接收者的静态信息部分和/或动态信息部分,静态信息部分用于描述给所有彩信接收者的公共信息,动态信息部分用于描述给各彩信接收者的个性化信息;
彩信模板制作单元,根据彩信信息接收单元获得的彩信基本信息制作彩信模板,并保存到存储单元中,所述的彩信模板至少包括模板标识、包含的帧数和彩信业务对象,所述的彩信业务对象是给彩信接收者的彩信内容;
彩信动态信息获取单元,根据彩信信息接收单元获得的彩信基本信息,如果包括彩信动态信息,则收集并获取实例化的彩信动态信息;
存储单元,用于保存彩信模板;
彩信生成单元,按照存储单元中的彩信模板,自动组装静态信息和实例化的动态信息内容,生成与所述彩信模板适配的个性化彩信。
更进一步的,所述的彩信动态信息获取单元可以包括:
业务数据收集单元,根据彩信信息接收单元获得的彩信基本信息收集彩信业务对象的个性化业务数据;
业务数据结构化单元,按照结构化业务数据制作规则,将业务数据收集单元获得的个性化业务数据制作成以固定格式组合的结构化业务数据;
匹配模式确定单元,将彩信模板中的动态信息部分与所对应结构化业务数据中面向不同业务对象的个性化业务数据之间建立对应关系描述规则,确定匹配模式,保存到存储单元中;
业务数据查找单元,根据匹配模式确定单元所确定的对应关系描述规则和匹配模式,查找并获取所述结构化业务数据中面向不同业务对象的个性化业务数据。
优选的,所述的彩信模板制作单元中,通过配置彩信资源描述串来描述彩信业务对象的静态信息和/或动态信息,所述的资源描述串是包括静态信息和/或动态信息的固定顺序的串。
更进一步的,所述的彩信生成单元包括:
彩信模板读取模块,从存储单元中取彩信模板;
彩信帧数和静态信息生成模块,根据彩信模板定义的帧数和每一帧的静态信息,生成彩信的帧数和每一帧的静态信息;
彩信动态信息生成模块,如果彩信模板中包含了彩信的动态信息部分,获取对应于所述彩信模板的面向不同业务对象的个性化信息,生成彩信的动态信息;
彩信组装模块,按照彩信模板中配置的资源描述串中所规定的静态信息和动态信息的固定顺序,组装所生成的静态信息和动态信息,生成面向不同业务对象的个性化彩信。
优选的,所述的资源描述串中的动态信息部分,通过动态资源位置规则建立与所对应结构化业务数据中面向不同业务对象的个性化信息的对应关系。
优选的,所述的结构化业务数据可以是文件、数据库表或数据流,所述的业务数据结构化单元可以进一步包括:
文件结构化单元,根据业务数据文件制作规则,将业务数据收集单元获得的个性化业务数据制作成与所述模板制作单元制作的彩信模板对应的以固定格式组合的业务数据文件;
数据库表结构化单元,根据数据库表制作规则,将业务数据收集单元获得的个性化业务数据制作成与所述模板制作单元制作的彩信模板对应的以固定格式组合的数据库表;
数据流结构化单元,根据数据流制作规则,将业务数据收集单元获得的个性化业务数据制作成与所述模板制作单元制作的彩信模板对应的以固定格式组合的数据流。
更进一步的,所述的文件结构化单元中,所述的结构化业务数据制作规则具体为:
采用行信息和行内数据位置信息相结合的纪录方式,用带标记符的信息行方式记录每个业务对象的业务数据信息,至少包括起始行,为起始行标记起始符,标识记录该业务对象数据信息的开始;两个相邻起始行之间的一行或多行用于记录一个业务对象的业务数据信息。
具体的,所述的彩信模板制作单元中,所述彩信模板的动态资源位置信息按照信息行位置和行内数据位置相结合的描述规则来标识一个业务对象的个性化信息在对应业务数据文件中的相应位置。
优选的,所述的彩信动态信息生成模块还包括:
读文件指针,每次读取完一个业务对象的数据后,保存业务数据文件的当前读取位置,初始值置为业务数据文件的开始;
单个业务对象读取模块,根据读文件指针所指向的业务数据文件的位置,找到一个业务对象的起始符,逐行读取所述业务对象的业务数据信息,并按照所述彩信模板中的动态资源位置信息的信息行位置和行内数据位置的顺序读取,生成所述业务对象的彩信动态信息,直到找到相邻的下一个起始符,所述业务对象的彩信动态信息生成结束;更新读文件指针;
判断读文件是否结束模块,判断读文件指针是否在业务数据文件的末尾,如果是,则结束彩信动态信息生成,否则调用单个业务对象读取模块。
优选的,所述的业务数据结构化单元还可以包括:
检查模块,用于对文件内容进行校验,检查制作完成的结构化业务数据的内容是否完全符合结构化业务数据制作规则,如果不符合则调用纠错处理模块,如果符合则转到彩信生成单元;
纠错处理模块,对制作完成的结构化业务数据不符合结构化业务数据制作规则之处进行纠错处理,使结构化业务数据的内容完全符合结构化业务数据制作规则。
从以上技术方案可知,相对于现有技术,本发明通过根据实际业务需求制作的彩信模板,可以满足用户根据需求灵活制作彩信的各种要求,不受行业背景的限制,彩信模板中添加的文本、图片、多媒体信息可使彩信界面丰富美观。通过可定制的彩信模板,可以自动生成与彩信模板适配的个性化彩信,大大提高了彩信制作的工作效率。通过设计含有动态信息的彩信模板,大大增强了彩信的定制能力,还可以随外界环境的变化随需而定,易于调整。在增加新的彩信业务时,只需要新建一个彩信模板并制作新的结构化业务数据即可,使得彩信的制作变得轻松快捷。
具体实施方式
为了使本发明的目的、技术方案和优点更加突出,下面结合附图对本发明作进一步的详细描述。
本发明提出一种彩信的自动生成方法,其主要思想如下:接收需要制作彩信的彩信基本信息;根据获得的彩信基本信息制作彩信模板;如果彩信模板中包含了彩信的动态信息部分,则获取有关彩信业务对象的个性化业务数据作为彩信的动态信息内容;按照所述的彩信模板自动组装静态信息和动态信息内容,生成与所述彩信模板适配的个性化彩信。
为了使本领域技术人员能够更好地理解本发明方案,下面结合附图和实施例对本发明做出进一步的详细说明。
请参见图1,为本发明提出的彩信的自动生成方法的流程图,所述方法包括如下步骤:
步骤S101:接收需要制作彩信的彩信基本信息,至少包括彩信的帧数和彩信内容。
彩信内容包括给彩信接收者的静态信息部分和/或动态信息部分,静态信息部分用于描述给彩信接收者的公共信息,动态信息部分用于描述给彩信接收者的个性化信息。
彩信的帧数用来说明彩信一共包含多少帧,是根据实际业务需求得出的,每帧的内容根据实际使用需求确定,每帧都可以包括静态信息和/或动态信息。
彩信内容中包括的静态信息部分主要是描述给彩信接收者的公共信息或者说是通用的部分,可以是文字、图片、音乐或多媒体信息。例如给多个客户发送内容一致的彩信“祝您新年快乐!”,则“祝您新年快乐”即为公共信息。
彩信内容中包括的动态信息部分主要是描述给彩信接收者的个性化信息或者说是给每个彩信接收者都不相同的信息,例如给多个客户发送内容为“尊敬的××,祝您新年快乐!”,其中“××”为客户的姓名,每个客户都是不同的,即为动态信息。
接收彩信基本信息的方式可以是从用户前端界面输入的信息获得,用户通过界面接口输入彩信的帧数和彩信内容,则可以接收到彩信基本信息;也可以是从其他接口获得。
步骤S102:根据获得的彩信基本信息制作彩信模板。
彩信模板至少包括模板标识、包含的帧数和彩信业务对象,所述的彩信业务对象描述给彩信接收者的彩信内容,包括静态信息部分和/或动态信息部分。
彩信模板的模板标识用于唯一标识该彩信模板,彩信模板的静态信息可以是文本信息、图片信息、多媒体信息等。
彩信业务对象包括静态信息部分和/或动态信息部分,当该彩信模板只包括静态信息部分时,利用该模板生成的彩信内容均一致,例如商场向所有会员发送的促销活动彩信模板内容为“尊敬的会员,本商场从即日起举行季末大酬宾活动,所有商品满200减80,同时享受双倍积分,欢迎惠顾!”,则根据此模板制作的彩信内容均一致。
当彩信模板只包括动态信息部分时,利用模板生成的所有彩信内容均不一致。
当彩信模板即包括静态信息部分又包括动态信息部分时,利用模板生成的彩信内容则在彩信模板设置的动态信息部分有差别,例如某商场向张三、李四、王五发送的中奖彩信模板中关于中奖的描述信息一致,但对每个人的姓名、参加活动的时间、获得的奖金等信息,则采用可生成不同信息的动态描述方法,因此通过该彩信模板生成的彩信分别为:
“尊敬的张三您好,您的尾号为1572的手机于2009-05-05日参加缴费活动,您幸运地获得了价值500元的大礼包奖品,请保持手机开机,我们会有相关人员与您联系,谢谢您的参与和长期的支持!”;
“尊敬的李四您好,您的尾号为3057的手机于2009-05-10日参加缴费活动,您幸运地获得了价值300元的大礼包奖品,请保持手机开机,我们会有相关人员与您联系,谢谢您的参与和长期的支持!”;
“尊敬的王五您好,您的尾号为6080的手机于2009-05-15日参加缴费活动,您幸运地获得了价值100元的大礼包奖品,请保持手机开机,我们会有相关人员与您联系,谢谢您的参与和长期的支持!”。
步骤S103:如果彩信模板中包含了彩信的动态信息部分,则获取有关彩信业务对象的个性化业务数据作为彩信的实例化动态信息内容。
彩信业务对象是指该彩信所描述的独立个体,如话费账单彩信描述的是每个客户的话费账单情况,银行消费提醒彩信描述的是每个客户的消费情况,股票买卖提醒彩信描述的是每个客户的股票买卖情况,正是因为彩信业务对象的独立性,决定了每个彩信业务对象必然存在个性化的业务数据,如每个客户的姓名、电话号码、话费账单均不同;银行卡号、消费时间、消费金额、消费地点均不同;股票交易、交易金额、交易时间均不同。
步骤S104:按照所述的彩信模板,自动组装静态信息和动态信息内容,生成与所述彩信模板适配的个性化彩信。
适配的过程是按照彩信模板将彩信静态信息和获取得来的动态信息进行组合,生成个性化彩信的过程。
基于上述方法流程,给出本发明的实施例一,如图2所示,用以说明如何获取有关彩信业务对象的个性化业务数据。
步骤S201:收集适用所述彩信模板的业务对象的原始个性化业务数据。
原始个性化业务数据可以通过ftp、socket接口或其他协议的接口从相关的业务数据管理系统获得,也可以通过彩信制作工作人员整理获得。
获得的原始个性化数据的描述方式和存储方式跟随其业务类型(话费业务、消费提醒业务、基金股票买卖业务等)的差异而不同。例如获取的话费原始个性化业务数据包含有多个客户的“客户姓名”、“手机号码”、“话费产生时间”、“话费金额”等,而获取的银行消费原始个性化业务数据包含有多个客户的“客户姓名”、“银行卡号”、“消费地点”、“消费时间”、“消费金额”等。
步骤S202:按照结构化业务数据制作规则,将面向不同业务对象的原始个性化业务数据制作成与所述彩信模板对应的以固定格式组合的结构化业务数据。
对于获取的原始个性化业务数据,由于其业务类型的差异而不同,因此根据统一的结构化业务数据制作规则,将面向不同业务对象的原始个性化业务数据制作成与彩信模板对应的以固定格式组合的结构化业务数据。
在实际制作结构化业务数据过程中,可以将每种业务类型中的所有不同业务对象的原始个性化业务数据分别制作成与彩信模板对应的结构化业务数据,例如将所有客户的话费原始个性化数据根据话费彩信模板制作成一个话费业务数据文件,将所有客户的银行消费原始个性化业务数据根据银行消费彩信模板制作成一个消费业务数据文件;将一部分获奖客户的相关信息制作成一个数据库表;根据每种业务类型对应的彩信模板,在结构化业务数据中采用标识符或其他方式对不同业务类型的业务数据加以区分。
结构化业务数据制作规则规定了如何根据原始个性化业务数据制作成与所述彩信模板对应的结构化业务数据,以及以什么样的固定格式组合的结构化业务数据。
将零散的业务数据组织为固定格式的数据,记录为结构化业务数据,即使彩信动态信息更加易于获得,又达到了按模板快速生成的目的。
步骤S203:所述彩信模板中的动态信息部分与所对应结构化业务数据中面向不同业务对象的个性化业务数据之间建立对应关系描述规则,确定匹配模式。
彩信模板和结构化业务数据是两个独立的实体,只有在彩信模板中的动态信息部分的描述规则与结构化业务数据制作规则相呼应的情况下,利用所建立的这种对应关系描述规则,才可以更加准确和快速地找到相应的动态信息。如果结构化业务数据用文件形式记录和保存,则彩信模板中的动态信息部分的描述规则就是面向文件查找数据的规则;如果结构化业务数据用数据库表记录和保存,则彩信模板中的动态信息部分的描述规则就是面向数据库表查找数据的规则;如果结构化业务数据用数据流记录和保存,则彩信模板中的动态信息部分的描述规则就是面向数据流查找数据的规则。
有了对应关系描述规则,则可以确定彩信模板中的动态信息部分与所对应的结构化业务数据的匹配模式。
步骤S204:根据所述对应关系描述规则和匹配模式,查找并获取所述结构化业务数据中面向不同业务对象的个性化业务数据。
根据在彩信模板中的动态信息部分的匹配模式描述,可以查找并获取按照结构化业务数据制作规则所制作的结构化业务数据。
基于上述方法流程,给出本发明的实施例二,如图3所示,用以说明制作彩信模板的方法。
步骤S301:获得制作彩信模板所需的信息。
彩信模板至少包括模板标识、包含的帧数和彩信业务对象,彩信业务对象描述给彩信接收者的彩信内容,包括静态信息部分和/或动态信息部分。因此制作彩信模板,需要获得彩信的模板标识、包含的帧数以及彩信业务对象。
步骤S302:通过配置彩信资源描述串来描述彩信模板中彩信业务对象的静态信息和/或动态信息。
资源描述串是包括静态信息和/或动态信息的固定顺序的串。
例如配置资源描述串:“尊敬的<信用卡客户姓名>您好,您的尾号为<信用 卡客户的信用卡尾号>的手机于<活动日期>日参加<活动名称>活动,您幸运地获得了价值<奖品价值>元的<奖品名称>奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”其中尖括号中带下划线的部分为动态信息部分,其他为静态信息部分,而二者结合则是资源描述串,在彩信模板中,资源描述串中动态信息部分和静态信息部分的位置是相对固定的。
如果资源描述串中的动态信息部分,简单地设置用A、B、C之类的代号来表示,例如配置资源描述串“尊敬的客户您好,您的信用卡于A日参加刷卡赢大奖活动,您幸运地获得了价值B元的健身卡奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”如果定义A=2009-3-1,B=800,那么动态信息的匹配模式就是简单的符号替换。
若资源描述串只包含静态信息部分,则为“尊敬的客户您好,您的信用卡于2009-3-1日参加刷卡赢大奖活动,您幸运地获得了价值800元的健身卡奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”
为了更好地阐述本发明,给出实施例三,如图4所示,用以说明按照彩信模板自动生成与所述彩信模板适配的个性化彩信的过程具体为:
步骤S401:所生成彩信的帧数取于彩信模板定义的帧数。
步骤S402:所生成彩信的每一帧的静态信息,取于所述彩信模板定义的每一帧的静态信息。
步骤S403:如果彩信模板中包含了彩信的动态信息部分,获取对应于所述彩信模板的面向不同业务对象的个性化信息,生成彩信的动态信息。
步骤S404:按照彩信模板中配置的资源描述串中所规定的静态信息和动态信息的固定顺序组装所生成的静态信息和动态信息,生成面向不同业务对象的个性化彩信。
实践中,所述的彩信动态信息部分数量很多,资源描述串中的动态信息部分更适合通过动态资源位置规则建立与所对应结构化业务数据中面向不同业务对象的个性化信息的对应关系。
当通过动态资源位置规则与结构化业务数据中的个性化信息建立对应关系后,就可以通过动态资源位置规则所示的位置信息在结构化业务数据中相应的位置找到相应的个性化信息。
一种简单的实现方案是,在彩信模板制作前就约定好动态资源位置规则,确定结构化数据的类型和匹配模式,由用户按照约定的匹配模式输入资源描述串,制作彩信模板,这样就不需要在获取有关彩信业务对象的个性化业务数据时再确定匹配模式,简化了查找数据的环节。这种实现方法对用户的要求较高,需要用户预先了解动态资源位置规则,学会匹配模式的描述方法。
基于上述实现方法,在制作彩信模板的方法中,基于实施例二还可以包括步骤S303:彩信资源描述串中的动态信息部分,通过动态资源位置规则建立与所对应结构化业务数据中面向不同业务对象的个性化信息的对应关系。
例如,如果使用数据库表形式记录和保存动态信息部分,可以配置彩信资源描述串为:“尊敬的<表A_信用卡客户姓名字段>您好,您的尾号为<表A_ 客户信用卡尾号字段>的手机于<表A_活动日期字段>日参加<表A_活动名称字 段>活动,您幸运地获得了价值<表A_奖品价值字段>元的<表A_奖品名称字段>奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”
又例如,如果使用文件形式记录和保存动态信息部分,可以配置彩信资源描述串为:“尊敬的<%1_1%>您好,您的尾号为<%1_2_L4%>的手机于<%2_1%>日参加<%2_2%>活动,您幸运地获得了价值<%3_1%>元的<%3_2%>奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”
其中的<表A_信用卡客户姓名字段>、<表A_客户信用卡尾号字段>、<%1_1%>、<%1_2_L4%>等,均为动态资源位置信息,标识着制作彩信所需要的动态个性化信息在结构化业务数据中的位置,根据该位置就可以在结构化业务数据中找到相应的业务数据信息。
另外更加用户友好化的实现方案是,彩信模板中仅仅需要配置“尊敬的<信用卡客户姓名>您好,感谢您参加<活动名称>活动,谢谢您的长期支持!”这样的资源描述串,其中的动态信息描述更贴近本身语义,不涉及复杂的技术实现,而到获取有关彩信业务对象的个性化业务数据时再确定资源描述串中的动态信息与结构化业务数据的匹配模式,再去查找出适配的数据。这种实现方案需要在确定匹配模式时,将彩信模板中的贴近语义的资源描述串转化为资源通配符,如将<信用卡客户姓名>转化为<%1_1%>,然后再按照匹配模式的规则查找对应数据。
彩信模板使用资源描述串方法很好地支持了灵活可定制彩信内容的能力。在有新业务需求的情况下,只需要根据新业务需求制作新的彩信模板后,即可以根据彩信模板,自动生成不同业务对象的彩信。
以上所述的结构化业务数据可以是文件、数据库表、数据流以及其他的各种记录和保存数据的形式。
资源描述串中的动态信息部分,可以通过数据库表的方法进行记录和保存,然后从表中获取数据。例如,表1所示
表1数据库表形式的结构化业务数据
当动态信息的量巨大时,就可以考虑将动态信息写到业务数据文件中,然后读取文件获得。参见实施例四,如图5所示,用以说明对于文件形式的结构化业务数据,制作业务数据文件的制作规则以及匹配所述规则查找业务数据文件的方法如下:
步骤S501:将每个业务对象的业务数据信息采用带标记符的信息行方式记录。
步骤S502:每个业务对象的业务数据信息行至少包括起始行,并为起始行标记起始符,标识记录该业务对象数据信息的开始;两个相邻起始行之间的一行或多行用于记录一个业务对象的业务数据信息。
例如:业务数据文件
1 张三18900000000 /*1为起始符,标识描述张三业务数据的开始*/
2 2009-05-05缴费 /*不固定行,可无*/
3 5000大礼包 /*不固定行,可无*/
1 李四18900000012 /*1为起始符,标识描述李四业务数据的开始*/
2 2009-05-15缴费 /*不固定行,可无*/
3 3000大礼包 /*不固定行,可无*/
可选的另一方案是,每个业务对象的数据信息行还可以包括终止行,并为终止行标记终止符,记录该业务对象数据信息的终止。
还可以采用行信息和行内域信息相结合的记录方式对业务数据信息进行记录。
例如,采用行信息和行内域信息的方式描述的业务数据文件
″1″,″张三″,″18900000000″/*1为起始符,标识描述张三业务数据的开始*/
″2″,″2009-05-05″,″缴费″/*不固定行,可无*/
″3″,″5000″,″大礼包″/*不固定行,可无*/
″0″ /*0为终止符,标识描述张三业务数据的终止*/
″1″,″李四″,″18900000012″/*1为起始符,标识描述李四业务数据的开始*/
″2″,″2009-05-15″,″缴费″/*不固定行,可无*/
″3″,″3000″,″大礼包″/*不固定行,可无*/
″0″ /*0为终止符,标识描述张三业务数据的终止*/
步骤S503:彩信模板的动态资源位置信息按照信息行位置和行内数据位置相结合的描述规则来标识一个业务对象的个性化信息在对应业务数据文件中的相应位置。
信息行位置可以是该信息行处于业务数据文件的行数或通过每行中的字符作为行标识来获得该行的位置;行内数据位置可以是该业务数据处于该行的字节数或者是字符数。动态资源位置信息通过指出信息行位置和行内数据位置,可以准确第在业务数据文件中找到相应的业务数据信息。
优选的,彩信模板的动态资源位置信息按照信息行位置和行内域信息位置相结合的描述规则来标识一个业务对象的个性化信息在对应业务数据文件中的相应位置。<%a_b_T3%>为动态资源位置信息,a表示信息行位置,b_T3表示行内域信息。
例如:
<%a_b_T3%>行号为“a”的数据文件b域截取前3个
<%b_c_L3%>行号为“b”的数据文件c域截取后3个
<%c_d_M3-5%>行号为“c”的数据文件d域截取3到5之间
<%d_e%>行号为“d”的数据文件e域的全部
资源位置信息与结构化业务数据制作规则的完美结合使得自动生成彩信的方法得以实现,使得彩信生成时能快捷准确地找到所需要的业务数据信息。
需要说明的是,在自动生成彩信的动态信息时,对于文件形式的结构化业务数据,从业务数据文件的开始找到一个业务对象的起始符,逐行读取所述业务对象的业务数据信息,并按照所述彩信模板中的动态资源位置信息的信息行位置和行内域位置的顺序读取,生成所述业务对象的彩信动态信息,直到找到下一个起始符(或者终止符),则当前业务对象的彩信动态信息生成结束;保存业务数据文件的当前读取位置,作为下一次再从所述业务数据文件中查找下一个业务对象的标识,直至完成业务数据文件中所有业务对象的彩信动态信息的生成。
当有新业务需求时,只需要获取新业务数据信息,根据结构化业务数据制作规则,制作新的结构化业务数据即可。
基于上述几个实施例,优选的,在结构化业务数据制作完成之后还需要对文件内容进行校验,检查结构化业务数据的内容是否完全符合结构化业务数据制作规则,如果不符合则进行纠错处理,直到结构化业务数据的内容完全符合结构化业务数据制作规则。
下面结合实际情况给出实施例五,如图6所示,对本发明做进一步阐述。
某银行需要向所有的客户发送金融彩信账单,主要内容包括开放式基金相关信息、个人理财产品相关信息和银行宣传客服信息,因此要求制作的彩信账单为4帧。
步骤S601:获取相关的银行客户信息,并按照业务数据文件制作规则,将客户信息制作成业务数据文件,并制定动态资源位置信息的描述规则。
获取的银行客户信息如表2所示:
表2银行客户信息
根据结构化业务数据制作规则按照下列格式,将表1中的银行客户信息制作成业务数据文件的样式为:
“1”,“客户姓名”
“2”,“基金名称”,“本期份额余额”,“当前净值”,“市值”,“交易日”,“申购份额”
“3”,“理财产品名称”,“本期份额余额”,“分红比例”,“市值”,“交易日”,“申购份额”
“0”,
其中“1”为起始符,“0”为终止符
表1中的银行客户实例的业务数据文件为:
“1”,“张三”
“2”,“银华优选”,“10000”,“1.18”,“11800”,“4”,“15000”
“3”,“红利1号”,“5000”,“1.15%”,“5750”,“10”,“5000”“0”,
“1”,“李四”
“2”,“博时新兴”,“20000”,“0.89”,“17800”,“15”,“20000”
“3”,“红利2号”,“6000”,“1.02%”,“6120”,“11”,“6000”“0”,
<中间省略若干客户信息>
“1”,“王五”
“2”,“博时精选”,“9000”,“1.23”,“10070”,“17”,“9000”
“3”,“红利3号”,“5000”,“1.10%”,“5500”,“15”,“5000”“0”。
动态资源位置信息的描述规则为:
<%d_e%>行号为“d”的数据文件e域的全部,<%1_1%>则表示行号为1的行中第一个域的全部内容。
步骤S602:根据彩信的基本信息,制作彩信模板。
彩信模板根据实际需求包括4帧,如图7所示:
第一帧为标题页,全部为静态信息,内容为“中国××银行掌上账单”,并包含有银行的logo;
第二帧为开放式基金相关信息,既包含静态信息也包含动态信息,内容为:
开放式基金 /*帧标题*/
基金余额
尊敬的<%1_1%>客户,您购买的<%2_1%>基金本期份额余额为<%2_2%>,当前基金净值为<%2_3%>,参考市值为<%2_4%>
4月交易明细
<%2_5%>日,申购份额<%2_6%>。 /*资源描述串*/
第三帧为个人理财产品相关信息,既包括静态信息也包括动态信息,内容为:
个人理财产品 /*帧标题*/
理财产品余额
<%3_1%>,本期本期份额余额为<%3_2%>,当前分红比例为<%3_3%>,参考市值为<%3_4%>
4月交易明细
<%3_5%>日,申购份额<%3_6%>。 /*资源描述串*/
第四帧为银行宣传内容,包括业务宣传内容和宣传图片具体为:
感谢您使用××银行掌上账单,本月我银行为回馈新老客户,特推出掌上交易手续费优惠活动,详情请咨询电话99999。
(宣传图片)。
步骤S603:根据彩信模板自动生成适配的个性化彩信。
其过程包括:
步骤S6031:根据彩信模板准备生成一个4帧的彩信。
步骤S6032:同时从业务数据文件的起始位置顺序读取,即从客户“张三”的信息开始读取。
步骤S6033:根据彩信模板中的动态资源位置信息,在业务数据文件中找到相应的业务数据信息,即根据动态资源位置信息<%1_1%>在业务数据文件中的行号为1的第1个域内找到“张三”。
步骤S6034:将彩信模板中的静态资源信息和找到的业务数据信息,按照彩信模板中的资源描述串中的固有位置顺序进行组合,即按照“尊敬的<%1_1%>客户”,将在在业务数据文件中的行号为1的第1个域内找到“张三”放入<%1_1%>的位置,组合成“尊敬的张三客户”。
步骤S6035:判断业务数据文件是否读取到终止符,若没有,则重复步骤S6033,根据动态资源位置信息<%2_1%>,在业务数据文件中找到相应的业务数据信“银华优选”,依次类推;若读取到终止符,即业务数据文件读取到“0”,则进入步骤S6036。
步骤S6036:生成包含动态信息和静态信息的当前彩信。
步骤S604:读取下一个起始符,判断业务数据文件是否读取完毕,如果没有,进入步骤S6031重新开始生成下一条彩信,否则读取完毕,则完成所有彩信的生成。
以上过程生成的彩信如图8所示。
通过本发明的方法,当增加了新的彩信业务时,只需要新制作一个彩信模板,并制作相应的结构化业务数据,即可以完成批量个性化彩信的生成,既简单快捷又准确无误,还可以根据客户群体的特点设计彩信的界面,使彩信的制作更加灵活。
本发明还同时公开了一种彩信的自动生成装置,用于执行以上方法步骤,请参照图9,为本发明彩信的自动生成装置的结构示意图。
本装置包括彩信信息接收单元101,彩信模板制作单元102,彩信动态信息获取单元103,存储单元104和彩信生成单元105。
本装置的工作过程如下:
彩信信息接收单元101,接收需要制作彩信的基本信息,至少包括彩信的帧数和彩信内容,所述的彩信内容包括给彩信接收者的静态信息部分和/或动态信息部分,静态信息部分用于描述给所有彩信接收者的公共信息,动态信息部分用于描述给各彩信接收者的个性化信息。
接收彩信基本信息的方式可以是从用户前端界面输入的信息获得,用户通过界面接口输入彩信的帧数和彩信内容,则可以接收到彩信基本信息;也可以是从其他接口获得。
彩信模板制作单元102,根据彩信信息接收单元101获得的彩信基本信息制作彩信模板,并保存到存储单元104中,所述的彩信模板至少包括模板标识、包含的帧数和彩信业务对象,所述的彩信业务对象是给彩信接收者的彩信内容。
彩信模板的静态信息可以是文本信息、图片信息、多媒体信息等。
彩信动态信息获取单元103,根据彩信信息接收单元101获得的彩信基本信息,如果包括彩信动态信息,则收集并获取实例化的彩信动态信息。
存储单元104,用于保存实例化的彩信动态信息和彩信模板。
彩信生成单元105,按照存储单元104中的彩信模板,自动组装静态信息和实例化的动态信息内容,生成与所述彩信模板适配的个性化彩信。
适配的过程是按照彩信模板将彩信静态信息和获取得来的动态信息进行组装,生成个性化彩信。
基于上述结构,为了详细说明获取彩信动态信息的实现原理,如图10所示,彩信动态信息获取单元103进一步包括:
业务数据收集单元1031,根据彩信信息接收单元101获得的彩信基本信息收集彩信业务对象的个性化业务数据。
原始个性化业务数据可以通过ftp、socket接口或其他协议的接口从相关的业务数据管理系统获得,也可以通过彩信制作工作人员整理获得。
获得的原始个性化数据的描述方式和存储方式跟随其业务类型(话费业务、消费提醒业务、基金股票买卖业务等)的差异而不同。例如获取的话费原始个性化业务数据包含有多个客户的“客户姓名”、“手机号码”、“话费产生时间”、“话费金额”等,而获取的银行消费原始个性化业务数据包含有多个客户的“客户姓名”、“银行卡号”、“消费地点”、“消费时间”、“消费金额”等。
业务数据结构化单元1032,根据结构化业务数据制作规则,将业务数据收集单元1031获得的个性化业务数据制作成与所述模板制作单元102制作的彩信模板对应的以固定格式组合的结构化业务数据。
实际制作结构化业务数据过程中,可以将每种业务类型中的所有不同业务对象的原始个性化业务数据分别制作成与彩信模板对应的结构化业务数据,例如将所有客户的话费原始个性化数据根据话费彩信模板制作成一个结构化业务数据,将所有客户的银行消费原始个性化业务数据根据银行消费彩信模板制作成一个结构化业务数据;也可以将不同业务类型的所有的原始个性化业务数据制作成一个结构化业务数据,根据每种业务类型对应的彩信模板,在结构化业务数据中采用标识符或其他方式对不同类型的业务数据加以区分。
匹配模式确定单元1033,从存储单元104取出彩信模板,如果动态信息部分已经是具体针对结构化业务数据的匹配模式描述,例如<%1_1%>这样的描述,那么直接确定该匹配模式;否则,对于象<信用卡客户姓名>这样的贴 近语义的动态信息描述,则将彩信模板中的动态信息部分与所对应结构化业务数据中面向不同业务对象的个性化业务数据之间建立对应关系描述规则,确定匹配模式,保存到存储单元104中。彩信模板和结构化业务数据是两个独立的实体,只有在彩信模板中的动态信息部分的描述规则与结构化业务数据制作规则相呼应的情况下,利用所建立的这种对应关系描述规则,才可以更加准确和快速地找到相应的动态信息,因此,根据不同的结构化业务数据,将彩信模板中的动态信息部分转化为对应于结构化业务数据的匹配模式。
业务数据查找单元1034,根据匹配模式确定单元所确定的对应关系描述规则和匹配模式,查找并获取所述结构化业务数据中面向不同业务对象的个性化业务数据。根据匹配模式确定单元1033确定的匹配查找规则,查找并获取所述结构化业务数据中面向不同业务对象的个性化业务数据。
优选的,基于上述装置,彩信模板制作单元102中,通过配置彩信资源描述串来描述彩信业务对象的静态信息和/或动态信息,资源描述串是包括静态信息和/或动态信息的固定顺序的串。例如,在彩信模板制作单元102中配置资源描述串为:“尊敬的<信用卡客户姓名>您好,您的尾号为<信用卡客户 的信用卡尾号>的手机于<活动日期>日参加<活动名称>活动,您幸运地获得了价值<奖品价值>元的<奖品名称>奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”其中尖括号中的部分为动态信息部分。
优选的,资源描述串中的动态信息部分,通过动态资源位置信息建立与所对应结构化业务数据中面向不同业务对象的个性化信息的对应关系。上例中其中尖括号中的动态信息部分可以是指向对应结构化业务数据的动态资源位置信息。
以上所述的结构化业务数据可以是文件、数据库表、数据流以及其他的各种记录和保存数据的形式。
如图12(a)所示,所述的业务数据结构化单元可以进一步包括:文件结构化单元10321、数据库表结构化单元10322、数据流结构化单元10323。
文件结构化单元10321,根据业务数据文件制作规则,将业务数据收集单元1031获得的个性化业务数据制作成与所述彩信模板制作单元102制作的彩信模板对应的以固定格式组合的业务数据文件。
数据库表结构化单元10322,根据数据库表制作规则,将业务数据收集单元1031获得的个性化业务数据制作成与所述彩信模板制作单元102制作的彩信模板对应的以固定格式组合的数据库表。
数据流结构化单元10323,根据数据流制作规则,将业务数据收集单元1031获得的个性化业务数据制作成与所述彩信模板制作单元102制作的彩信模板对应的以固定格式组合的数据流。
进一步地,所述的匹配模式确定单元可以进一步包括各种专用的模式匹配单元,例如,文件模式匹配单元10331,针对用文件形式记录和保存的结构化业务数据,则彩信模板中的动态信息部分的动态资源位置规则将转化为面向文件查找数据的规则;数据库表模式匹配单元10332,针对用数据库表记录和保存的结构化业务数据,则彩信模板中的动态信息部分的动态资源位置规则将转化为面向数据库表查找数据的规则;数据流模式匹配单元10333,针对用数据流记录和保存的结构化业务数据,则彩信模板中的动态信息部分的动态资源位置规则将转化为面向数据流查找数据的规则。
针对文件模式匹配单元的例子,将上述例中尖括号中所示的动态信息部分转化为<%x_y%>形式描述,如<信用卡客户姓名>转化为<%1_1%>,<%x_y%>是一个面向文件查找数据的描述串,x表示第x行信息,y为行内第y个位置的信息。
如果用专用的模式匹配单元,则所述的业务数据查找单元可以进一步包括文件数据查找单元10341、数据库表数据查找单元10342、数据流数据查找单元10343,用于查找相关的结构化业务数据。
另一种方案,如图12(b)所示,所述的匹配模式确定单元也可以是一个通用的模式匹配单元1033,选定一种通用的适配符,可以适配选定的所有结构化业务数据类型,如包括文件、数据库表、数据流或其他的数据。同时,还有通用的业务数据查找单元1034。
优选的,基于上述装置,文件结构化单元中业务数据文件制作规则为,采用带标记符的信息行方式记录每个业务对象的业务数据信息,至少包括起始行,为起始行标记起始符,标识记录该业务对象数据信息的开始;两个相邻起始行之间的一行或多行用于记录一个业务对象的业务数据信息,采用行信息和行内数据位置信息相结合的纪录方式。
进一步,业务数据文件中每个业务对象的业务数据信息还可以包含终止行,为终止行标识终止符,一对起始行和终止行间的一行或多行用于记录一个业务对象的业务数据信息,并采用行信息和行内域信息相结合的记录方式。
还需要说明的是,彩信模板制作单元所制作的彩信模板,如果规定用户对动态信息部分直接使用<%x_y%>形式描述,例如直接配置资源描述串“尊敬的<%1_1%>您好,您的尾号为<%1_2_L4%>的手机于<%2_1%>日参加<%2_2%>活动,您幸运地获得了价值<%3_1%>元的<%3_2%>奖品,请保持手机开机,我们会有相关人员与您联系。谢谢您的参与和长期的支持。”则模式匹配单元的功能弱化,不需要再匹配模式,系统实现更为简单。
所述文件形式的结构化业务数据制作过程实施例,请参见上述彩信自动生成方法中的实施例四,在此不再赘述。
根据上述结构,为了详细说明彩信生成单元105如何完成生成彩信的结构,如图11所示,彩信生成单元105进一步包括:
彩信模板读取模块1051,从存储单元中取彩信模板。
彩信帧数及静态信息生成模块1052,根据彩信模板定义的帧数及每一帧的静态信息,生成彩信的帧数及每一帧的静态信息。
彩信动态信息生成模块1053,如果彩信模板中包含了彩信的动态信息部分,获取对应于所述彩信模板的面向不同业务对象的个性化信息,生成彩信的动态信息。
彩信组装模块1054,按照彩信模板中配置的资源描述串中所规定的静态信息和动态信息的固定顺序,组装所生成的静态信息和动态信息,生成面向不同业务对象的个性化彩信。
根据上述结构,用以说明彩信动态信息生成模块完成重复生成彩信动态信息的结构,彩信动态信息生成模块1053进一步包括:
读文件指针,每次读取完一个业务对象的数据后,保存业务数据文件的当前读取位置,初始值置为业务数据文件的开始。
用读文件指针确保对每一个业务对象都生成彩信,不会有遗漏。
单个业务对象读取模块,根据读文件指针所指向的业务数据文件的位置,找到一个业务对象的起始符,逐行读取所述业务对象的业务数据信息,并按照所述彩信模板中的动态资源位置信息的信息行位置和行内域位置的顺序读取,生成所述业务对象的彩信动态信息,直到找到所述业务对象的终止符,所述业务对象的彩信动态信息生成结束;更新读文件指针。
判断读文件是否结束模块,判断读文件指针是否在业务数据文件的末尾,如果是,则结束彩信动态信息生成,否则调用单个业务对象读取模块。
根据上述结构,以下说明对制作完成的结构化业务数据进行检验的结构,业务数据结构化单元1032进一步包括:
检查模块,用于对文件内容进行校验,检查制作完成的结构化业务数据的内容是否完全符合结构化业务数据制作规则,如果不符合则调用纠错处理模块,如果符合则转到彩信生成单元;
纠错处理模块;对制作完成的结构化业务数据不符合结构化业务数据制作规则之处进行纠错处理,使结构化业务数据的内容完全符合结构化业务数据制作规则。
对结构化业务数据进行校验,提高了结构化业务数据的准确性,保证了彩信自动生成过程的顺利进行。
当有新的业务需求时,可以根据本装置,利用模板制作单元制作新的彩信模板,利用彩信动态信息获取单元获取批量的彩信动态信息,通过彩信生成单元,按照彩信模板即可批量生成新的个性化彩信。
需要说明的是,在以上彩信的自动生成方法及装置中,彩信的概念还可以包括短信。
以上对本发明所提供的彩信的自动生成方法和装置进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。