System and method for transmitting mailings to subscribers of voice mail systems.
The present invention relates to processor means arranged to communicate with at least one telecommunication unit, to transmit voice messages to said at least one tele- communication unit, provided with first means, to present a first menu with a first plurality of options from which a user of the at least one telecommunication unit is allowed to select one, and with second means to present a second menu with a second plurality of options when the user has selected one of said first plurality of options in said first menu. Such processor means are known from US-A-5 ,199,062 which discloses a com- munication system provided with an audio response unit for receiving audio instructions from a user. A central processing unit is arranged for executing programs based on the audio instructions received. A caller dials the system and enters a main menu in which several options are presented to him. Options are for instance "messaging" (leaving messages for called persons; retrieving messages from a mail box), direct calling of other persons, and entering a service menu in which the caller can further specify options like information as to restaurants, gift services, emerging telephone numbers and flight schedule information. The databases of the system may be created by the manufacturers of the system. However, the databases may also be provided by sponsors of the system. Moreover, the content of the databases may be updated regularly. WO-A-92/15166 discloses a communication system with a voice messaging system to which an application processor is coupled. The application processor executes call processing flow diagrams to handle processing of incoming call and associated messages. A user of the system contacts the voice messaging system which communicates with the application processor. The application processor starts with announcements messages to the caller, which include a menu of options, from which the caller must select one by using the numeric keypad buttons on the telephone handset. If the caller fails to make a selection within a predetermined time period the application processor presents the menu of options to the caller again. Examples of services are: requesting information with a bank regarding interest rates or account balance, consulting help desks, and buying through telephone orders.
The object of the present invention is to provide a voice messaging system, which is flexible and user-friendly.
To that end, the processing means defined at the outset are characterized in that
the second means are arranged to present the second plurality of options as a series of consecutive options with a first option and a last option, and to start presenting the series of consecutive options a predetermined number of times again when the last option has been presented. Thus, the processing means are able to present a carrousel of mailing messages from e.g. advertisers.
In one embodiment, the second means are arranged to present each of the second plurality of options with an audio clip from a set of audio clips, the set of audio clips being selected ones from a plurality of audio clips in memory means in accordance with predetermined settings, the processor means being arranged to store a set of data relating to the set of audio clips in the memory means. Thus, the user is allowed to block e.g. certain types of categories of audio clips from the carrousel that he does not wish to hear. Preferably, the processor means comprises third means arranged to receive at least the following instruction from a user when presenting each one or more of the audio clips: to present an infomercial associated with the audio clip that is presented at the time of receiving the instruction. Then, the carrousel is only filled with short audio clips whereas more information related that a specific clip can be heard by instructing the processing means to present the related infomercial.
When such infomercials are used, the third means may be arranged to present one or more infomercials with an option for the user to be automatically switched through to a predetermined telephone number.
The processor means may include means arranged to select subsets of infomercials from a plurality of infomercials in accordance with predetermined criteria including at least user profiles, and to make these subsets of infomercials available to predetermined telecommunication units and/or users. Thus making available infomercials can be related to marketing strategies of firms. Only those people may be addressed which are potentially interested in specific infomercials. Selecting the target groups may be done by any known selection criterium, either automatically or by hand.
The present invention also relates to a method as defined in claims 14-26. The invention will now be illustrated with reference to some drawings, which are only intended to illustrate the invention and not to limit its scope.
Figure 1 shows a general overview of communication means in a telecommunication system to illustrate the invention;
Figure 2 shows a block diagram of some functional units of the voice messaging
system;
Figure 3 shows a block diagram of the voicemail system with a carrousel functionality;
Figures 4-11 show several modules of the voicemail system according to the in- vention;
Figure 12 shows a data model on the production platform. Hereinafter one embodiment of the system according to the invention will be explained in detail.
General
Applicant has initiated the VoiceMailActueel (NMA) project to deliver commer- ciali/information and sponsored messages (infomercials) to telephone subscribers in addition to personal messages as supported by the present VoiceMail system marketed by applicant. The objective of the future VMA organization is to offer companies in The
Netherlands (and possibly, abroad) an effective medium to get in contact with their (potential) customers through the use of NoiceMail.
Figure 1 shows the general layout of the system according to the invention. Subscribers, schematically shown by their telephone handsets 1, are able to communicate with remote processing means 6. The communication path may be through the Public Switched Telephone Network PSTN 2, as shown. However, any other communication network may be applied instead. The processing means are shown to be connected to the PSTN through suitable I/O means 4.
The telephone handsets 1 may be exchanged by any other equivalent communi- cation means arranged to make a telephone connection with the processing means 6.
The processing means 6 are connected to input means, e.g. a mouse 14 and a keyboard 12, through which an operator may amend programs and settings of programs in the processing means 6. Other well-known input means may also be applied. The processing means are also connected to display means, like a monitor 10, for displaying information to the operator. To store programs and data, the processing means are connected to memory 8, which may include any suitable type of memory, like RAM and ROM.
The processing means 6 are shown as one unit. However, if desired, different
functional parts of the entire functionality may be implemented in different processing units implemented on different locations arranged to communicate with one another.
Generally, the processing means 6 have two kinds of output. First of all, they may make an on-line connection between a subscriber calling and a switching station 16, alternatively called "800/900/fax/e-mail platform", through the PSTN 2. Secondly, the processing means 6 generate a number of output files which will be send off-line to a predetermined location in a predetermined way and which will result in a predetermined action taking place. In figure 1, this has been indicated with a block "interaction fulfilment" 7. An example of an action to be carried out in this block is sending a T-shirt to the first 50 people indicating their desire to receive such a T-shirt. Other examples are: sending a brochure, carrying out a money/credit balance transaction, an action in the field of e-commerce, etc.
As shown in figure 2, the processing means 6 include three interconnected major platforms: a Business Support Platform (BSP) 5, a Production Platform (PPF) 3, and a Logging Platform (LPF) 9. These platforms will be described in detail hereinafter. It is to be understood that, although figure 2 shows one BSP 5, one PPF 3, and one LPF 9, actually there might be different numbers of BSP's, PPF's and LPF's arranged to communicate with one another.
The general functionality offered by the system to a caller is as follows. The existing VoiceMail system as implemented at the Dutch KPN Telecom, applicant of the present invention, will allow the subscriber to interact with the Production Platform 3.
As shown schematically in figure 3, a user contacts the regular VoiceMail system (i.e., he/she sends a request) by calling 0842 - 333 (if required, of course, this number may change) with his/her telephone handset 1. The current VoiceMail menu plays an informational text to the subscriber and gives the options available to continue the interaction: "There are ... new messages and... saved messages; to listen to your messages press [1]; to change your settings press [3]". To accommodate VoiceMailActueel this text will, e.g., be changed to the following: "There are ... new messages and ... saved messages; to listen to your messages press [1]; to listen to the infomercial clips press [2]; to change your settings press [3]; to hear your current call credits balance, press [4] ".
So, by pressing [2] within the menu shown in figure 3 the caller will be connected to the Voice Mail Actueel facility. Alternatively, or additionally, the caller is connected
to the Voice Mail Actueel automatically after he/she has listened to his/her voice mail messages, i.e. after he/she has pressed [1] in the menu shown.
Thus, the user is provided with the possibility to select between different options by pressing buttons on the telephone keypad. Pressing the key [1] connects the user to VoiceMail messages and pressing the key [3] provides the user with the possibility to amend settings of the existing VoiceMail and, in future, the VoiceMailActueel system through a VoiceMail Settings Menu.
The VoiceMail Settings Menu nowadays supports for instance the following options: Pressing [1]: listen to, activate or change the personal greeting,
Pressing [2]: activate the standard greeting,
Pressing [3]: record the user's name to be fitted into the standard greeting, Pressing [4]: record an announcement. Added will be the following option: Pressing [5] : change the VoiceMailActueel preferences.
After the user has pressed [5] in the VoiceMail Settings Menu the user enters the Preference Maintenance Menu in the Preference Maintenance System 20. The Preference Maintenance Menu allows the subscriber to set or reset the preferences for each available category of infomercials. He may be greeted in the following way: 'To listen to your selected categories press [1]; to set the preferences on all categories to yes press [2J; to set the preferences on individual categories press [3J; to set the preferences on all categories to no and block your mailbox for infomercials press [4]".
The VoiceMail system also supports some special function keys throughout the system, which will be available for VoiceMailActueel as well: [*] go back one step or stop the current action and
[#] skip ahead, e.g. skip to the next message.
As shown in figure 3, the VoiceMailActueel functionality is initiated from the
VoiceMail Menu when the subscriber presses [2] (of course another key may be used for this purpose). He/she is then connected to a carrousel 70, which comprises a number of audio infomercial clips 1 ... N played back to the user consecutively. When the last clip
N has been played back, the system starts again with clip 1.
An infomercial is associated with each of the clips 1 ... N. When the user listens to a clip and wishes to be connected to the entire infomercial related to that clip, he/she
presses e.g. key [1] on the telephone keypad. An infomercial may have different contents. An infomercial may e.g. be an audio message with music lasting 50 seconds. However, alternatively, an infomercial may also consist of a tree with several branches in which the caller selects which branches will be activated, e.g., by pushing predetermined push but- tons of his/her telephone handset 1 (or by voice instruction). For instance, clip N is shown to be connected to a tree. When the caller presses [1] when he/she hears clip 10 he/she will be connected to the tree and be informed that he/she will be connected to different branches in dependence on which key will be pressed. Pressing [1], e.g., connects the caller to a branch in which he/she gets a further opportunity to press either [1] or [2]. When pressing [1] he will then, e.g., receive a T-shirt. By pressing [2], e.g., the call will be transferred to the 800/900 platform for further connection to another communication apparatus. However, when being in the tree it is also possible to be connected to another tree. At the end of a tree, the system will automatically jump to the next audio clip in carrousel 70. It is to be understood that the tree as shown is just an example. For each campaign, such a tree will, in practice, be entirely newly build. This is done by an Interactive Voice Response (INR) module 110 that will be explained with reference to figure 5 below. The content of the cells may for instance also be user data-input, time switching, data comparison, or any other cell type known to persons skilled in the art. The system enables the subscriber to listen to clips and associated infomercials and to navigate through the information associated with the infomercial.
Each time a clip or an infomercial is played and each time the subscriber makes a selection, the system logs the event with a timestamp. The event and timestamp are stored in memory 8. All logging is carried out by the LPF 9. When the subscriber presses [*], indicating that he/she wants to finish the interaction, the subscriber is either taken to the VoiceMail menu or the VoiceMailActueel menu, respectively, depending on the current position of the subscriber: is he/she listening to a clip or an infomercial, respectively?
Production Platform (PPF).
The objective of this paragraph is to describe the functionality of the Production Platform (PPF) which is to support all functions that are related to the delivery of infomercials to the subscribers and to receive and process preferences of users.
Generally, the Production Platform 3 is defined as the following subsystems and their relationships to one another:
• VMA Subscriber module 100 with a VMA Subscriber Preference System 20, a Billing Interface Customer Service & Statistics (BICSS) Intercept module 200, and Inter- faces to the switching station 16 (also referred to as "800/900 Platform")
• VMA Maintenance module 19.
This is shown in general in figure 4. Figures 5 and 6 show the block diagram of figure 4 in more detail. As shown in figure 5, the VMA Subscriber module 100 is subdivided into three major modules: Universal VoiceMail UVM 60, the VoiceMailAc- tueel VMA 70 and the Interactive Voice Response IVR 110. Moreover, the VMA Subscriber module 100 comprises a VMA Subscriber Preference System 20, the BICSS Intercept module 200 and a switch 120 to the 800/900 platform. The 800/900 switch can call to any telephone number required.
The UVM 60 refers to the functionality of the voicemail existing nowadays, and as explained above. The UVM 60 receives subscriber caller requests.
When a caller presses [2] he/she will be connected to the VMA carrousel 70 which receives the carrousel request. The caller need not wait until the menu of the UVM 60 has played back its greeting message entirely. Alternatively, or additionally, the caller may enter the VMA carrousel 70 automatically at the end of listening to voice mail messages present in the voice mail box. As explained above, when the caller then presses [*], wherever the VMA carrousel program is, the program will automatically return to the UVM 60. The VMA carrousel 70 transmits the content of the carrousel to the subscriber 1. The clips that are available for this subscriber will be loaded into memory from the Carrousel data set. This is based on the validity of the infomercial, the cur- rent preferences set for the subscriber, expiration date for the infomercial, counters versus limits, etc.
This will ensure that the subscriber will only hear the clips that fit into the categories that he/she has chosen: infomercials that belong to categories changed from "yes" to "no" will not appear in memory. As shown in figure 3, each clip is accompanied by an infomercial. Infomercials and clips become available, at the begi-nning of a new campaign period. They will expire at the end of the campaign period or earlier whenever that is indicated by the expiration date or by another predetermined limit (e.g. number of actions to be carried out).
Before the subscriber will hear the first clip, a short explanation is played: "To listen to the accompanying infomercial, press [1]; to skip to the next clip press [#]". Within the UVM module 60 an option can be set, e.g. through pressing the key [3] in the UVM menu, to allow the subscriber to press a key and invoke the associated action, before the system finishes playing the explanation. Thus, the subscriber does not have to listen to menus and explanation that he/she is already familiar with.
When the subscriber listens to the clips for the first time, then clip number 1 is played first, followed by clip number 2, etc., each followed by a short pause to enable the subscriber to press [1] to listen to the associated infomercial. When the caller stops lis- tening to the clips and enters the carrousel later again the system will automatically continue with the next clip.
After all clips have been played, the carrousel 70 automatically returns to the starting clip. The system will prevent the carrousel 70 from playing clips continuously when there is no subscriber action, e.g. the carrousel stops playing clips and the sub- scriber is taken back to the UVM menu after a parameter set number of complete cycles without any subscriber action.
Each time a clip is played, the system logs the event with a timestamp. Data regarding the clip played and the time of playing are collected and sent as a VMA carr. log signal to a BICSS Intercept module 200. Whenever the subscriber chooses to stop listening to the clips by pressing [*], then the current clip number for this subscriber is saved by the system. When the subscriber returns to the clips at a later stage during the same campaign period, then the system starts with the next clip in the sequence which is the clip following the clip he/she listened to last. Data to that effect is sent to the BICSS Intercept module 200 via the VMA carr. log signal.
When, during the VMA carrousel program, the caller presses [1] he/she will be connected to the IVR 110, which receives an infomercial request to that end. When the IVR program is running and the caller presses [*] the program automatically returns to the VMA carrousel 70. The IVR 110 includes the program to play the infomercials and the related tree structure as shown in figure 3. Such programs are known as such to persons skilled in the art and, e.g., produced by Unisys.
When the subscriber has pressed [1] during a clip in the carrousel, the system will play the accompanying infomercial. There are, for instance, four infomercial types:
1. text only; a message is played and the subscriber is not expected to interact with the system,
2. text including a question, e.g. "Do you want to receive a brochure?", followed by a reply from the subscriber which may be one key or a numeric string of keys (option- ally, voice directed instruction),
3. text including a question and a transfer to another telephone, e.g. "Do you want to speak to a salesman"; the user may reply to this question by pressing one or more keys (optionally, voice directed instruction) to indicate "yes" or "no" to the system; if yes, the subscriber is transferred to the 800/900 platform 16 through the switch 120, 4. a complex tree including a combination of the above options (cf. figure 3).
Each time an infomercial is played and each time the subscriber makes a selection, the system logs the event with a timestamp. Data regarding the infomercials played, the selections made and the associated timestamps are collected and sent as an IVR log signal to the BICSS Intercept module 200. After listening to the infomercial or when the user exits the process by pressing
[*], the subscriber is placed back into the clip carrousel at the next clip.
Due to unforeseen circumstances an infomercial may be withdrawn by an advertiser who provided the infomercial. Then, an operator must be capable to make the necessary changes in the system. This must have an immediate effect on the delivery of clips to the subscriber. The infomercial will be set to unavailable in memory 8 and will not be selected for presentation in the VMA Carrousel 70. The operator receives information to that effect and indicates this to the system through input means 12, 14.
Now the VMA Subscriber Preference System 20 will be described. Reference is made to figures 5 and 6. A caller can enter the VMA Subscriber Preference System 20 by pressing [3] on his/her telephone handset in the UVM menu 60, which generates a preference request signal to the VMA Subscriber Preference System 20.
During initialization, for each subscriber who has the existing voicemail option installed, all preferences for categories are once set to yes by default on the PPF by the BSP 5 through the preference update/loading signal to the VMA Maintenance system 19 (fig. 6). The VMA Subscriber Preference System 20 allows the subscriber to change the VoiceMailActueel preferences via a personal profiles menu. The subscriber can set his/her preferences to yes or no. If yes, then the subscriber is interested to hear clips and infomercials that are released for that category.
The system will also allow for adding new categories with a default setting of no. This will enable the operator of the system to add a new category and test it before it is released to the subscribers.
The current number of different categories allow for maintenance through the use of a telephone handset. Future expansion of the available categories will call for another means of updating preferences, e.g. through an Internet connection or through the use of a category-index in front of the phonebook. Therefore, it is envisaged that the present invention is not restricted to the use of telephone handsets only. The telephone handsets 1 may be combined with personal computers or the like. It is even possible to substitute the telephone handsets by personal computers provided with a speaker, a microphone and some means to call the VoiceMail system.
The system will have one category that cannot individually be changed by the subscriber and that may be used by the operator of the system as a way to get important messages across to the subscribers. Such messages may be input by the operator through input means 12, 14.
The subscriber is able to listen to the current settings, change all preferences at once or change preferences individually. This is indicated by a double arrow preference between the subscriber 1 and the VMA Subscriber Preference System 20. The Subscriber Preference System 20 comprises five sub-modules: 1. Listen to all Settings 21.
Upon selection of the appropriate item from the VMA Maintenance menu, the subscriber is connected to a Listen to all Settings module 21 and informed about the number of categories that are set to yes:
"You have selected # categories out of #, the ones selected are: , "
After the system has finished playing the information or when the subscriber presses [*], the subscriber is returned to the VMA Maintenance menu. This action will not be logged.
2. Change Individual Categories 22
Upon selection of the appropriate item from the VMA Maintenance menu the caller will be connected to a Change Individual Categories module 22. The function will first play a short explanation:
"To change the preference press [I] after hearing the category and its setting; to leave it unchanged and skip to next category press [#]".
Each available category is played to the subscriber, starting with the ones that are set to no followed by the ones that are set to yes. After each category, a one second pause will allow the subscriber to press either [1] (to change the preference) or [#] (to leave preference unchanged and skip to the next).
An affirmation is played to the subscriber for each time a preference is changed. E.g.: "Insurances set to no [#], Holidays set to yes [#], Transportation set to yes [I], Transportation set to no [#]." Each change made by the subscriber is logged by the LPF 9 through the BICSS
Intercept module 200.
After the function has finished or when the subscriber presses [*], the subscriber is taken to the UVM 60.
After a preference is set to "no", the subscriber will no longer hear any clips placed in his/her carrousel 70 for that category. After a preference is set to "yes", the BSP 5 can add infomercials to that subscriber's carrousel for that category.
3. Set all Categories to yes 23
Every "no"-setting that is encountered by the system is changed to "yes" upon the selection of the option "Set all Categories to yes" 23 by the subscriber.
The subscriber will only hear an affirmation of the action taken by the software.' "The preferences for all categories are set to yes".
For each changed category, an entry is written to the LPF 9 through the BICSS Intercept module 200. After the function has finished, the subscriber is taken to the VMA Maintenance menu.
4. Set all Categories to no 24
Every "yes"-setting that is encountered by the system is changed to "no" and a block will be set up to prevent the system from issuing any new categories upon the selection of the option "set all categories to no" 24 by the subscriber. This includes the reserved category.
The subscriber will only hear an affirmation of the action taken by the software:
The preferences for all categories are set to no. To remove this block, you can change preferences on categories to yes from the settings menu".
For each changed category, an entry is written to the LPF 9 through the BICSS Intercept module 200. After the function has finished, the subscriber is taken to the UVM 60.
5. Preference Screen Update 25
There will be a function on the PPF 3 for subscriber preferences to be updated via a screen interface. This function is termed "Preference Screen Update" function 25 that can be utilized by an operator whenever a subscriber encounters difficulties with the personal profile options.
As shown in figure 6, the VMA Maintenance module 19 comprises a Mailbox Schedule System 30 that carries out the loading of the carrousels, the audio, the trees and infomercials in dependence on information received from the BSP 5.
The Mailbox Scheduling System 30 receives data from the BSP through a File Checking Module 50.
Before the provisioning files from the BSP 5 are processed, they need to be checked for errors and consistency. This must be done separately from the loading func- tions because if errors occur, the BSP 5 must be notified and must still have time to correct the errors. Each filename is checked against the appropriate entry in a FileTable dataset. The number of records is checked against the value that is written in a file Trailer record. Each record is checked for completeness (mandatory fields, etc).
The Mailbox Scheduling System 30 will load or change the data that is needed on the Production Platform 3 to enable the INR 110 to present the correct infomercials to the intended subscribers.
The objective of the functions within the Mailbox Scheduling System 30 is to update the data sets on the Production Platform 3 based on the information in the maintenance files sent by the provisioning functions on the BSP 5. Data sets are explained in annex A - Data structures .
The Mailbox Scheduling System 30 comprises the following modules: category loading 31, infomercial loading 32, carrousel loading 33, audio loading 34, tree loading 35, audio/refresh 36, and VMA system preference 37.
The batch function category loading 31 reads records in a maintenance file. Based on an action field, records will be added, changed or deleted in a category data set.
If a new category is added an update will be made in a preference data set, setting the default preference for the category. The subscribers will be notified by a VoiceMail- Actueel message from the manager of the system, unless the subscriber had previously selected the option "no to all categories". The message will prompt the subscriber to set the preference on this new category to "yes" or "no".
The batch function infomercial loading 32 reads records in the maintenance files created by an Infomercial Maintenance interface and an Infomercial Counter Mainte- nance interface. Based on an action field, records will be added, changed or deleted in an infomercial data set. Also a call credits data set may be updated. When an infomercial is deleted, also the relevant entries in the Call Credits data set must be deleted.
The function also checks the existence of all elements that belong to the infomercial (tree, audio). The batch function carrousel loading 33 reads records in the maintenance file created by a Carrousel Maintenance interface. Based on an action field, records will be added, changed or deleted in a carrousel data set.
The batch function audio loading 34 reads records in a file created by an Audio Maintenance system. The batch function tree loading 35 reads records in a file created by a Tree
Structure Maintenance system.
The audio/tree refresh module 36 carries out a process that, after a predetermined trigger, substitutes and activates audio part of an infomercial during play back of an infomercial. This fully automated feature is introduced to support (24 hours per day) info- mercial limit constraints. Thus, it will be possible to amend the structure and content of an infomercial during play back.
The VMA system preference module 37 carries out a preference request on system level. An operator can input system preferences, i.e., to remove one or more predetermined preferences from all VMA carrousels where they were active or add a new preference to all active VMA carrousels.
All actions carried out by the category loading 31 , infomercial loading 32, carrousel loading 33, audio loading 34, and tree loading modules are logged by the LPF after being transmitted through the BICSS Intercept interface 200.
Business Support Platform (BSP)
The processing means 6 include the Business Support Platform (BSP) 5, which comprises software to carry out the following tasks: • Relations management,
• Contract management,
• Financial management,
• Campaign management, and
• Marketing information and evaluation. In general terms, the following actions are taken on the BSP 5 when a campaign starts. At the begi-nning of a campaign period a new schedule for the distribution of clips is created by a Campaign Management System (CMS) 55.
The CMS 55 receives contract information from a Front Office System (FOS) 54, which is the system that is used to control a sales department. To that end, the FOS 54 receives a campaign request from customer campaign 11. The FOS module 54 outputs billing information to the customer campaign 11 and logging information to a data warehouse through a BSP2DWH system 57.
This latter module, BSP2DWH 57, collects all events on the BSP 5 to be logged by the LPF 9. Thus, the relevant events of the CMS 55 to be logged are also collected by the BSP2DWH module 57. After collection, the BSP2DWH module 57 sends a BSP logging queue to LPF 9.
Audio files to be used in carrousels are transmitted from the customer campaign 11 to a Studio module 58 that develops an audio campaign. The Studio module 58 sends tree and audio data to the CMS 55 and logging information to the BSP2DWH system 57. Infomercials are given start and expiration dates. Voice is loaded to the category titles, clips and infomercials. The Business Support Platform 5 deteirmines the target audience and provisions the carrousels 70 with available infomercials.
The target audience may be selected automatically by a Marketing Information System (MIS) 56 of the Business Support Platform 5 using predetermined selection crite- ria. These selection criteria are received from CMS 55. The result is returned to the CMS 55. Then, subscriber telephone numbers that meet the criteria are transmitted to the Mailbox Scheduling System 30 (figure 6) which couples these telephone numbers to associated audio clips. Examples of selection criteria are:
• provide all telephone numbers of VoiceMail subscribers in a specific area having an above average income and are interested in wine, culture, and travelling;
• provide all telephone numbers of VoiceMail subscribers with a large change of being interested in skiing holidays; • provide 400,000 telephone numbers of VoiceMail subscribers for a mailing about a new product X to be transmitted in the period between October 23 and November 19, 1998;
• re-select telephone numbers that did not respond during an earlier campaign;
• provide all telephone numbers that are already member of a loyalty program of a specified relation. This relation would, for instance, like to give these telephone numbers special toll free access to a call center support number.
The Marketing Information System 56 of the Business Support Platform 5 is also arranged to analyze the number and kind of options selected by subscribers since any event will be time stamped by the Production Platform 3 and make standard reports. To that end, the MIS 56 receives subscriber preference data from the PPF 3. Marketing strategies may be based on these reports. The following questions may e.g. be addressed: what kind of subscribers have responded to specific infomercials? where did a specific campaign have the best results? what was the percentage of response to a specific campaign? Analyses may comprise statistical calculations (cross tables, counting, regression analysis, variances, etc.) or predicting models made with data mining techniques (scoring models, client profiles, segmentations, etc.).
Events on the MIS 56 to be logged are sent to the BSP2DWH module 57. After a campaign has finished, the Business Support Platform 5 initiates deletions for old carrousel entries, before provisioning the carrousels with new ones. The Production Platform 3 automatically deletes expired infomercials.
The BSP 5 also comprises an audio/email receiver 51 which receives one or more predefined audio files from the customer who is responsible for the content of a campaign. This receiver need not necessarily be an email receiver, but can be arranged as any type of receiver suitable to receive audio information. The audio/email receiver 51 processes the audio update email request such that it meets the demands of the BSP 5 and the PPF 3.
Whenever the BSP 5 receives a predetermined trigger an audio poller module 52
receives the processed audio information from the audio email receiver 51 and makes it available for the PPF 3. To that end, the audio poller 52 outputs the audio information to an audio PPF sender 53 which outputs an audio update information file to the PPF 3. The audio poller 52 receives limit alert information from the LPF 9. The audio poller 52 uses this information to make the audio information only available when certain predetermined limits have been exceeded. This will be further explained with reference to figure 11.
BICSS Intercept 200
Figure 8 shows the BICSS Intercept module 200 of the VMA subscriber 100 module (figure 5) in more detail.
The BICSS Intercept module 200 comprises an intercept module 240 for receiving the following logging information: UVM log from the UVM 60, VMA pref log from the VMA maintenance module 19, VMA carr log from the VMA carrousel 70, and IVR log from the IVR module 110. BICSS Intercept module 200 is preferably arranged to intercept standard Unisys system logging. The intercept module 240 processes all the received logging data and stores all logging information in a predetermined format in a BICSS database 150. In order to be able to process the received logging data to the predetermined format, the intercept module 240 receives settings information from a BICSS Intercept database 220. This BICSS Intercept database 220 stores certain log definitions. Updating of these log definitions is made through update data received from a log definition module 210. This latter log definition module 210 receives BICSS Intercept parameters from CM A organization 13.
The intercept module 240 is connected to an output file module 230. The output file module 230 receives everct report log data from the intercept module. The output file module 230 opens a predetermined log file in accordance with a predetermined schedule, puts a certain sequence number to the file, transmits the file to a transfer module 250, and closes the file.
The transfer module 250 has two outputs: a BICSS Intercept logging file to the LPF 9 and a subscriber preference file to the Marketing Information System 56 of the BSP 5.
Logging platform (LPF) 9
As shown in figure 9, the logging platform (LPF) 9 comprises the following units: mediation system 91, operational data storage module 92, a database called
ODS/DWH 93 (operational data storage/data warehouse), campaign monitor (WEB) report module 94 and interaction handling system (IHS) 95.
The mediation system 91 receives campaign information from BSP and BICSS Intercept logging from PPF 3. The mediation system 91 processes the received logging information and converts the information to a predetermined format for storage. The data to be stored is transmitted as PPF logging data sent to the operational data storage module 92. Apart from a storage function, the mediation system 91 determines which part of the received input information is related to a predetermined action of the system with respect to one or more callers of the system. The mediation system 91 detects that information and generates an IHS request for the interaction handling system 95.
The operational data storage module 92 also receives BSP logging data from BSP
5, and IHS logging data from the interaction handling system 95. Thus, the operational data storage module 92 receives all logging data from the entire system to be stored in the ODS/DWΗ database 93. The operational data storage module 92 carries out the storage process.
The ODS/DWΗ database 33 comprises all data related to system settings, client preferences and logging. These data also relate to actual campaigns.
The campaign monitor (WEB) report module 94 is arranged to read predetermined data from the ODS/DWΗ 33 with respect to actual campaigns. This data is col- lected by the campaign monitor (WEB) report module 94 and transmitted to customers, e.g., through the Internet. This has been indicated with a block customer (reports) 15. The mediation system 91 is shown in more detail in figure 10. The mediation system module 91 comprises the following modules: file receive module 101, mediation module 102, clustering module 104, transfer module 106, and error module 107. Moreover, the mediation system module 91 comprises two databases: mediation database 103 and cluster database 105.
The file receive module 101 receives BICSS Intercept logging from the PPF 3. This module checks the sequence and content of the files received. If the module detects some errors, the errors are transmitted to error module 107 which outputs the errors to the CMA organization 13 (figure 2). Correct files are transmitted in the form of a file handle request to the mediation module 102. The mediation module 102 receives the request and, based on BICSS Intercept specifications, reconstructs and, if necessary, converts log file records. The log files may, e.g., be converted from ASCII
files to database attributes. De mediation database 103 is used by the mediation module 102 for data storage.
When the mediation module 102 detects some errors these errors will be transmitted to the error module 107 which transmits them to the CMA organization 13. The clustering module 104 is arranged to reconstruct calls of clients to the VMA facility based on the time of calling and the mailbox number of the client. The clustering module 104 receives a cluster request from the mediation module 102 comprising data necessary for the clustering module to carry out its task. The clustering module 104 may also communicate with the mediation database 103. Moreover, the clustering module 104 is connected to the cluster database 105 storing data related to the reconstruction process.
The reconstruction process is able to interconnect separate PPF system loggings from UVM 60, VMA 70, and IVR 110 during a subscriber call. As a result the process produces relationally linked database-records which describe the path that the caller made through the PPF subsystems UVM 60, VMA70, and IVR 110. When the caller has listened to infomercials, he/she will have followed the following path: UVM- VMA-IVR-VMA-UVM. The output of the reconstruction process in the clustering module 104 is transferred as a transfer request to the transfer module 106. The transfer module 106 transfers the reconstructed data to the operational data storage module 92. If the transfer module 106 detects one or more errors these are transmitted to the error module 107 for further transmission to the CMA organization 13.
Figure 11 shows the interaction handling system 95 in detail. The basic function of the interaction handling system 95 is to deal with all requests from callers that need some action by the system towards the caller. The interaction handling system 95 comprises the following modules: remove double requests 111, limit process 112, billing/analyze process 113, NAW process 114, flow management system 115, fulfilment process 116, and DWH housekeeping module 117 (DWH = data warehouse).
The remove double requests module 111 receives an IHS request from the mediation system 91 (figure 9) and campaign information LPF from BSP 5. The function of the remove double requests module 111 is to prevent the system from taking the same action twice to the same caller if this is not allowed. This function can be either set on tree level or on the level of an individual infomercial. Moreover, this function
can be set to prevent double requests from the same caller (i.e. the same telephone handset) during e.g. one day or one week, or any other time period. Thus, the system can prevent that, e.g., more than one T-shirt is sent to the same address in one campaign. If the remove double requests module 111 has established that the IHS request is valid, the following step is to check whether or not predetermined limits are exceeded. This is carried out by the limit process 112. Limits may be set either on tree level or on individual infomercial level. Limits may for instance relate to a number of actions or a total budget available for a certain campaign. When the predetermined limit is reached a limit alert signal will be sent to the BSP 5. The audio poller 52 in BSP 5 (figure 7) will receive this signal and automatically decide which amended audio information is to be sent to all PPF systems connected. For instance, a message indicating that a T- shirt will be sent after pressing [3] may be changed into a message informing the caller that a brochure will be sent when no T-shirts are available anymore. If the limit process 112 establishes that the predetermined limits are not exceeded, the process continues with the billing/analyze process 113. This process counts any logging information in view of debiting and analyzing purposes. It transmits billing counters to BSP 5.
If the billing/analyze process 113 has not detected any error, the process con- tinuous with the NAW process 114. This process takes care that any logging is fully automatically provided with NAW data (NAW = naam, adres, woonplaats = name, address, place of living). To that end the NAW process 114 communicates with an external source of NAW data through the flow management system 115. The external source of NAW data may also be updated with new NAW data. After the NAW process 114 has been completed successfully, the process continues with the fulfilment process 116. This is the process which, after all checks made in modules 111-114, decides that a predetermined activity for the caller may be carried out by the interaction fulfilment 7. To that end, the fulfilment process sends a FLFL request to the interaction fulfilment 7 through the flow management system 115. All events that have taken place in the interaction handling system 95, including possible errors, are collected by the DWH housekeeping module 117 and transmitted to the ODS module 92. The ODS module 92 stores the information in the ODS/DWH database 93.
User interfaces
Screens
To allow operational personnel to monitor and manage the processes that are taking place on the Production Platform 3, several screens will be used to interface with the system.
Category Status
Due to unforeseen circumstances it may be needed to quickly change the status of a category on the Production Platform 3. A screen on monitor 10 will be available to the operator to do this. After entering the Category Id the system will show a screen that contains all fields from the Category record. The only field that can be updated is the Status field. Infomercial Thresholds
In some cases the number of times an infomercial can be played or an interaction witiiin an infomercial can be initiated will be limited. Typically, these limits are set to- gether with a threshold. In order to allow an operator to take action when a threshold is reached, a screen on monitor 10 will be available to inform the operator of the current status of limits, counts and thresholds for infomercials. ---/.st view.
The operator can view a list of all infomercials to which limits are applied. This list contains the Infomercial Id, Description, Infomercial Type, Expiration Date/Time, Limits, Counts and Thresholds. Record view.
Upon entering a particular Infomercial Id, the operator can view the complete Infomercial record. Technical Implementation Remarks Redundancy Analysis
Due to the high volume of possible subscriber interactions it is expected that redundancy will occur on the Production Platform 3. The main area in which redundancy will occur is the Infomercial Delivery System 40. This is the system that interacts with the subscriber and needs to be able to respond quickly to subscriber actions. Data Distribution Analysis
Although the system shown in the figures has one member of all of the entities shown, it is envisaged that all of the entities may be implemented two or more times.
E.g., currently, in The Netherlands, the VoiceMail system is divided over two, geographically separated, computer systems. This means that each system will have its own VMA Production Platform 3. In the future, the number of computer systems may be increased. These computer systems may be stand alone or communicating with one an- other. Based on the decisions made on the Business Support Platform infomercials will be spread over these two or more Production Platforms 3. Technical Infrastructure Network Applications Platform
The Direct VoiceMail system is preferably designed as a Unisys A Series, Net- work Applications Platform (NAP) Application. NAP provides the environment for voice applications to operate on A Series computer systems. NAP supports multiple applications on a single platform.
The Network Application Platform (NAP) is a specialized configuration of A Series hardware and system software that provides complex data and voice processing capabilities through applications running on the A Series computer. The NAP provides the interface between these applications, called network applications, and a telecommunications network.
NAP is a platform for the network applications. In other words, the NAP itself does not provide any services over a network; rather, network applications provide ser- vices through the NAP. Some of these services include:
• Voice Mail storage and retrieval,
• Call answering and call forwarding,
• Interactive Voice Response services, like Bank-by-Phone and Airline Reservations.
The NAP is designed to keep network applications isolated from NAP hardware and to off-load much of the telephone network related processing that the applications must perform. The NAP does this by maintaining control of the system resources, collecting digits (such as caller-entered passwords), and performing call acknowledgement, call connection, and maintenance of voice storage and databases.
By providing control over these resources, the NAP frees application developers from having to be concerned about network-specific considerations. Optional enhancements. Call Credits
To make VMA more attractive to the subscribers, the system may offer the ability
to save Call Credits or free telephone time. This may be linked to a subscriber's action within an infomercial, e.g. the subscriber orders a brochure from advertiser ABC. By doing that the user collects e.g. 5 minutes of toll-free calling. The subscriber should be enabled to use the free calling time through the Production Platform 3. The subscriber should also be enabled to call and listen to his/her current Call Credit balance. Preference Maintenance via Internet
As categories increase in number and become more complex, the subscriber should be enabled to set his/her preferences through the use of the Internet. More complex counters The limits and counters specified in this design may prove to be insufficient in the future. Other, more complex counters may be needed to limit interactions based on replay choices.
It is to be understood that the description above is only intended to illustrate the invention and not to limit its scope. The scope is defined by the appended claims only.
Annex A Data structures
A.1 Data Model This annex contains the information required to be stored for the VoiceMailActueel application. It does not necessarily reflect the physical separation of data in the databases, as this will be determined in the detailed design phase. A * indicates a key field for retrieval. The data structures disclosed only relate to the production platform 3 and are intended for illustration only. Similar data structures may be developed for the business support platform 5 and the logging platform 9.
A.2 Entities & Attributes
In this paragraph the data structures of subscribers (mailboxes) 81, categories 82, preferences 83, infomercials 84, and carrousel slots 85 will be explained. See figure 12. Moreover, data structures for system parameters and file tables will be described. The call credit data structure shown in figure 12 with dotted lines is optional.
A.2.1 Subscriber 81
Contains all subscribers that have a mailbox. Mailbox * Mailbox number
Extension Member of the household (optional)
Status The mailbox is Blocked or Active
Last carrousel slot The last carrousel slot that has been listened to by the subscriber Creation Date/Time Date/Time the subscriber was first created/provisioned.
A.2.2 Category 82
Contains all categories available to subscribers during profile maintenance, one record per category.
Category ID * Unique numeric string used to identify the category.
Description Text used as documentation to describe this category.
Title pointer Pointer used to find the audio title needed during
preference maintenance.
Status Indicates whether this category is available for subscribers. Values are Available, Unavailable. It may be desirable to initially set this to Unavailable until the Title is ready.
Fixed Y/N, indicates that this category is fixed and the subscriber cannot change his/her preference for this category.
CreationDate/Time Date/Time the category was first created/provisioned.
A.2.3 Preference 83
Contains all categories selected by the subscriber, or automatically created by the provisioning of a new category. There is one record for each "yes" category, multiple records per subscriber.
Mailbox * Mailbox number. Extension * Member within the household (future). Category ID * The category that has been selected. This value could be null if the status refers to all categories (i.e. to block all categories).
Status This is the setting of the preference. Values can be Yes (present this category), or Blocked (do not present this category). If the category ID is null and this value is Blocked, then reject transfers to VMA for this subscriber.
Creation Date/Time Date/Time the preference was first created/provisioned.
A.2.4 Infomercial 84 Contains all infomercials currently defined and used in carrousels. There is one record for each infomercial.
Infomercial ID * Unique numeric string used to identify the infomercial.
Description Text used as documentation to describe this infomer cial
Clip Pointer Pointer used to find the audio clip needed during the playing of the carrousel.
Infomercial Pointer Pointer used to find the audio infomercial needed when the subscriber selects a clip. It may point to just the first message of a more complex infomercial.
Infomercial Type Indicates the structure and type of interaction of the infomercial. Values are: Message Only, Subscriber Reply, Mailbox/Telephone Transfer, or Combination/Complex (all 3).
Status Indicates whether this infomercial can be used. Values are Available, Forced Unavailable (disabled).
Call Credits Number of call credits that can be obtained when a subscriber initiates the appropriate action (optional).
Start Date/Time Date/Time the infomercial should be made available to subscribers. If it is before this data/time, the clip is not presented in the carrousel.
Expiration Date/time the infomercial should be made unavailable to subscribers.
Date/Time If it is after this data/time, the clip is not presented in the carrousel.
Creation Date/Time Date/Time the infomercial was first created/provisioned.
Clip Limit Maximum number of times this clip can be played to subscribers, (optional).
Infomercial Limit Maximum number of times this infomercial can be selected by subscribers.
Interaction Limit Maximum number of times this infomercial can accept replies (requests for information or transfers) from subscribers.
Limit 1 Maximum limit reserved for future use. Limit 2 Maximum limit reserved for future use.
Clip Count Number of times this clip has been played to subscribers. Only used when Clip Limit is filled, (optional).
Infomercial Count Number of times this infomercial has been selected by subscribers. Only used when Infomercial Limit is filled.
Interaction Count Number of times this interaction has been selected by subscribers. Only used when Max Interaction Limit is filled.
Count 1 Counter reserved for future use. Count 2 Counter reserved for future use. % Warning Indicates when to issue a warning that a counter will soon be Threshold exceeded, (optional - may be set to 100%).
Last Updated Date/Time the infomercial counts were last updated. Date/Time
A.2.5 Carrousel Slot 85
Contains all carrousel entries for all subscribers. There is one record per carrousel slot, multiple records per subscriber.
Mailbox * Mailbox number. Extension * Member within the household (optional). Slot Number * Used to order the slots in the carrousel. Category ID The category that was used to present this clip to the subscriber. It is used when filling the carrousel to determine if it is still a preference of this subscriber. If the value is null, then it is presented to the subscriber regardless of the preferences.
Infomercial ID Used to locate the associated clip and infomercial. Creation Date/Time Date/Time the carrousel entry was first created/provisioned.
A.2.6 System Parameters
Contains all parameters that are used within the system.
Maximum Cycles The maximum number of loops allowed for a carrousel, without interactions
Maximum Clips The maximum number of clips that can be referenced in a carrousel
BICSS Tracing Turn BICSS tracing (= event logging) on or off Total Categories Total number of available categories All NO in PrefMenu Indication whether or not the option "set all preferences to no", will or will not appear on the Preference Maintenance menu
Default warning Threshold % of Infomercial Limit
A.2.7 File Table Contains entries for the interface filenames.
File type The type interface file, e.g. CATPRO, WOPRO, etc. Host Host identifier
File number File type's last used sequence number Create date Date on which the file was created (YYYYMMDD) Create time Time at which the file was created (HHMM) Rec. count Number of data records within the file
Annex B List of Abbreviations
BICSS Billing Interface Customer Services & Statistics BSP Business Support Platform
CMA Call Media Advertising organization
CMS Campaign Management System
DWH Data Warehouse
FLFL request Fulfilment request FOS Front Office System
IHS Interaction Handling System
IVR Interactive Voice Response
LPF Logging Platform
MIS Marketing Information System NAW Naam, Adres, Woonplaats (= Name, Address, Place of living)
ODS Operational Data Storage
PPF Production Platform
PSTN Public Switched Telephone Network
UVM Universal Voice Mail (existing voice mail facilities) VMA Voice Mail Actueel (name of voice mail facility including infomercials)