|

TECHNICAL FIELD
This invention relates generally to telecommunications and particularly to messaging arrangements, such as voice messaging arrangements.
BACKGROUND OF THE INVENTION
Voice messaging systems, such as the AT&T Audix.RTM. system, typically allow a service subscriber to record one or more messages, referred to as personal greetings, for presentation to callers who are attempting to reach the subscriber, immediately upon a caller becoming connected to the voice messaging system. Many subscribers like to use the personal greeting mechanism as a way to provide information about their whereabouts during the day. The personal greeting can then be used by the caller to locate the subscriber, e.g., for emergency communications or interactions. Alternatively, the personal greeting informs the caller when and where the subscriber will be available for normal contact. But a subscriber's schedule may be such that the personal greeting may need to be changed several times during a day, according to the subscriber's changing schedule. It is very cumbersome and inconvenient to require that the subscriber manually re-record and administer a new personal greeting with such frequency.
SUMMARY OF THE INVENTION
This invention is directed to solving these and other problems and disadvantages of the prior art. Illustratively according to the invention, there is provided an arrangement for the automated generation and management of a subscriber's personal greeting based upon information contained in the subscriber's electronic schedule database (e.g., appointments schedule file, calendar database). Such databases are often already maintained by subscribers for use with one of the many popular and commercially-available calendar-tool application programs. The arrangement accesses the schedule information in the database and uses text-to-speech conversion facilities to generate a personal greeting for the subscriber from this information. The arrangement further periodically re-accesses the schedule information to detect changes therein and uses the information to generate a new, updated, personal greeting for the subscriber.
Generally according to the invention, there is provided an arrangement that integrates an automatic source of user schedule information, such as a user schedule database, with a messaging system having a user personal-greeting capability. The arrangement, illustratively implemented in a processing apparatus such as a computer, automatically generates a user personal greeting from user schedule information obtained from the automatic source. The generated personal greeting is automatically installed in the messaging system, for use of the personal greeting on behalf of the user by the messaging system. Further according to the invention, such an arrangement may be employed in any telecommunications system that presents a user's message to a party who is trying to contact the user through the telecommunications system. The arrangement automatically generates the user's message from the user's schedule information contained in a database. The arrangement then automatically causes the telecommunications system to conventionally present the automatically-generated message.
By administering--creating, removing, changing--the user's personal greeting based on the user's schedule information, the invention ensures that callers who are attempting to reach the user are given up-to-date and accurate information about the present whereabouts of the user. Preferably, the user is given control over the amount of detail presented in the greeting. Yet, by generating the personal greeting automatically, the invention frees the user from the cumbersome and inconvenient necessity of personally, manually, administering and re-recording the personal greeting at every change in the user's schedule.
These and other advantages and features of the invention will become more apparent from the following description of an illustrative embodiment of the invention considered together with the drawing.
BRIEF DESCRIPTION OF THE DRAWING
FIG. 1 is a block diagram of a telecommunications system embodying an illustrative example of the invention;
FIG. 2 is a flow diagram of a personal greeting installation function of the message system of the telecommunications system of FIG. 1;
FIG. 3 is a flow diagram of a personal greeting presentation function of the message system of the telecommunications system of FIG. 1;
FIG. 4 is a flow diagram of a personal greeting generation function of the computer of the telecommunications system of FIG. 1; and
FIG. 5 is a block diagram of a schedule database of the computer of the telecommunications system of FIG. 1 and an example of personal greetings generated therefrom by the function of FIG. 4.
DETAILED DESCRIPTION
FIG. 1 shows an illustrative telecommunications system. It comprises user telephone terminals 29 connected by a private branch exchange switch (PBX) 24 to a message system 1000. Message system 1000 typically provides messaging services on a subscription basis. Hence, users thereof will be referred to hereinbelow as subscribers. Message system 1000 stores voice messages for subscribers in a mass storage 12, such as a disk, operating under control of a controller 10. Terminals 29 access message system 1000 through PBX 24 over phone lines 1004 and a voice interface 34 that interfaces phone lines 1004 to the internal circuits and functions of message system 1000, to store the messages in system 1000 and to retrieve the messages from system 1000. Message system 1000 is illustratively the AT&T Ovation multimedia communication system, or an AT&T voice-mail system of the type disclosed in the application of G. R. Brunson and R. D. Reeder entitled "Adjunct Processor Embedded in a Switching System", Ser. No. 07/826,345, filed Jan. 27, 1992, now issued as U.S. Pat. No. 5,311,576 or in the application of G. R. Brunson entitled "Modular Adjunct Processor Made of Identical Multi-Function Modules Each Innately Unable to Perform the Adjunct-Processor Functions But Adaptable Under Direction Of One Of Them To Perform Any Of The Adjunct-Processor Functions", Ser. No. 07/919,674, filed Jul. 27, 1992, now issued as U.S. Pat. No. 4,329,579 both of which are assigned to the same assignee as this application. Alternatively, portion 1 of the system of FIG. 1 which includes terminals 29, PBX 24, and message system 1000, is illustratively the store-and-forward system disclosed in U.S. Pat. No. 5,008,926, which is hereby incorporated herein by reference.
Message system 1000 is connected by a local area network (LAN) 1001 to a computer 1002. LAN 1001 is interfaced to the internal circuits and functions of message system 1000 by a LAN interface 84, in a conventional manner such as is disclosed in the above-referenced U.S. Pat. No. 5,008,926. Data transfers between computer 1002 and message system 1000 over LAN 1001 are performed by means of an applications programmer interface (API) program communicating by means of a utility such as transfer control protocol/lnternet protocol (TCP/IP) remote procedure call (RPC) server function using LAN interface 84.
The operations of control 10 engaged in with respect to a subscriber's personal greeting are conventional and are merely summarized in FIGS. 2-3. Conventionally, voice interface 34 interacts with the subscriber to record a message that serves as a personal greeting, and then conveys the electronic file containing the greeting to control 10. Control 10 receives the file, at step 200, and uses it to install the subscriber's personal greeting in that subscriber's personal mailbox in mass storage 12, at step 202. Control 10 then exits, at step 204. When the subscriber calls system 1000 to review his or her multiple personal greetings, or when a call for the subscriber is directed to system 1000 and one of the subscriber's personal greetings is activated, voice interface 34 requests the subscriber's activated personal greeting. Control 10 receives this request, at step 300, and in response retrieves the personal greeting from the subscriber's mailbox in mass storage 12 and presents it to voice interface 34 for play-back to the caller, at step 302. Control 10 then exits, at step 304.


Computer 1002 includes an automatic source of a subscriber's schedule information, such as a schedule database 1007 which contains the subscriber's schedule information in electronic form. Schedule database 1007 may be just an ASCII file of appointment information that is created by the subscriber and that is selectively editable by an on-line editor. Preferably, however, schedule database 1007 is a calendar database that is associated with and created by a conventional calendar program 1006 of the subscriber. Examples of conventional calendar programs include Calendar-Manager software tool of Sun Microsystems, and Schedule+calendaring and scheduling software of Microsoft Corporation. An example of such a database is shown in FIG. 5. Schedule database 1007 includes entries 501 carrying information fields such as date 502, time 503, activity 504, duration 505, location 506, and a flag 507 indicating whether the corresponding entry's information is public or private.
According to the invention, computer 1002 further includes a function, illustratively implemented as a process 1005, that uses information contained in a subscriber's schedule database 1007 to create a personal greeting for the subscriber for use by message system 1000. The program of process 1005 is stored in a memory of computer 1002 and is executed therefrom by a processing unit of computer 1002, as is conventional for processes. The functionality of process 1005 is flowcharted in FIG. 4. When execution of process 1005 is commenced, at step 400, process 1005 first obtains an indication of present date and time from computer 1002, at step 401. Process 1005 then accesses information for the present date and time in schedule database 1007 of subscriber X who is served by process 1005, at step 402. If there is no entry 501 for the present time in schedule database 1007, or if the entry 501 for the present time is blank, as determined at step 404, process 1005 instructs message system 1000 to use a default greeting (a generic, non-specific, form of a personal greeting) for subscriber X, at step 407. Illustratively, the default greeting is as follows: "Hello, you have reached the mailbox of X. I'm not available fight now. Please leave a message after the tone."
If there is a non-blank entry 501 in schedule database 1007 for the present time, as determined at step 404, process 1005 checks whether private flag 507 of that entry 501 is set, at step 406. If flag 507 is set, indicating that the information in that entry 501 is private, process 1005 instructs message system 1000 to use the default greeting for subscriber X, at step 408. If flag 507 is not set, process 1005 uses the information contained in the entry 501 for the present time to generate a corresponding present-time personal greeting for subscriber X, at step 410. Process 1005 creates the greeting as an electronic file in voicable form, e.g., PCM or CELP, using conventional text-to-speech conversion technology. Illustratively, process 1005 may employ the services of a Creative Labs' Sound Blaster text-to-speech board and application software for this purpose. Illustratively, the form of the personal greeting is as follows: "Hello. You have reached the mailbox of X. I'm at activity in location until duration. Please leave a message after the tone." The underlined terms in the message are variables for which process 1005 substitutes information based on contents of the corresponding fields of the entry 501 for the present time. An illustrative example of such a personal greeting is shown in FIG. 5.
Following step 407 or 410, process 1005 saves either a full copy of the generated greeting or a copy of the variable information contained therein, at step 412, and conveys the greeting to message system 1000 via LAN 1001 for installation as the present "active" greeting, at step 414. Message system 1000 responds thereto by installing the received greeting as the "active" personal greeting, in the manner shown in FIG. 2. Message system 1000 then presents this greeting to callers who are trying to reach subscriber X, in the manner shown in FIG. 3, until the greeting is replaced by a new personal greeting.
Following step 414, process 1005 that is serving a single subscriber goes to sleep for a predetermined period of time, at step 416. Alternatively, if process 1005 is serving a plurality of subscribers, process 1005 repeats steps 401-414 for each served subscriber prior to going to sleep at step 416. The sleep period is an administrable function, programmed either by the subscriber or by an administrator of computer 1002.i The period of sleep is normally dictated by the granularity of the schedule information in schedule database 1007. In other words, if schedule database 1007 may contain a different entry 501 for each 5-minute period or time interval, process 1005 will sleep for 5 minutes, but if schedule database 1007 may contain a different entry 501 only for each 30-minute period, process 1005 will sleep for 30 minutes.
When the sleep period expires, process 1005 is awakened by computer 1002, at step 418. Process 1005 again obtains an indication of present date and time from computer 1002, at step 419, and then accesses information for the present time in schedule database 1007 of subscriber X who is served by process 1005, at step 420. Process 1005 then compares the accessed information with the information that it had saved for subscriber X at step 412, at step 422. If the comparison indicates, at step 424, that no change in the personal greeting is required because the old personal greeting is still timely, process 1005 merely returns to sleep at step 416. If it is determined at step 424 that a new personal greeting is required, process 1005 returns to step 404 to generate the new greeting. Alternatively, if process 1005 is serving a plurality of subscribers, process 1005 repeats steps 419-424 and, if needed, steps 404-414, for each served subscriber, prior to returning to sleep at step 416.
The attached appendix contains a listing of an illustrative example of C-program code that implements the personal greeting generation function described above.
Of course, various changes and modifications to the illustrative embodiment described above will be apparent to those skilled in the art. For example, instead of using text-to-speech conversion facilities, the greeting generation process may include a database of recorded speech fragments which it may assemble in strings to form the personal greetings. Also, the personal greeting need not be generated merely as a function of the schedule information, but may be generated as a function of a matrix of additional types of information, such as the location or identity of the caller, a caller-provided access code, time-of-day, weekday/weekend, etc. The capability of the invention may also be integrated with other tools and capabilities, e.g., setting off an alarm to notify the subscriber that it is time for a scheduled appointment. Furthermore, the generated personal greeting message may also indicate when the subscriber will be available, e.g., "Hello, you have reached the voice mailbox of X. Presently, I am at place until time. I will be available at this extension from time until time and from time until time." The information is derived from an analysis of the schedule data. Such changes and modifications can be made without departing from the spirit and the scope of the invention and without diminishing its attendant advantages. It is therefore intended that such changes and modifications be covered by the following claims. ##SPC1##
|
|