US20100153162A1 - On-Line Appointment System - Google Patents
On-Line Appointment System Download PDFInfo
- Publication number
- US20100153162A1 US20100153162A1 US12/710,174 US71017410A US2010153162A1 US 20100153162 A1 US20100153162 A1 US 20100153162A1 US 71017410 A US71017410 A US 71017410A US 2010153162 A1 US2010153162 A1 US 2010153162A1
- Authority
- US
- United States
- Prior art keywords
- appointment
- user
- available
- calendar
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/02—Reservations, e.g. for tickets, services or events
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
- G06Q10/063116—Schedule adjustment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q10/1093—Calendar-based scheduling for persons or groups
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/109—Time management, e.g. calendars, reminders, meetings or time accounting
- G06Q10/1093—Calendar-based scheduling for persons or groups
- G06Q10/1095—Meeting or appointment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
Definitions
- the present description relates to calendars and appointments and, more particularly, on-line calendars and appointments.
- PIMs personal information managers
- FIG. 1 is a screen shot of a web-based calendar offered by Yahoo Inc. at www.calendar.yahoo.com.
- a user can access their web-based calendar by use of a network browser (e.g., HTML browser) coupled to the Internet.
- These web-based calendars allow users to maintain their schedule of events on the Internet.
- web-based calendars are provided there has conventionally not been any means to efficiently schedule on-line appointments with others. While a user of a web-based calendar could interact with a network browser to schedule an event in his/her own web-based calendar, there is no automated on-line mechanism to schedule appointments.
- the disclosure relates to techniques for providing on-line appointments such that users can schedule appointments with other users over a network.
- the network is, for example, a global computer network such as the Internet.
- users are able to schedule appointments over the network by on-line means.
- the users are typically individuals or service providers.
- Service providers are normally those businesses that offer appointments to schedule their services. Numerous service providers utilize appointments. Examples of service providers include beauty shops, auto repair shops, government offices, professionals (including lawyers, dentists, doctors, accountants, etc.), and many more.
- the techniques for providing on-line appointments can be implemented in numerous ways, including as a computer system, an apparatus, a method or a computer readable medium. Several embodiments are discussed below.
- one embodiment includes: receiving a request for appointment availability of the service provider during a time period; determining available appointment times within the time period for the service provider; transmitting the available appointment times to the user; receiving a selected appointment time from the available appointment times; and setting the on-line appointment between the user and the service provider at the selected appointment time.
- one embodiment includes: transmitting a user's electronic calendar to a user; transmitting a list of available service providers to the user; receiving a request for appointment availability of a selected one of the available service providers; determining available time slots for the selected one of the available service providers; transmitting the available time slots to the user; receiving a time slot selection from the available time slots to establish an appointment with the selected one of the available service providers; updating the user's electronic calendar with the appointment; and updating an electronic calendar for the selected one of the available service providers with the appointment.
- one embodiment includes: computer program code for receiving a request for appointment availability of the service provider; computer program code for determining available appointment slots for the service provider; computer program code for transmitting the available appointment slots to the user; computer program code for receiving a selected appointment slot from the available appointment slots; and computer program code for setting the on-line appointment between the user and the service provider at the selected appointment slot.
- one embodiment includes: computer program code for transmitting a user's electronic calendar to a user; computer program code for transmitting a list of available service providers to the user; computer program code for receiving a request for appointment availability of a selected one of the available service providers; computer program code for determining available time slots for the selected one of the available service providers; computer program code for transmitting the available time slots to the user; computer program code for receiving a time slot selection from the available time slots to establish an appointment with the selected one of the available service providers; computer program code for updating the user's electronic calendar with the appointment; and computer program code for updating an electronic calendar for the selected one of the available service providers with the appointment.
- one embodiment includes: registering service providers over the global computer network to identify at least offered services, appointment hours, contact information for the registered service providers; providing an on-line calendar for each of the registered service providers; registering individuals over the global computer network; providing an on-line calendar for each of the registered individuals; and setting of appointments with certain of the registered service providers when the appointment have been requested by any of the registered individuals, and for each appointment being set, the setting at least places appointment indications on the on-line calendars of the associated one of the registered service providers and the associated one of the individuals.
- one embodiment includes an appointment server coupled to the network, and an appointment database coupled to the appointment server.
- the appointment server and the appointment database together provide storage and access for calendars of the users and provide assistance to users to request appointments and thereafter permit confirmation the appointments.
- one embodiment includes: registering as a user of an on-line appointment system, the registering providing a user name, contact information, and appointment availability information for the user, the appointment availability information indicating days and times during which the user is generally available to receive appointments; maintaining on-line calendars for the registered users, the on-line calendars including scheduled appointments or events for the respective registered user; and scheduling appointments between users.
- the scheduling includes at least receiving an appointment request from a first registered user requesting an appointment with a second registered user, and selecting an appointment date and time for the appointment in accordance with the appointment availability information for the second registered user and non-conflicting with any other previously scheduled appointments or events in the on-line calendar of the second registered user.
- one embodiment includes: registering service providers for on-line appointments over the global computer network, the registering providing appointment availability information for the registered service providers; and scheduling on-line appointments between users and the registered service providers over the global computer network based on the availability information.
- Different embodiments or implementations of techniques for providing on-line appointments may have one or more of the following advantages.
- One advantage is that appointments can be efficiently established on-line at any time day or night. Appointments can also be established without the need to waiting for personal assistance to schedule an appointment with a service provider.
- Another advantage is that user can manage and schedule appointments using a website.
- Still another advantage is that customers can use a central website to make appointments with various service providers.
- Yet another advantage is that synchronization of calendars or appointments between those maintained by the central website and those on local computers.
- FIG. 1 is a screen shot of a web-based calendar offered by Yahoo Inc.
- FIG. 2A is a block diagram of an on-line appointment management system according to one embodiment
- FIG. 2B is a block diagram of an appointment server and an appointment database according to one embodiment
- FIG. 3A is a flow diagram of an on-line appointment service processing according to one embodiment
- FIG. 3B is a flow diagram of appointment processing according to one embodiment
- FIGS. 4A and 4B are flow diagrams of consumer-side on-line appointment processing according to one embodiment
- FIGS. 5A-5C are flow diagrams of server-side on-line appointment processing according to one embodiment
- FIG. 5D is a flow diagram of client-side new user processing according to one embodiment
- FIG. 5E is a flow diagram of server-side new user processing according to one embodiment
- FIG. 6 is a flow diagram of client-side appointment-type processing according to one embodiment
- FIG. 7 is a flow diagram of server-side appointment type processing according to one embodiment
- FIGS. 8A and 8B are flow diagrams of service provider appointment review processing according to one embodiment
- FIGS. 9A and 9B are flow diagrams of server-side appointment review processing according to one embodiment.
- FIG. 10 is a flow diagram of client-side restricted appointment request processing according to one embodiment
- FIG. 11 is a flow diagram of a server-side restricted appointment request processing according to one embodiment
- FIG. 12 is a block diagram of a service provider's computer according to one embodiment.
- FIG. 13 is a flow diagram of synchronization application processing according to one embodiment
- FIG. 14 is a flow diagram of server-side appointment synchronization processing according to one embodiment
- FIG. 15 is a registration screen in which a new user to the appointment system can register on-line;
- FIG. 16 is a setup screen in which a user can configure how he/she wishes his/her calendar to appear when he/she accesses the appointment website;
- FIG. 17 is an appointment availability screen in which the user provides additional information concerning their availability for scheduling appointments, types of appointments, etc., assuming that the user is permitting appointments;
- FIG. 18 is a user's calendar screen in which a user's calendar page is depicted
- FIG. 19 is an add event screen which an add event page is displayed
- FIG. 21 is an exemplary user's calendar screen in which an updated user's calendar page is depicted
- FIG. 22 is an event details screen in which event details pertaining to the event scheduled with respect to FIG. 20 are visible on the display screen;
- FIG. 24 depicts a screen contain a search results page which contain the search results of a search carried out using the search form of FIG. 23 ;
- FIG. 25 is a screen depicting an available appointment types page for the selected service provider
- FIG. 26 depicts an appointment time slot selection screen
- FIG. 27 depicts an appointment details screen
- FIG. 28 is a user's calendar screen in which a user's calendar page is depicted
- FIG. 29 illustrates the user's calendar screen of FIG. 28 after the selected service provider has confirmed the requested appointment
- FIG. 30 depicts an address book screen that provides an address book for the user.
- the on-line appointment management system 200 allows users (e.g., consumers) to request appointments with other users (e.g., service providers), and also allows users (e.g., service providers) to accept or decline the requested appointments.
- users e.g., consumers
- a user of the consumer's computer 208 can access the appointment server 202 through the network 206 to request an appointment with a given service provider at a particular date and time. Thereafter, the service provider can be informed of the requested appointment and then either confirm or reject the appointment.
- the appointment server 202 also provides calendars for the users (consumers and service providers).
- the calendars allow the users to maintain their schedules on-line and thus accessible from various computers with access to the network 206 .
- a user can still request an appointment with a service provider. Since the service provider also has a calendar, the appointment server 202 is able to determine when the service provider has time available for appointments. In requesting an appointment with the service provider, the user selects from the available appointment times. Thereafter, the service provider is notified of the requested appointment and given the opportunity to accept or decline the requested appointment. Once the requested appointment has been accepted (or confirmed), the requested appointment becomes a confirmed appointment and can appear as being “confirmed” on the respective calendars of the user and service provider.
- FIG. 2B is a block diagram of an appointment server 250 and an appointment database 252 according to one embodiment.
- the appointment server 250 represents a more detailed embodiment of the appointment server 202 illustrated in FIG. 2A
- the appointment database 252 represents a more detailed embodiment of the appointment database 204 illustrated in FIG. 2A .
- the appointment server 250 includes a web server 254 that manages the network interaction with respect to the network 206 .
- the web server 254 communicates or uses the resources of a search manager 256 , a calendar/appointment manager 258 , and an email manager 260 .
- the search manager 256 allows the appointment server 250 to search a directory, such as a business directory, to locate businesses (i.e., service providers) of interest to a user.
- the calendar/appointment manager 258 provides the resources to provide users with calendars and to allow users to make appointments.
- the email manager 260 allows for the automatic distribution of electronic mail to provide various notifications.
- Each of the search manager 256 , the calendar/appointment manager 258 and the email manager 260 make use of the appointment database 252 in providing their services or resources.
- the appointment database 252 includes a calendar/appointment database 262 , a business directory database 264 , and a user information database 266 .
- the calendar/appointment database 262 stores calendar data and appointment data for use by the appointment server 250 . More particularly, the calendar/appointment manager 258 uses the data stored in the calendar/appointment database 262 when providing the users with calendars or appointment capabilities.
- the business directory database 264 stores a business directory that contains businesses that provides services to users. These businesses are also known as service providers.
- the search manager 256 of the appointment server 250 can operate to search through the business directory database 264 to identify businesses of interest to a user.
- the user information database 266 stores user information, such as account information, user preferences, user name, user address, user email, etc.
- the user information database 266 is used by the appointment server 250 to store information about users, including: user name, password, mailing address, email address, general appointment availability.
- the user information database 266 can also be used to improve user satisfaction by not requiring a user to repetitively enter information or provide various preferences.
- the email manager 260 of the appointment server 250 utilizes information in the user information database 266 , namely, the email address for users to receive email notifications.
- FIG. 2B illustrates the calendar/appointment database 262 , the business directory database 264 , and the user information database 266 as separate databases, they could also be combined into less (e.g., one) or more databases.
- the on-line appointment service processing 300 also registers 306 users for on-line calendars.
- the registration process can obtain contact information, user identifier (ID) and password, and calendar configuration information.
- the registration can also allow the user being registered to permit on-line appointments to be made with them. If the user permits on-line appointments to be made with them, then the registration process can also identify time periods of availability for appointments.
- the user ID and password provide secure access to the user's on-line calendar.
- FIG. 3B is a flow diagram of appointment processing 350 according to one embodiment.
- the appointment processing 350 beings with a decision 352 that determines whether an appointment availability request has been received. In other words, the appointment processing 350 does not effectively being until an appointment availability request 352 has been received.
- the consumer-side on-line appointment processing 400 initially accesses 402 an appointment server web page.
- the appointment server web page is provided by the appointment server, e.g., appointment server 202 , 250 .
- a login page is received and displayed 404 .
- a user name and password are then entered and submitted 406 .
- the user logs onto the appointment server by completing the login page with his/her user name and password.
- a user's calendar is received and displayed 408 .
- the user's calendar would be displayed on a display device associated with the consumer's computer.
- the other processing 414 is performed and then a decision 415 determines whether to quit the consumer-side on-line appointment processing 400 .
- the decision 415 determines that the consumer-side on-line appointment processing 400 should quit, then the consumer-side on-line appointment processing 400 is complete and ends.
- the decision 412 determines that the user has not requested other processing or when the decision 415 determines that the consumer-side on-line appointment processing 400 should not quit, then the consumer-side on-line appointment processing 400 returns to repeat the decision 410 and subsequent blocks.
- a decision 422 determines whether a response to the search request has been received. When the decision 422 determines that a response has not yet been received, the consumer-side on-line appointment processing 400 awaits such a response. Once the decision 422 determines that a response has been received, a list of matching service providers is displayed 424 . Then, the consumer-side on-line appointment processing 400 awaits the user's selection from the list of matching service providers. A decision 426 determines whether the selection has been made. When the decision 426 determines that the selection has not yet been made, the consumer-side on-line appointment processing 400 awaits such a selection.
- appointment types for the selected service provider are requested 428 .
- a decision 430 then awaits a response to the request for appointment types.
- the consumer-side on-line appointment processing 400 awaits such a response.
- the decision 430 determines that a response, namely, appointment types for the selected service provider are received, then the appointment types for the selected service provider are displayed 432 .
- a decision 434 determines whether one of the appointment types being displayed 432 has been selected. When the decision 434 determines that an appointment type has not been selected, the consumer-side on-line processing 400 awaits the selection of an appointment type. Once the decision 434 determines that an application type has been selected, appointment availability for the selected appointment type on a predetermined date is requested 436 . The consumer-side on-line appointment processing 400 then awaits a response to the request 436 for appointment availability.
- appointment availability information for the selected service provider is displayed 440 .
- the appointment availability information includes at least available time slots for appointments with the selected service provider.
- an available time slot is selected 442 for the appointment being processed.
- the user selects an available time slot from those being displayed 440 with the appointment availability information.
- an appointment with the service provider at the selected available time slot is requested 444 .
- appointment verification information is received and displayed 446 .
- the appointment server presents the appointment verification information to the user.
- a decision 448 determines whether the appointment has been verified.
- the user can either proceed with the making of the appointment if the appointment verification information is correct or repeat some or all of the making of the appointment if the appointment verification information is incorrect.
- the consumer-side on-line appointment processing 400 returns to repeat the operation 440 and subsequent operations so that the appointment being made can be altered.
- appointment verification is sent 450 .
- the consumer-side on-line appointment processing 400 is then complete and ends with the appointment having been made.
- user's calendars could be shared with a group of users or made public, in this embodiment, the user's calendar is likely private to the user because the user name and password are required for access to the user's calendar. Hence, users are not able to view or modify other's calendars or make appointments for others.
- the available time slots pertain to the service provider's calendar.
- the available time slots for potential appointments may be displayed to the requestor without showing the service provider's entire calendar.
- a user e.g., service provider
- a user may want to bias those users requesting appointment to certain time slots.
- the available time slots could be biased to within the morning office hours to encourage morning appointments.
- users would be biased towards requesting a morning appointment.
- different types of appointments could be provided with different available time slots through different biasing or different availability given the appointment types.
- FIGS. 5A-5C are flow diagrams of server-side on-line appointment processing 500 according to one embodiment.
- the server-side on-line appointment processing 500 is, for example, performed by the appointment server 202 illustrated in FIG. 2A or the appointment server 250 illustrated in FIG. 2B .
- the server-side on-line appointment processing 500 initially sends 502 a login page to a requesting user. Then, a decision 504 determines whether a login request has been received. When the decision 504 determines that a login request has not been received, the server-side on-line appointment processing 500 awaits such a login request. Once the decision 504 determines that a login request has been received, the user name and password associated with the login request are verified 506 . A decision 508 then determines whether the verification has been successful. When the decision 508 determines that the verification has not been successful (e.g., login denied), the server-side on-line appointment processing 500 returns to repeat the send operation 502 and subsequent operations to handle subsequent login requests.
- a decision 504 determines whether a login request has been received. When the decision 504 determines that a login request has not been received, the server-side on-line appointment processing 500 awaits such a login request. Once the decision 504 determines that a login request has been received, the user name and password associated with the login
- a user's calendar data is retrieved 510 .
- the user's calendar data can be retrieved from the appointment database 204 illustrated in FIG. 2A or the calendar/appointment database 262 of the appointment database 252 illustrated in FIG. 2B .
- a user's calendar is then produced 512 from the user's calendar data.
- the user's calendar can be produced 512 by suitably formatting the user's calendar data into a graphical user interface.
- the user's calendar can be produced as a markup language document (page) (e.g., HTML page).
- the user's calendar is sent 514 .
- the user's calendar can be sent to the user through the network 206 .
- a decision 516 determines whether a request to make an appointment has been received.
- the decision 516 causes the server-side on-line appointment processing 500 to await the reception of a request to make an appointment.
- the server-side on-line appointment processing 500 is primarily concerned with the making of appointments.
- a service provider search form is retrieved and sent 518 .
- the service provider search form can be used to assist a user in locating a particular service provider registered with the appointment database 204 or the business directory database 264 of the appointment database 252 .
- a decision 520 determines whether a search request has been received.
- a search request results when the user completes and submits the service provider search form.
- the decision 520 causes the server-side on-line appointment processing 500 to await the reception of a search request.
- the service providers that match the search information are retrieved 522 .
- the search can search through the business directory database 264 of the appointment database 252 to identify those service providers that match the provided search information.
- a list of matching service providers is produced 524 .
- the list of matching service providers is then sent 526 .
- a decision 528 determines whether a request for appointment type has been received.
- a request for appointment type results when the user selects one of the service providers from the list of matching service providers.
- a service provider can additionally or alternatively be chosen by use of an address book or from a preferred provider directory where a directory search is not needed.
- the server-side appointment processing awaits such a request.
- appointment types for the selected service provider are retrieved 530 .
- the appointment types can be retrieved from the appointment database. After the appointment types are retrieved 530 , the appointment types for the selected service provider are sent 530 .
- a decision 532 determines whether a request for appointment availability has been received.
- a request for appointment availability results when the user selects one of the appointment types available for the selected service provider.
- the server-side on-line appointment processing 500 awaits such a request.
- the selected service provider's calendar data for the predetermined date is retrieved 534 .
- the service provider's calendar data is, for example, retrieved 534 from the appointment database 204 or the calendar/appointment database 262 of the appointment database 252 .
- available time slots in the selected service provider's calendar data for the selected appointment type on the predetermined date are determined 536 .
- the selected appointment type can identify the duration of the appointment to be scheduled.
- the duration of the appointment to be scheduled can be indicated by the requestor.
- Appointment availability information is then formatted 538 for the selected service provider.
- the appointment availability information can, for example, include the available time slots for the selected service provider as well as the user's calendar. Such an arrangement of information allows a user to easily schedule an appointment with the available time slots of the service provider while having the user's calendar visible.
- the appointment availability information can be formatted as a markup language document (page) (e.g., HTML).
- the appointment availability information is then sent 540 .
- a decision 542 determines whether an appointment request has been received.
- an appointment request results when the user selects one of the available time slots provided with the appointment availability information.
- the server-side on-line appointment processing 500 awaits such a request.
- appointment verification information is retrieved 544 .
- the appointment verification information is used to enable the user to reconfirm the details of the appointment being requested. Then, the appointment verification information is sent 546 .
- a decision 548 determines whether a verification has been received.
- a pending appointment is stored 550 in the user's calendar data and the service provider's calendar data.
- the decision 548 determines that a verification has not been received, namely, that verification was denied
- the operation 550 is bypassed. The denial of verification can lead to cancellation of the appointment being scheduled or returning to earlier processing to allow the user to alter the appointment being requested.
- the server-side on-line appointment processing 500 is complete and ends.
- This information includes, for example, contact information, setup information, and appointment configuration information.
- FIGS. 5D and 5E describe registration processing in which such information can be obtained.
- FIG. 5D is a flow diagram of client-side new user processing 560 according to one embodiment.
- the client-side new user processing 560 is used to register new users with the on-line appointment system.
- the client-side new user processing 560 is, for example, performed by a network browser operating on a computer.
- the client-side new user processing 560 can operate on a consumer's computer, such as the consumer's computer 208 illustrated in FIG. 2A , or a service provider's computer, such as the service provider's computer 210 illustrated in FIG. 2A .
- An exemplary network browser is Internet Explorer from Microsoft Corporation.
- the client-side new user processing 560 initially receives and displays 562 a registration page.
- the registration page allows a new user to the system to provide information about themselves.
- the information provided typically includes contact information as well as a requested user name and password.
- the contact information can include: first name, last name, company name, address, city, state/province, country, zip/postal code, telephone number, and email address.
- the user interacts with the registration page being displayed to enter the contact information and the requested user name and password.
- the contact information and the requested user name and password are entered and submitted 564 . Once submitted, the client-side new user processing 560 awaits a response from the server.
- a decision 566 determines whether a response has been received. When the decision 566 determines that the response has not yet been received, the client-side new user processing 560 awaits such a response. Once the response has been received, a setup page is displayed 568 . Then, setup information is entered and submitted 570 . Here, the setup page can ask the user to provide setup information regarding the setup of their on-line calendar and appointment capabilities. The user provides this setup information by interacting with the setup page being displayed. In one implementation, the setup information can include: selecting a default view for a calendar, setting a default time range for the calendar, setting a time zone for the calendar, indicating whether email notifications for scheduled appointments are requested, and indicating whether others are able to schedule appointments with the user.
- the client-side new user processing 560 awaits a response from the server.
- a decision 572 determines whether a response has been received. The response from the server will differ depending upon whether the user has allowed others to schedule appointments with them.
- a decision 574 determines whether appointment support has been enabled. When the decision 574 determines that the appointment support has been enabled, an appointment configuration page is displayed 576 after the response from the server is received.
- appointment configuration information is entered and submitted 578 . The user provides the appointment configuration information by interacting with the appointment configuration page being displayed.
- the appointment configuration information is used to configure the operation of the appointment scheduling.
- the appointment configuration information can indicate days and times of availability and non-availability for appointments, types of appointments that can be made as well as their duration, and whether appointments should be confirmed automatically or not.
- one's availability for scheduling appointments during a week can be setup so that appointments can be scheduled on certain days (e.g., Monday-Friday), within certain time periods, and by further exclusion of certain time periods (e.g., lunch hour).
- the types of appointments can also be classified by industry or other categories.
- the decision 574 determines that appointment support is not enabled
- the response from the submission 560 of the setup information is that the processing of the client-side new user processing 560 ends.
- the client-side new user processing 560 subsequently follows the processing beginning at block 408 illustrated in FIG. 4A without the need to request appointment configuration information.
- FIG. 5E is a flow diagram of server-side new user processing 580 according to one embodiment.
- the server-side new user processing 580 interacts with the client-side new user processing 560 illustrated in FIG. 5D .
- the server-side new user processing 580 is, for example, performed by the appointment server 202 illustrated in FIG. 2A or the appointment server 250 illustrated in FIG. 2B .
- the server-side new user processing 580 initially sends 582 a registration page to the user's computer. Then, a decision 584 causes the appointment server to await a registration request from the user's computer. When the decision 584 determines that a registration request has not yet been received, the server-side new user processing 580 awaits such a request. Once the decision 584 determines that a registration request has been received, a user account is opened and contact information, user name and password are stored 586 .
- the user account can be opened or provided within the appointment database, such as the appointment database 204 illustrated in FIG. 2A or the appointment database 252 illustrated in FIG. 2B .
- the user account and the contact information, user name and password can be stored in the user information database 266 illustrated in FIG. 2B .
- a setup page is sent 588 .
- the setup page allows the user to enter setup information to specify, for example, how the user would like the default calendar setup and whether or not others are able to schedule appointments with them.
- a decision 590 determines whether a setup request has been received.
- the decision 590 determines whether the client-side new user processing 560 has submitted the setup information with a setup request.
- the server-side new user processing 580 awaits such a request.
- the setup information provided with the setup request is stored 592 .
- the setup information is stored in the appointment database, such as the appointment database 204 illustrated in FIG. 2A or the appointment database 252 illustrated in FIG. 2B .
- the setup information can be stored in the user information database 266 illustrated in FIG. 2B .
- a decision 594 determines whether appointment support has been enabled.
- the setup information informs the server whether the user desires to enable others to schedule appointments with them.
- the server-side new user processing 580 is complete and processing returns to block 510 in FIG. 5A so that the user's calendar can be obtained and displayed.
- an appointment configuration page is sent 596 .
- the appointment configuration page provided by the server to the client enables the user at the client-side to enter appointment configuration information so that appointments can be more intelligently scheduled.
- a decision 597 determines whether an appointment configuration request has been received.
- appointment configuration information provides with the appointment configuration request is stored 598 .
- the appointment configuration information can be stored in the appointment database 204 illustrated in FIG. 2A or the user information database 266 of the appointment database 252 illustrated in FIG. 2B .
- the server-side new user processing 580 is complete and the processing returns to block 510 illustrated in FIG. 5A .
- the client-side on-line appointment processing 400 and the server-side on-line appointment processing 500 can be modified to obtain additional appointment information from a user.
- some service providers desire to obtain additional information about the user.
- the dentist often wants to know if the user is a new patient or an existing patient.
- a patient normally has to fill out a questionnaire.
- no questionnaire is needed but confirmation of similar information could be performed.
- an auto repair business may want to obtain information on the owner and vehicle.
- FIGS. 6 and 7 describe appointment type processing in which such additional appointment information can be obtained according to one embodiment.
- FIG. 6 is a flow diagram of client-side appointment-type processing 600 according to one embodiment.
- the client-side appointment-type processing 600 is, for example, performed by the consumer's computer 208 illustrated in FIG. 2A .
- the client-side appointment-type processing 600 represents optional processing that can enhance the client-side on-line appointment processing 400 illustrated in FIGS. 4A and 4B .
- the client-side on-line appointment processing 600 can, in one embodiment, be performed following the decision 426 and prior to the request 428 illustrated in FIG. 4A .
- the client-side appointment-type processing 600 initially requests 602 an industry-type for the selected service provider.
- the selection of one of the service providers causes the request for the industry type.
- a decision 604 determines whether a response from the appointment server has been received.
- the response is a consumer type form that is provided to the consumer's computer from the appointment server.
- the client-side appointment-type processing 600 awaits such a response.
- the customer type form is displayed. For example, the customer type form would be displayed on a display screen associated with the consumer's computer. Then, a customer type is selected 608 .
- the customer type form thus enables the user to identify the type of customer they are (e.g., new or existing) to the appointment server. For example, the user of the consumer's computer can make a selection with respect to the customer type form being displayed on the display screen. For example, if the service provider were a dentist, the customer type form could provide options for the user to designate themselves as a new patient or an existing patient.
- an appropriate customer type information form is requested 610 . In other words, once the customer type has been selected, a request is sent to the appointment server requesting 610 the customer type information form that is associated with the selected customer type. Next, a decision 610 determines whether a response has been received.
- the response is the appropriate customer type information form that is provided by the appointment server.
- the client-side appointment type processing 600 awaits such a response.
- the appropriate customer type information form is displayed 614 .
- the appropriate customer type information form can be displayed on the display screen associated with consumer's computer.
- the customer type information form is completed and submitted 616 .
- the user of the consumer's computer would interact with the customer type information form being displayed to enter information and then once the customer type information form has been sufficiently completed would submit the form to the appointment server 202 .
- the client-side appointment-type processing 600 is complete and ends.
- FIG. 7 is a flow diagram of server-side appointment type processing 700 according to one embodiment.
- the server-side appointment type processing 700 is, for example, performed by the appointment server 202 illustrated in FIG. 2A or the appointment server 250 illustrated in FIG. 2B .
- the server-side appointment type processing 700 represents optional processing associated with the server-side on-line appointment processing 500 illustrated in FIGS. 5A-5C .
- the server-side appointment type processing 700 is optional processing can, in one embodiment, be performed following the decision 528 and prior to retrieving 530 illustrated in FIG. 5B .
- the server-side appointment type processing 700 begins with a decision 702 that determines whether an industry type request has been received. When the decision 702 determines that an industry type request has not yet been received, the server-side appointment type processing 700 awaits such a request. Once the decision 702 determines that an industry type request has been received, an industry type for the selected service provider is retrieved 704 . Then, available customer types for the industry types are retrieved 706 . As an example, the industry types and available customer types can be retrieved from the appointment database 204 illustrated in FIG. 2A or the appointment database 252 illustrated in FIG. 2B . Next, a customer type form is retrieved 708 . The customer type form can be predetermined or dynamically generated. The customer type form is then sent 710 . The customer type form is sent 710 , for example, to the consumer's computer where it is received and displayed as described in the client-side appointment type processing 600 illustrated in FIG. 6 .
- a decision 712 determines whether an information form request has been received.
- the server-side appointment type processing 700 awaits such a request.
- the appropriate customer type information form is retrieved 714 .
- the appropriate customer type information form is sent 716 .
- a decision 718 next determines whether a completed form has been received.
- the server-side appointment type processing 700 is awaiting the submission of the customer type information form from the client-side appointment type processing 600 .
- the server-side appointment type processing 700 awaits the reception of the completed form.
- the customer information provided in the completed form is saved 720 .
- the customer information is saved 720 in the appointment database 204 or the user information database 266 of the appointment database 252 .
- the server-side appointment type processing 700 is complete and ends.
- the service provider can be given an opportunity to review the requested appointments from various consumers and either accept or decline the requested appointments.
- FIGS. 8A and 8B are flow diagrams of service provider appointment review processing 800 according to one embodiment.
- the service provider appointment review processing is, for example, performed on the service provider's computer 210 .
- the service provider appointment review processing 800 would be performed in conjunction with a network browser operating on the service provider's computer 210 .
- the service provider appointment review processing 800 typically begins sometime after an email notification has been received by the service provider. More particularly, in one embodiment, the service provider is provided with an email notification when a consumer has requested an appointment with the service provider. As an example, such an email notification can inform the service provider of the name of the requestor and the date and time when the requestor desires an appointment. The service provider, upon receiving the email notification, can initiate access to the appointment server to review the requested appointment. Hence, although the invocation of the service provider appointment review processing 800 typically follows the reception of an email notification, in more general terms is activated whenever requested by the service provider. Thus, the service provider appointment review processing 800 begins when activated by a service provider.
- the appointment server webpage is accessed 804 .
- the appointment server webpage as noted above, is provided by the appointment server (e.g., appointment server 202 , 250 ).
- a login page is received and displayed 806 .
- the login page can be received from the appointment server and displayed on a display screen associated with the service provider's computer.
- the service provider enters and submits 808 a user name and password.
- the service provider appointment review processing 800 receives and displays 810 the service provider's calendar.
- the service provider's calendar is supplied by the appointment server.
- the service provider can perform various navigation acts or operations with respect to the service provider's calendar provided by the appointment server.
- the service provider desires to accept or decline a requested appointment. For example, to initiate acceptance or decline of a requested appointment, the service provider could select an icon or button being displayed. As an example, the icon or button can be displayed with the service provider's calendar.
- a decision 812 determines whether an appointment status selection has been made for a particular requested appointment. When the decision 812 determines that an appointment status selection has not been made, then a decision 814 determines whether the service provider appointment review processing 800 is done. When the decision 814 determines that the service provider appointment review processing 800 is done, the service provider appointment review processing 800 is complete and ends. On the other hand, when the decision 814 determines that the service provider appointment review processing 800 is not completed, then processing returns to repeat the navigation acts or operations and subsequent blocks including the decision 812 .
- an appointment status notification is sent 816 .
- the appointment status notification provides an indication to the appointment server as to whether the requested appointment is accepted or declined.
- An accepted appointment is also referred to as a confirmed appointment.
- the service provider appointment review processing 800 operates differently.
- a decision 818 determines whether the requested appointment has been accepted. When the decision 818 determines that the requested appointment has not been accepted (i.e., declined), the service provider appointment review processing 800 returns to repeat the operation 810 and subsequent operations. On the other hand, when the decision 818 determines that the requested appointment has been accepted, a decision 820 determines whether detailed appointment information has been received.
- the appointment server will forward or send to the service provider's computer detailed appointment information on the appointment that has been accepted.
- the service provider appointment review processing 800 awaits such information.
- the detailed appointment information is displayed 822 .
- the detailed appointment information can be displayed on a display screen associated with the service provider's computer 210 .
- a decision 824 determines whether the detailed appointment information has been verified.
- the service provider is provided with an opportunity to verify the particular information included in the detailed appointment information. Hence, the service provider reviews the detailed appointment information displayed on the display screen and then verifies its accuracy.
- the service provider appointment review processing 800 awaits such verification.
- the service provider could indicate that it desires to decline the requested appointment that was previously accepted, in which case the requested appointment would be declined and the processing could return to repeat the operation 810 and subsequent operations.
- detailed appointment confirmation is sent 824 .
- the detailed appointment confirmation is sent 824 to the appointment server to inform the appointment server that the particular requested appointment and its details have been confirmed (accepted).
- the service provider appointment review processing 800 returns to repeat the operation 810 and subsequent operations so that other requested appointments can be reviewed or other navigation acts performed.
- FIGS. 9A and 9B are flow diagrams of server-side appointment review processing 900 according to one embodiment.
- the server-side appointment review processing 900 is, for example, performed by the appointment server 202 illustrated in FIG. 2A or the appointment server 252 illustrated in FIG. 2B .
- the server-side appointment review processing 900 interacts with the service provider's computer 212 which performs the service provider appointment review processing 800 .
- the server-side appointment review processing 900 sends 902 a login page. Typically, the login page would be in response to a request by the service provider's to access the appointment server website.
- a decision 904 determines whether a login request has been received. When the decision 904 determines that a login request has not yet been received, the server-side appointment review processing 900 awaits such a request. Once the decision 904 determines that a login request has been received, the user name and password associated with the login request are verified 906 . A decision 908 then determines whether the user name and password have been correctly verified. When the decision 908 determines that the user name and password were not able to be verified, then access is denied and the processing returns to repeat the operation 902 .
- service provider's calendar data is retrieved 910 .
- the service provider's calendar data can be retrieved from the appointment database 204 illustrated in FIG. 2A or the calendar/appointment database 262 of the appointment database 252 illustrated in FIG. 2B .
- a service provider's calendar is produced 912 .
- the service provider's calendar is produced 912 in accordance with the service provider's calendar data that has been retrieved 910 .
- the service provider's calendar is sent 914 .
- the server-side appointment review processing 900 can perform various actions or operations such as altering the calendar view being provided or sent to different days, months or weeks.
- a decision 916 determines whether an appointment has been accepted (or rejected).
- an appointment status notification is sent to the appointment server by the service provider following acceptance or cancellation of a requested appointment.
- a decision 918 determines whether the server-side appointment review processing 900 is done.
- the decision 918 determines that the server-side appointment review processing is done, then the server-side appointment review processing 900 is complete and ends.
- the decision 918 determines that the server-side appointment review processing 900 is not done, then the processing returns to the decision 916 to await another appointment status notification for another requested appointment.
- the requested appointments are reviewed minimal information about the appointments, for example, date, time and requestor's name.
- detailed appointment information is retrieved 920 .
- the detailed appointment information is then sent 922 .
- the detailed appointment information is retrieved 920 from the appointment database 204 , 252 and sent 922 to the service provider.
- the detailed appointment information provides more information on the appointments that were accepted.
- the detailed information can include date, time, type of appointment, a message from requestor, and contact information.
- a decision 924 determines whether the detailed appointment information has been confirmed.
- the service provider can confirm the detailed appointment information.
- the server-side appointment review processing 900 awaits such a confirmation.
- the status of the appointment is updated 926 to “confirmed” in the service provider's calendar data at the appointment database.
- the status of the appointment is updated 928 to “confirmed” in the user's calendar data at the appointment database.
- an appointment confirmation email is sent 930 to the user.
- the appointment confirmation email serves to notify the consumer that his/her previously requested appointment has been confirmed (accepted). Of course, in other embodiments, the appointment confirmation email need not be sent to the user.
- the server-side appointment review processing 900 returns to repeat the operation 910 and subsequent operations so that additional requested appointments can be reviewed.
- appointment review was discussed above as being performed by a service provider, any user (e.g., consumer or service provider) permitting appointments to be made with them can likewise review appointments. Also, the appointment review could operate to provide the detailed appointment information before the service provider is asked to initially confirm or decline a requested appointment.
- an appointment server can operate to notify a selected service provider via facsimile or electronic mail that a user (customer) desires to make an appointment on a given date at a given period of time.
- the service provider can be considered known but unregistered for on-line appointment services with the appointment server.
- the appointment server can partially manage the appointment request.
- the consumer will access the appointment server in a general manner and make an appointment by filling out an appointment form and submitting the form.
- the appointment server will receive the appointment form that has been submitted by the consumer and prepare a facsimile or electronic mail notification to the selected service provider indicating that the consumer has requested to make a particular appointment with the service provider.
- the service provider Upon receiving the facsimile or electronic mail notification, the service provider can contact the consumer through electronic mail, telephone or mail.
- FIGS. 10 and 11 explain this restricted type of appointment processing according to one embodiment.
- FIG. 10 is a flow diagram of client-side restricted appointment request processing 1000 according to one embodiment.
- the client-side restricted appointment request processing 100 is, for example, performed by the consumer's computer 208 illustrated in FIG. 2A .
- the client-side restricted appointment request processing 1000 initially accesses 1002 an appointment server website. Then, navigation and/or search operations are performed 1004 .
- a user can interact with the appointment server website to review a directory of service providers, obtain listings of particular types of service providers, review address book entries, etc. so as to eventually select a particular service provider for which an appointment is to be requested.
- the consumer will cause the client-side restricted appointment request processing 1000 to request 1006 to make an appointment with the particular service provider.
- a decision 1008 determines whether an appointment request form has been received.
- the appointment request form will be received from the appointment server in response to the request 1006 .
- the client-side restricted appointment request processing 1000 awaits the reception of the appointment request form.
- the appointment request form is displayed 1010 .
- the appointment request form is displayed on the display screen of the consumer's computer.
- the appointment request form is completed 1012 .
- the user of the consumer's computer fills in information requested by the appointment request form to complete the form.
- the information requested includes appointment date, duration and perhaps a message.
- a decision 1014 determines whether the appointment request form is to be submitted.
- the server-side restricted appointment request processing 1100 initially sends 1102 a webpage with a directory of service providers.
- the webpage is part of the appointment server website and is provided to the consumer's computer upon access to the appointment server website.
- a decision 1104 determines whether an appointment request has been received.
- the server-side restricted appointment request processing 1100 awaits such a request.
- an appointment request form is prepared and sent 1106 .
- the appointment request form can be generic or customized for different industry types.
- a decision 1108 determines whether a completed appointment request form has been submitted.
- the server side restricted appointment request processing 1100 awaits the reception of a completed appointment request form.
- a facsimile number or email address for the selected service provider is retrieved 1110 .
- the facsimile number or email address for the selected service provider are available from the appointment database (e.g., the business directory database 264 ).
- an appointment request notification is sent 1112 to the selected service provider via facsimile or electronic mail.
- the appointment request notification can, for example, resemble the completed appointment request form.
- service providers can receive a limited number of appointment requests from consumers even while the service providers are unregistered with the appointment server, yet still be motivated to formally register with the appointment server.
- the decision 1116 determines that the count is not zero (0), as well as following the operation 1118 , the server-side restricted appointment request processing 1100 is complete and ends.
- the appointment system can also consider multiple or alternative dates. By considering multiple or alternative dates, the users have more options in which to schedule an appointment. Also, the user requesting an appointment could, when requesting an appointment, provide alternative choices of times (i.e., time slots). For example, beside a first choice, the user could provide a second choice and a third choice. The service provider can then review the appointment request and have some scheduling options for the appointment.
- the appointment system also permits the service provider to request an appointment with the consumer and then allow the consumer to confirm the appointment.
- consumer and service providers are users, and user can both request and confirm appointments.
- the described techniques are also applicable to making appointment from one user to many users. For example, one user may want to arrange a meeting with two or more other users an could do so be requesting an appointment in accordance with the appointment availability of the two or more other users. Multiple users could also be grouped together to share a calendar and appointments. For example, a group of individuals could be associated with an on-line calendar provided by the appointment server, and then the group is effectively a user.
- the above discussion described the scheduling of appointments as initially requested and then confirmed.
- the requested appointment was then initially provided as a pending appointment upon being requested, and then either canceled or confirmed by the service provider.
- the requested appointment could initially be deemed set and then thereafter cancelled by the service provider if not desired. In such an embodiment, the operation would be the same but the terminology slightly different.
- a service provider's computer can include a synchronization application.
- the synchronization application is a separate application program that operates on the service provider's computer to synchronize a local appointment management system with the appointment database provided at the appointment server.
- FIG. 12 is a block diagram of a service provider's computer 1200 according to one embodiment.
- the service provider's computer 1200 includes an office management program 1202 that is typically provided in a service provider's establishment.
- the office management program 1202 is typically an integrated software package that includes functions or modules such as calendar and email.
- the office management program 1202 may also include time and billing modules, management modules, etc.
- FIG. 13 is a flow diagram of synchronization application processing 1300 according to one embodiment.
- the synchronization application processing 1300 is, for example, performed by the synchronization application 1208 illustrated in FIG. 12 .
- the synchronization application processing 1300 can be scheduled to periodically start such that the synchronization regularly occurs.
- the synchronization application requests 1310 pending appointments.
- a decision 1312 determines whether the pending appointments that have been requested have been received.
- the application synchronization processing 1300 waits to receive the pending appointments. Once the pending appointments have been received, the synchronization application attempts 1314 to fit the pending appointments into the database 1204 of the office management program 1202 . Then, the synchronization application processing 1300 determines 1316 indications of confirmation or cancellation for each of the pending appointments.
- the service provider can manually interact with the synchronization application or the synchronization application can automatically determine whether the pending appointments fit.
- the synchronization application can automatically cancel the pending appointment.
- the synchronization application can automatically accept (confirm) the pending appointment.
- the indications are then sent 1318 .
- the synchronization application logs out 1320 from the appointment server.
- the synchronization application then disconnects 1322 from the appointment server. Following the operation 1322 , as well as following the operation 1308 , the appointment synchronization processing 1300 is complete and ends.
- FIG. 14 is a flow diagram of server-side appointment synchronization processing 1400 according to one embodiment.
- the server-side appointment synchronization processing 1400 begins when a login request from the synchronization application has been received. More particularly, a decision 1402 determines whether a login request has been received. When the decision 1402 determines that a login request has not yet been received, the server-side appointment synchronization processing 1400 awaits such a request. Once the decision 1402 determines that a login request has been received, the user name and password associated with the login request are verified 1404 . A decision 1406 then determines whether the user name and password have been successfully verified. When the decision 1406 determines that the user name and password have not been successfully verified, an error message is sent 1408 .
- a decision 1412 determines whether a pending appointment request has been received.
- the server-side appointment synchronization processing 400 awaits such a request.
- pending appointments are sent 1414 to the synchronization application.
- the pending appointments are first located within the appointment database and those located are then retrieved and sent 1414 to the synchronization application.
- a decision 1416 determines whether confirmation/cancellation indications have been received from the synchronization application.
- the server-side appointment synchronization processing 1400 awaits such indications.
- appointment records are updated 1418 at the appointment database. For example, if a pending appointment has been confirmed (accepted), then the appointment record for the particular appointment is updated to indicate its status as being confirmed. On the other hand, if a pending appointment has been cancelled, the appointment record for the cancelled appointment is removed from the appointment database. Then, an email notification can be sent 1420 to those consumers whose appointments have been cancelled.
- the email notification can inform the consumers that their requested appointments have been cancelled and they should contact the service provider for additional information.
- email notifications could be sent to those consumers whose appointments have been accepted.
- the users' calendars would be updated to indicate that the appointment is confirmation or that the appointment has been cancelled. Thereafter, the server-side appointment synchronization processing 1400 is complete and ends.
- Notifications can advise the service provider that a consumer has requested an appointment. Notifications can inform the consumer that the service provider has accepted (confirmed) or refused the requested appointment. Notifications can also inform the consumer or service provider that a previously accepted appointment has been canceled.
- the email manager 260 of the appointment server 256 can initiate these notifications when appropriate.
- the business method provides free on-line calendars and on-line appointment setting capabilities to consumers and provides fee-based calendars and on-line appointment accepting capabilities to service providers. For example, service providers could pay a monthly fee.
- the business method provides email notifications to service providers when appointments are requested.
- the business method may provide email notifications to consumers when their requested appointments are confirmed.
- the business method may also provide consumers with reminders for their upcoming appointments.
- the calendars of the consumers and service providers can also store information on other meetings or events besides appointments. Events that are scheduled can also make use of notifications.
- the calendars of the consumers and service providers can also provide service providers or users with on-line address books.
- Another aspect pertains to a graphical user interface for scheduling appointments.
- the graphical user interface simultaneously displays on a display screen (i) a first user's daily calendar indicating the user's availability, and (ii) available time slots of a second user with which the appointment is being scheduled.
- FIGS. 15-39 are representative screen shots of an on-line appointment system, namely a graphical user interface therefor, according to one or more embodiment.
- the screen shots are illustrative of the operation but are not to be deemed restrictive in scope.
- FIG. 15 is a registration screen in which a new user to the appointment system can register on-line.
- the registration screen depicts a registration page 1500 displayed by a network browser on a user's computer.
- the network browser is Microsoft Internet Explorer.
- the registration page 1500 pertains to the registration page received and displayed 562 with respect to the client-side new user processing 560 illustrated in FIG. 5D .
- the registration page 1500 includes a first section 1502 that requests contact information from a user, and a second section 1504 that requests a user name and password from the user.
- FIG. 16 is a setup screen in which a user can configure how he/she wishes his/her calendar to appear when he/she accesses the appointment website.
- the setup screen depicts a setup page 1600 displayed by a network browser on a user's computer.
- the setup page 1600 pertains to the setup page displayed 568 with respect to the client-side new user processing 560 illustrated in FIG. 5D .
- the setup page 1600 allows the user to: set a default view of calendar to daily or monthly view; set default time range for calendar; set time zone; request that email notifications be sent to the user for scheduled appointments; and set whether others are permitted to schedule appointments with them or not.
- FIG. 17 is an appointment availability screen in which the user provides additional information concerning their availability for scheduling appointments, types of appointments, etc., assuming that the user is permitting appointments.
- the appointment availability screen depicts an appointment configuration page 1700 displayed by a network browser on a user's computer.
- the appointment configuration page 1700 pertains to the appointment configuration page displayed 576 with respect to the client-side new user processing 560 illustrated in FIG. 5D .
- the appointment configuration page 1700 allows the user to specify: days and times of availability or unavailability for appointments, types of appointments that can be made as well as their duration, and whether appointments should be confirmed automatically or not. If an appointment is automatically confirmed, the user with which an appointment has been made does not get the opportunity to decline the requested appointment but can nevertheless cancel the automatically confirmed appointment.
- the appointment configuration page 1700 allows the user to specify: whether appointments are to be automatically confirmed; availability for scheduling appointment during a normal week (including days and hours during the week of availability); other times during the week of availability; any times during the week of unavailability (e.g., lunch hour); type of appointment other can make; user category; and whether default information form (e.g., customer type information form) for the service type is to be used.
- availability for scheduling appointments during a week can be setup so that appointments can be scheduled on certain days (e.g., Monday-Friday), within certain time periods, and by further exclusion of certain time periods (e.g., lunch hour).
- the types of appointments can also be classified by industry or other categories.
- FIG. 18 is a user's calendar screen in which a user's calendar page 1800 is depicted.
- the user's calendar page 1800 includes a user's calendar 1802 in a daily view format with the default time period extending from 8:00 a.m. to 8:00 p.m.
- an availability indication 1803 indicates that the user is open to receiving appointment from 9:00 a.m. to 5:00 p.m.
- the user's calendar page 1800 also includes an today's date indicator 1804 , a month-to-month navigation device 1806 , a selected month's condensed calendar 1808 allowing navigation to any day of the selected month, a specific date navigation device 1810 , a daily view request device 1812 and a monthly view request device 1814 for the user's calendar, day-to-day navigation devices 1816 and 1818 , a change appointment availability device 1830 , and a delete device 1822 .
- the user's calendar page 1800 also include request tabs 1824 - 1838 .
- a home tab 1824 request that the home page be displayed.
- An account information tab 1826 requests an account information page so that account information can be reviewed or changed.
- a preferences tab 1828 requests a setup page and/or appointment configuration page.
- a calendar tab 1830 requests the user's calendar page.
- An add event tab 1832 requests an add event page so that a user can add an event to their calendar.
- a make appointment tab 1834 requests a make an appointment page.
- An address book tab 1836 requests an address book page.
- a logout tab 1838 requests that the user be log out from the appointment server.
- FIG. 22 is an event details screen in which event details pertaining to the event scheduled with respect to FIG. 20 are visible on the display screen.
- Event details summarize the description, date, time, duration and details for the event.
- the event details can be requested by the user by selecting the event entry in the user's calendar which operates like a hyperlink. In this example, the event entry is “Lunch with John Smith”.
- FIG. 23 depicts a screen containing a search form 2300 that a user can utilize in searching for a service provider with whom the user is interested in making an appointment.
- the search form allows searching of a business directory database by name of a person, company name or location, service category, or any combination thereof.
- the search form pertains to the service provider search form displayed 418 with respect to the client-side on-line appointment processing 400 illustrated in FIG. 4 .
- FIG. 24 depicts a screen contain a search results page 2400 which contain the search results of a search carried out using the search form 2300 of FIG. 23 .
- the search results page 2400 lists those service provides that match the search criteria. In this example, there is one matching service provider, namely, Tommy Tam of Accela Corporation.
- the search results page 2400 pertains to the list of matching service providers displayed 424 with respect to the client-side on-line appointment processing 400 illustrated in FIG. 4 .
- FIG. 25 is a screen depicting an available appointment types page 2500 for the selected service provider (i.e., Tommy Tam).
- the available appointment types page 2500 is displayed after one of the matching service providers is selected (e.g., from the search results page 2400 ).
- the available appointment types page 2500 for example, pertains to the list of appointment types displayed 432 with respect to the client-side on-line appointment processing 400 illustrated in FIG. 4 .
- FIG. 26 depicts an appointment time slot selection screen 2600 .
- the appointment time slot selection screen 2600 allows a user to select an appointment time slot.
- the appointment time slot selection screen 2600 includes a user's calendar, namely in a daily view for the day of the appointment to be scheduled, and a listing of available time slots.
- the user's calendar is provided in a first region 2602 and the listing of available time slots is provided in a second region 2604 .
- the type of meeting requested was a “Half Hour Meeting” so the available time slots are provided in increments of thirty minutes.
- a condensed monthly calendar is also provided in a third region 2606 to allow easy user navigation to different dates or months.
- the appointment time slot selection screen 2600 can also include an appointment date selector 2608 (i.e., a specific date navigation device) that displays the determined date for the appointment being scheduled and also allow the user to change the determined date.
- the appointment time slot selection screen 2600 can also include an appointment type indicator 2610 that indicates the appointment type being scheduled as well allow the user to change do different appointment types.
- the appointment time slot selection screen 2600 also includes an today's date indicator 2612 , a month-to-month navigation device 2614 , day-to-day navigation devices 2618 and 2620 .
- the appointment time slot selection screen 2600 can further include request tabs, such as request tabs 1824 - 1838 shown in FIG. 18 .
- FIG. 28 is a user's calendar screen in which a user's calendar page 2800 is depicted.
- the user's calendar page 2800 includes a screen shot of the user's calendar after the appointment has been scheduled, and thus represents an updated version of the user's calendar screen as compared to the user's calendar screen shown in FIG. 18 .
- the appointment is scheduled from the user's perspective. More specifically, the appointment has been requested and is thus “pending” until “confirmed” (accepted) by the selected service provider.
- the appointment is illustrated within the user's calendar at the appropriate date and time (and duration) and with a short description of the appointment.
- the appointment is shown as having a status of “pending”.
- FIGS. 31-39 are screen depictions associated with the scheduling and confirmation of a requested appointment from the respective of two registered users.
- the registered users of the appointments are both individuals.
- the user's calendar screen is depicted with the user's calendar page 3300 as shown in FIG. 33 .
- the user's calendar page 3300 is similar to the user's calendar page 2800 illustrated in FIG. 28 .
- the entry in the user's calendar displayed with the user's calendar page 3200 includes a link 3202 (e.g., a hyperlink) to details regarding the appointment.
- the appointment details are displayed such as presented in an appointment detail screen 3400 illustrated in FIG. 34 .
- the second user's calendar is depicted such as shown in a user's calendar page 3500 of a user's calendar screen illustrated in FIG. 35 .
- the previously scheduled appointment appears as a pending appointment.
- This entry in the user's calendar also includes a link 3502 (e.g. a hyperlink) to details regarding the appointment.
- an appointment details screen 3600 can be presented to the user such as illustrated in FIG. 36 .
- the appointment detail screen 3600 represents the screen presented to the second user, while the appointment detail screen 3400 illustrated in FIG. 34 represents the appointment details presented to the first user.
- FIG. 38 is a user's calendar screen in which a user's calendar page 3800 is depicted.
- the user's calendar page 3800 represents an updated version of the user's calendar page 3500 illustrated in FIG. 35 .
- the appointment that was scheduled is now shown as being confirmed and the confirmation indicator 3504 is removed.
- the user's calendar of the first user is also updated to indicate that the appointment is now confirmed.
- FIG. 39 is a user's calendar screen in which a user's calendar page 3900 is depicted.
- the user's calendar page 3900 represents the user's calendar (i.e., the first user's calendar) after the appointment has been confirmed by the second user. Note that in comparison with the user's calendar page 3300 illustrated in FIG. 33 , the status of the appointment has been changed from “pending” to “confirmed”.
- the user could specify a period during the day in which they desire an appointment, and then the available days for those times would be displayed for user selection.
- the on-line appointment system is largely described as displaying time slots available on a given day (e.g., FIG. 26 )
- the system could equally display available days in which certain time slots are available for appointments.
- the system can serve to identify available slots to the user desirous of requesting an appointment. These slots can, for example, represent available time periods or available days.
- the software can be embodied as computer readable code on a computer readable medium.
- the computer readable medium is any data storage device that can store data which can be thereafter be read by a computer system. Examples of the computer readable medium include read-only memory, random-access memory, CD-ROMs, magnetic tape, optical data storage devices.
- the computer readable medium can also be distributed over a network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
- appointment server is implemented on a computer operating Windows NT operating system and provides a web server.
- the web server stores Active Server Pages (ASP) that perform the interactions with the database(s) and generate the pages to be displayed to requestors.
- ASP Active Server Pages
Abstract
Improved approaches for providing on-line appointments over a network are disclosed. The network is, for example, a global computer network such as the Internet. According to one aspect, users are able to schedule appointments over the network by on-line means. The users are typically individuals or service providers. Service providers are often those businesses that offer appointments to schedule their services.
Description
- This application is a continuation of and claims the benefit under 35 U.S.C. §120 to U.S. patent application Ser. No. 09/550,706, filed Apr. 17, 2000, which claims the benefit under 35 U.S.C. §119 (e) of U.S. Provisional Application Ser. No. 60/149,346, filed Sep. 15, 1999 and U.S. Provisional Application Ser. No. 60/145,201, filed Aug. 18, 1999, the disclosures of which are incorporated by reference herein in their entirety.
- This application is also related to the following applications, filed concurrently on Apr. 17, 2000 with the parent application and incorporated herein by reference in their entirety: (1) U.S. patent application Ser. No. 09/551,825, entitled “ON-LINE APPOINTMENT SYSTEM WITH ELECTRONIC NOTIFICATIONS,” now U.S. Pat. No. 7,188,073; (2) U.S. patent application Ser. No. 09/550,585, entitled “METHOD AND APPARATUS FOR MAKING ON-LINE APPOINTMENTS USING PREDETERMINED APPOINTMENT TYPES,” and (3) U.S. patent application Ser. No. 09/551,179, entitled “GRAPHICAL USER INTERFACE FOR ON-LINE APPOINTMENT SYSTEM.”
- A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
- The present description relates to calendars and appointments and, more particularly, on-line calendars and appointments.
- For many years, individuals and businesses have maintained printed calendars to schedule their time and to remember when events have been scheduled. Typically, individuals or business representatives would write on the printed calendars when scheduling events. More sophisticated scheduling and time management printed products are also used to maintain schedules and guide time management. Besides printed calendars, electronic calendars are commonplace. Electronic calendars are provided by software executing on various computing devices, such as personal computers (e.g., Microsoft Outlook) or handheld computers (e.g., PalmPilot). These types of devices, whether paper or electronic based, are generally referred to as personal information managers (PIMs).
- In addition, when making appointments, individuals and business representatives often view their respective calendars and converse in person or via telephone as to when their schedules permit the scheduling of an appointment. This requires that parties to the appointment converse in selecting a date and time for an appointment. As a consequence, it is often difficult and frustrating when trying to schedule appointments.
- More recently, web-based calendars have been created and made available to users over the Internet. These calendars allow users with Internet access to maintain their own calendar on-line.
FIG. 1 is a screen shot of a web-based calendar offered by Yahoo Inc. at www.calendar.yahoo.com. A user can access their web-based calendar by use of a network browser (e.g., HTML browser) coupled to the Internet. These web-based calendars allow users to maintain their schedule of events on the Internet. Some of the advantages of web-based calendars are that they are accessible worldwide and can be shared amongst users. However, there are several disadvantages to existing web-based calendars. One disadvantage is that appointment capabilities are not provided. More particularly, although web-based calendars are provided there has conventionally not been any means to efficiently schedule on-line appointments with others. While a user of a web-based calendar could interact with a network browser to schedule an event in his/her own web-based calendar, there is no automated on-line mechanism to schedule appointments. - There is a need for improved on-line calendars and appointment making capabilities.
- Broadly speaking, the disclosure relates to techniques for providing on-line appointments such that users can schedule appointments with other users over a network. The network is, for example, a global computer network such as the Internet. In other words, users are able to schedule appointments over the network by on-line means. The users are typically individuals or service providers. Service providers are normally those businesses that offer appointments to schedule their services. Numerous service providers utilize appointments. Examples of service providers include beauty shops, auto repair shops, government offices, professionals (including lawyers, dentists, doctors, accountants, etc.), and many more.
- The techniques for providing on-line appointments can be implemented in numerous ways, including as a computer system, an apparatus, a method or a computer readable medium. Several embodiments are discussed below.
- As a method for providing an on-line appointment between a user and a service provider over a network, one embodiment includes: receiving a request for appointment availability of the service provider during a time period; determining available appointment times within the time period for the service provider; transmitting the available appointment times to the user; receiving a selected appointment time from the available appointment times; and setting the on-line appointment between the user and the service provider at the selected appointment time.
- As a method for providing an on-line appointment over a network, one embodiment includes: transmitting a user's electronic calendar to a user; transmitting a list of available service providers to the user; receiving a request for appointment availability of a selected one of the available service providers; determining available time slots for the selected one of the available service providers; transmitting the available time slots to the user; receiving a time slot selection from the available time slots to establish an appointment with the selected one of the available service providers; updating the user's electronic calendar with the appointment; and updating an electronic calendar for the selected one of the available service providers with the appointment.
- As computer readable medium including computer code for providing an on-line appointment between a user and a service provider over a network, one embodiment includes: computer program code for receiving a request for appointment availability of the service provider; computer program code for determining available appointment slots for the service provider; computer program code for transmitting the available appointment slots to the user; computer program code for receiving a selected appointment slot from the available appointment slots; and computer program code for setting the on-line appointment between the user and the service provider at the selected appointment slot.
- As a computer readable medium including computer code for providing an on-line appointment over a network, one embodiment includes: computer program code for transmitting a user's electronic calendar to a user; computer program code for transmitting a list of available service providers to the user; computer program code for receiving a request for appointment availability of a selected one of the available service providers; computer program code for determining available time slots for the selected one of the available service providers; computer program code for transmitting the available time slots to the user; computer program code for receiving a time slot selection from the available time slots to establish an appointment with the selected one of the available service providers; computer program code for updating the user's electronic calendar with the appointment; and computer program code for updating an electronic calendar for the selected one of the available service providers with the appointment.
- As a method for doing business over a global computer network, one embodiment includes: registering service providers over the global computer network to identify at least offered services, appointment hours, contact information for the registered service providers; providing an on-line calendar for each of the registered service providers; registering individuals over the global computer network; providing an on-line calendar for each of the registered individuals; and setting of appointments with certain of the registered service providers when the appointment have been requested by any of the registered individuals, and for each appointment being set, the setting at least places appointment indications on the on-line calendars of the associated one of the registered service providers and the associated one of the individuals.
- As an on-line appointment system that supports a large number of users in making appointments over the Internet, one embodiment includes an appointment server coupled to the network, and an appointment database coupled to the appointment server. The appointment server and the appointment database together provide storage and access for calendars of the users and provide assistance to users to request appointments and thereafter permit confirmation the appointments.
- As a method for making on-line appointments over a computer network, one embodiment includes: registering as a user of an on-line appointment system, the registering providing a user name, contact information, and appointment availability information for the user, the appointment availability information indicating days and times during which the user is generally available to receive appointments; maintaining on-line calendars for the registered users, the on-line calendars including scheduled appointments or events for the respective registered user; and scheduling appointments between users. The scheduling includes at least receiving an appointment request from a first registered user requesting an appointment with a second registered user, and selecting an appointment date and time for the appointment in accordance with the appointment availability information for the second registered user and non-conflicting with any other previously scheduled appointments or events in the on-line calendar of the second registered user.
- As a computer implemented method for providing on-line appointment services over a global computer network, one embodiment includes: registering service providers for on-line appointments over the global computer network, the registering providing appointment availability information for the registered service providers; and scheduling on-line appointments between users and the registered service providers over the global computer network based on the availability information.
- Different embodiments or implementations of techniques for providing on-line appointments may have one or more of the following advantages. One advantage is that appointments can be efficiently established on-line at any time day or night. Appointments can also be established without the need to waiting for personal assistance to schedule an appointment with a service provider. Another advantage is that user can manage and schedule appointments using a website. Still another advantage is that customers can use a central website to make appointments with various service providers. Yet another advantage is that synchronization of calendars or appointments between those maintained by the central website and those on local computers.
- Other aspects and advantages of the techniques for providing on-line appointments will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example various embodiments.
- The present disclosure will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like structural elements, and in which:
-
FIG. 1 is a screen shot of a web-based calendar offered by Yahoo Inc.; -
FIG. 2A is a block diagram of an on-line appointment management system according to one embodiment; -
FIG. 2B is a block diagram of an appointment server and an appointment database according to one embodiment; -
FIG. 3A is a flow diagram of an on-line appointment service processing according to one embodiment; -
FIG. 3B is a flow diagram of appointment processing according to one embodiment -
FIGS. 4A and 4B are flow diagrams of consumer-side on-line appointment processing according to one embodiment; -
FIGS. 5A-5C are flow diagrams of server-side on-line appointment processing according to one embodiment; -
FIG. 5D is a flow diagram of client-side new user processing according to one embodiment; -
FIG. 5E is a flow diagram of server-side new user processing according to one embodiment; -
FIG. 6 is a flow diagram of client-side appointment-type processing according to one embodiment; -
FIG. 7 is a flow diagram of server-side appointment type processing according to one embodiment; -
FIGS. 8A and 8B are flow diagrams of service provider appointment review processing according to one embodiment; -
FIGS. 9A and 9B are flow diagrams of server-side appointment review processing according to one embodiment; -
FIG. 10 is a flow diagram of client-side restricted appointment request processing according to one embodiment; -
FIG. 11 is a flow diagram of a server-side restricted appointment request processing according to one embodiment; -
FIG. 12 is a block diagram of a service provider's computer according to one embodiment. -
FIG. 13 is a flow diagram of synchronization application processing according to one embodiment; -
FIG. 14 is a flow diagram of server-side appointment synchronization processing according to one embodiment; -
FIG. 15 is a registration screen in which a new user to the appointment system can register on-line; -
FIG. 16 is a setup screen in which a user can configure how he/she wishes his/her calendar to appear when he/she accesses the appointment website; -
FIG. 17 is an appointment availability screen in which the user provides additional information concerning their availability for scheduling appointments, types of appointments, etc., assuming that the user is permitting appointments; -
FIG. 18 is a user's calendar screen in which a user's calendar page is depicted; -
FIG. 19 is an add event screen which an add event page is displayed; -
FIG. 20 is an exemplary add event screen in which a new event is being requested for addition to the user's calendar via an add event page; -
FIG. 21 is an exemplary user's calendar screen in which an updated user's calendar page is depicted; -
FIG. 22 is an event details screen in which event details pertaining to the event scheduled with respect toFIG. 20 are visible on the display screen; -
FIG. 23 depicts a screen containing a search form that a user can utilize in searching for a service provider with whom the user is interested in making an appointment; -
FIG. 24 depicts a screen contain a search results page which contain the search results of a search carried out using the search form ofFIG. 23 ; -
FIG. 25 is a screen depicting an available appointment types page for the selected service provider; -
FIG. 26 depicts an appointment time slot selection screen; -
FIG. 27 depicts an appointment details screen; -
FIG. 28 is a user's calendar screen in which a user's calendar page is depicted; -
FIG. 29 illustrates the user's calendar screen ofFIG. 28 after the selected service provider has confirmed the requested appointment; -
FIG. 30 depicts an address book screen that provides an address book for the user; and -
FIGS. 31-39 are screen depictions associated with the scheduling and confirmation of a requested appointment from the respective of two registered users. - The following discussion relates to techniques for providing on-line appointments such that users can schedule appointments with other users over a network. The network is, for example, a global computer network such as the Internet. In other words, users are able to schedule appointments over the network by on-line means. The users are typically individuals or service providers. Service providers are normally those businesses that offer appointments to schedule their services. Numerous service providers utilize appointments. Examples of service providers include beauty shops, auto repair shops, government offices, professionals (including lawyers, dentists, doctors, accountants, etc.), and many more.
-
FIG. 2A is a block diagram of an on-lineappointment management system 200 according to one embodiment. The on-lineappointment management system 200 facilitates the making of appointments between users (e.g., consumers) and service providers. The on-lineappointment management system 200 includes anappointment server 202 coupled to anappointment database 204. Theappointment server 202 is also coupled to anetwork 206. Thenetwork 206 is, for example, a global computer network (such as the Internet) or other network (such as a local area network, a wide area network or an intranet). Thenetwork 206 can be implemented with wired technologies, wireless technologies or a combination of wired and wireless technologies. The on-lineappointment management system 200 also includes a consumer'scomputer 208 that couples to thenetwork 206, and a service provider'scomputer 210 that couples to thenetwork 206. The computers used by consumers or service providers can take many forms and sizes, including desktop personal computers, notebook computers, personal digital assistants, portable computing devices, palm computers, etc. - The on-line
appointment management system 200 allows users (e.g., consumers) to request appointments with other users (e.g., service providers), and also allows users (e.g., service providers) to accept or decline the requested appointments. For example, in one implementation, a user of the consumer'scomputer 208 can access theappointment server 202 through thenetwork 206 to request an appointment with a given service provider at a particular date and time. Thereafter, the service provider can be informed of the requested appointment and then either confirm or reject the appointment. - In another implementation, the
appointment server 202 also provides calendars for the users (consumers and service providers). The calendars allow the users to maintain their schedules on-line and thus accessible from various computers with access to thenetwork 206. In this implementation, a user can still request an appointment with a service provider. Since the service provider also has a calendar, theappointment server 202 is able to determine when the service provider has time available for appointments. In requesting an appointment with the service provider, the user selects from the available appointment times. Thereafter, the service provider is notified of the requested appointment and given the opportunity to accept or decline the requested appointment. Once the requested appointment has been accepted (or confirmed), the requested appointment becomes a confirmed appointment and can appear as being “confirmed” on the respective calendars of the user and service provider. -
FIG. 2B is a block diagram of anappointment server 250 and anappointment database 252 according to one embodiment. Theappointment server 250 represents a more detailed embodiment of theappointment server 202 illustrated inFIG. 2A , and theappointment database 252 represents a more detailed embodiment of theappointment database 204 illustrated inFIG. 2A . - The
appointment server 250 includes aweb server 254 that manages the network interaction with respect to thenetwork 206. Theweb server 254 communicates or uses the resources of asearch manager 256, a calendar/appointment manager 258, and anemail manager 260. Thesearch manager 256 allows theappointment server 250 to search a directory, such as a business directory, to locate businesses (i.e., service providers) of interest to a user. The calendar/appointment manager 258 provides the resources to provide users with calendars and to allow users to make appointments. Theemail manager 260 allows for the automatic distribution of electronic mail to provide various notifications. Each of thesearch manager 256, the calendar/appointment manager 258 and theemail manager 260 make use of theappointment database 252 in providing their services or resources. - The
appointment database 252 includes a calendar/appointment database 262, abusiness directory database 264, and auser information database 266. The calendar/appointment database 262 stores calendar data and appointment data for use by theappointment server 250. More particularly, the calendar/appointment manager 258 uses the data stored in the calendar/appointment database 262 when providing the users with calendars or appointment capabilities. Thebusiness directory database 264 stores a business directory that contains businesses that provides services to users. These businesses are also known as service providers. Thesearch manager 256 of theappointment server 250 can operate to search through thebusiness directory database 264 to identify businesses of interest to a user. Theuser information database 266 stores user information, such as account information, user preferences, user name, user address, user email, etc. Theuser information database 266 is used by theappointment server 250 to store information about users, including: user name, password, mailing address, email address, general appointment availability. Theuser information database 266 can also be used to improve user satisfaction by not requiring a user to repetitively enter information or provide various preferences. In addition, theemail manager 260 of theappointment server 250 utilizes information in theuser information database 266, namely, the email address for users to receive email notifications. AlthoughFIG. 2B illustrates the calendar/appointment database 262, thebusiness directory database 264, and theuser information database 266 as separate databases, they could also be combined into less (e.g., one) or more databases. -
FIG. 3A is a flow diagram of an on-lineappointment service processing 300 according to one embodiment. The on-lineappointment service processing 300registers 302 various service providers for on-line appointment capabilities. In one implementation, the registration process can identify not only contact or business information about the service providers and their offered services but also time periods of availability for appointments and particular appointment types offered. The on-lineappointment service processing 300 can also provide 304 a directory of service providers that offer services which can be scheduled. The directory of service providers also allows users to search for service providers offering the types of service they desire, and then initiate an on-line appointment with such service providers as desired. In one implementation, the directory includes a plurality of categories, arranged in a hierarchy, with each of the service providers being listed in the one or more categories that relate to the services offered by the service providers. - The on-line
appointment service processing 300 also registers 306 users for on-line calendars. The registration process can obtain contact information, user identifier (ID) and password, and calendar configuration information. The registration can also allow the user being registered to permit on-line appointments to be made with them. If the user permits on-line appointments to be made with them, then the registration process can also identify time periods of availability for appointments. The user ID and password provide secure access to the user's on-line calendar. - Further, the on-line
appointment service processing 300 allows on-line appointments to be scheduled 308 between users and service providers. Additionally, the on-lineappointment service processing 300 allows for the automatic display of appointment indications in the on-line calendars for the users or service providers, to the extent such on-line calendars are provided. Thus, scheduled appointments can appear in on-line calendars much like other events. Appointments can also be subsequently confirmed or canceled. Email notifications can also notify participants of: requested appointments, confirmation of appointments, or cancellation of appointments. - The on-line appointments can be scheduled 308 using the on-line
appointment service processing 300 at any time and without the need for the service provider's office to be open for business. The on-line appointment processing 300 also is efficient, user friendly, and allows for on-line appointment management. The on-line appointments being scheduled can also be linked to (e.g., integral with) the on-line calendars of the users and service providers. -
FIG. 3B is a flow diagram of appointment processing 350 according to one embodiment. Theappointment processing 350 beings with adecision 352 that determines whether an appointment availability request has been received. In other words, theappointment processing 350 does not effectively being until anappointment availability request 352 has been received. - The
appointment processing 350 is, for example, performed by theappointment server 202 illustrated inFIG. 2A or the calendar/appointment manager 258 illustrated inFIG. 2B . When thedecision 352 determines that an appointment availability request has been received, then available appointment times are determined 354. For example, a user may request (e.g., appointment availability request) to make an appointment with a particular service provider on a given date, and thedetermination 354 of the available appointment times can be determined by accessing the calendar/appointment database 262 to determine whether the particular service provider for which the appointment is requested is available. - Once the available appointment times are determined 354, the available appointment times are transmitted 356 to the user. After the available appointment times have been transmitted 356 to the user, a
decision 358 determines whether an appointment request has been received. If an appointment request has not yet been received, theappointment processing 350 awaits the reception of an appointment request. Once an appointment request has been received, an appointment for the selected appointment time is set 360. For example, the appointment for the selected appointment time can be set 360 in the calendar/appointment database 262 for both the user and the service provider. After the appointment has been set 360, theappointment processing 350 is complete and ends. -
FIGS. 4A and 4B are flow diagrams of consumer-side on-line appointment processing 400 according to one embodiment. The consumer-side on-line appointment processing 400 is, for example, performed at the consumer'scomputer 208 illustrated inFIG. 2A . - The consumer-side on-
line appointment processing 400 initially accesses 402 an appointment server web page. The appointment server web page is provided by the appointment server, e.g.,appointment server - At this point, the user can interact with the user's calendar being displayed to select different view or dates—so called navigation with respect to the user's calendar. Besides navigation, the user can request to add an event or make an appointment. The consumer-side on-
line appointment processing 400 continues when the user requests to make an appointment. In this regard, a decision 410 determines what type of processing the user desires to perform. More particularly, a decision 410 determines whether a user desires to make an appointment. When the decision 410 determines that the user has not yet requested to make an appointment, then adecision 412 determines whether the user has requested other processing. When a user has requested other processing (e.g., navigation acts or event processing), theother processing 414 is performed and then adecision 415 determines whether to quit the consumer-side on-line appointment processing 400. When thedecision 415 determines that the consumer-side on-line appointment processing 400 should quit, then the consumer-side on-line appointment processing 400 is complete and ends. On the other hand, when thedecision 412 determines that the user has not requested other processing or when thedecision 415 determines that the consumer-side on-line appointment processing 400 should not quit, then the consumer-side on-line appointment processing 400 returns to repeat the decision 410 and subsequent blocks. - Once the decision 410 determines that the user does desire to make an appointment, then a
request 416 to make an appointment can be sent to the appointment server. After therequest 416 to make an appointment has been sent, the consumer's computer will receive and display 418 a service provider search form. Search information is then entered and a search request submitted 420. - A
decision 422 then determines whether a response to the search request has been received. When thedecision 422 determines that a response has not yet been received, the consumer-side on-line appointment processing 400 awaits such a response. Once thedecision 422 determines that a response has been received, a list of matching service providers is displayed 424. Then, the consumer-side on-line appointment processing 400 awaits the user's selection from the list of matching service providers. Adecision 426 determines whether the selection has been made. When thedecision 426 determines that the selection has not yet been made, the consumer-side on-line appointment processing 400 awaits such a selection. - Once the
decision 426 determines that such a selection has been made, appointment types for the selected service provider are requested 428. Adecision 430 then awaits a response to the request for appointment types. When thedecision 430 determines that a response has not yet been received, the consumer-side on-line appointment processing 400 awaits such a response. Once thedecision 430 determines that a response, namely, appointment types for the selected service provider are received, then the appointment types for the selected service provider are displayed 432. - A
decision 434 then determines whether one of the appointment types being displayed 432 has been selected. When thedecision 434 determines that an appointment type has not been selected, the consumer-side on-line processing 400 awaits the selection of an appointment type. Once thedecision 434 determines that an application type has been selected, appointment availability for the selected appointment type on a predetermined date is requested 436. The consumer-side on-line appointment processing 400 then awaits a response to therequest 436 for appointment availability. - When the
decision 438 determines that a response has been received, appointment availability information for the selected service provider is displayed 440. The appointment availability information includes at least available time slots for appointments with the selected service provider. Next, an available time slot is selected 442 for the appointment being processed. Here, the user selects an available time slot from those being displayed 440 with the appointment availability information. - Once an available time slot is selected 442, an appointment with the service provider at the selected available time slot is requested 444. Thereafter, appointment verification information is received and displayed 446. The appointment server presents the appointment verification information to the user. A
decision 448 then determines whether the appointment has been verified. Here, the user can either proceed with the making of the appointment if the appointment verification information is correct or repeat some or all of the making of the appointment if the appointment verification information is incorrect. When thedecision 448 determines that the appointment has not been verified, then the consumer-side on-line appointment processing 400 returns to repeat theoperation 440 and subsequent operations so that the appointment being made can be altered. On the other hand, when thedecision 448 determines that the appointment has been verified, appointment verification is sent 450. The consumer-side on-line appointment processing 400 is then complete and ends with the appointment having been made. - Although user's calendars could be shared with a group of users or made public, in this embodiment, the user's calendar is likely private to the user because the user name and password are required for access to the user's calendar. Hence, users are not able to view or modify other's calendars or make appointments for others. In requesting an appointment with another (i.e., service provider), the available time slots pertain to the service provider's calendar. However, the available time slots for potential appointments may be displayed to the requestor without showing the service provider's entire calendar. Further, in another embodiment, a user (e.g., service provider) may want to limit the number of available time slots shown as being available to a user requesting an appointment, so as to prevent giving the impression of not being busy. In yet another embodiment, a user (e.g., service provider) may want to bias those users requesting appointment to certain time slots. For example, the available time slots could be biased to within the morning office hours to encourage morning appointments. By providing primarily morning time slots, users would be biased towards requesting a morning appointment. As another example, different types of appointments could be provided with different available time slots through different biasing or different availability given the appointment types.
-
FIGS. 5A-5C are flow diagrams of server-side on-line appointment processing 500 according to one embodiment. The server-side on-line appointment processing 500 is, for example, performed by theappointment server 202 illustrated inFIG. 2A or theappointment server 250 illustrated inFIG. 2B . - The server-side on-
line appointment processing 500 initially sends 502 a login page to a requesting user. Then, adecision 504 determines whether a login request has been received. When thedecision 504 determines that a login request has not been received, the server-side on-line appointment processing 500 awaits such a login request. Once thedecision 504 determines that a login request has been received, the user name and password associated with the login request are verified 506. Adecision 508 then determines whether the verification has been successful. When thedecision 508 determines that the verification has not been successful (e.g., login denied), the server-side on-line appointment processing 500 returns to repeat thesend operation 502 and subsequent operations to handle subsequent login requests. - On the other hand, when the
decision 508 determines that the verification has been successful (e.g., login granted), a user's calendar data is retrieved 510. For example, the user's calendar data can be retrieved from theappointment database 204 illustrated inFIG. 2A or the calendar/appointment database 262 of theappointment database 252 illustrated inFIG. 2B . A user's calendar is then produced 512 from the user's calendar data. Here, in one embodiment, the user's calendar can be produced 512 by suitably formatting the user's calendar data into a graphical user interface. As an example, the user's calendar can be produced as a markup language document (page) (e.g., HTML page). After the user's calendar is produced 512, the user's calendar is sent 514. Here, the user's calendar can be sent to the user through thenetwork 206. - Next, a
decision 516 determines whether a request to make an appointment has been received. Thedecision 516 causes the server-side on-line appointment processing 500 to await the reception of a request to make an appointment. Although other types of requests could be made, including an event request, the server-side on-line appointment processing 500 is primarily concerned with the making of appointments. Once thedecision 516 determines that a request to make an appointment has been received, a service provider search form is retrieved and sent 518. For example, the service provider search form can be used to assist a user in locating a particular service provider registered with theappointment database 204 or thebusiness directory database 264 of theappointment database 252. - A
decision 520 then determines whether a search request has been received. Here, a search request results when the user completes and submits the service provider search form. Thedecision 520 causes the server-side on-line appointment processing 500 to await the reception of a search request. Once thedecision 520 determines that a search request has been received, the service providers that match the search information are retrieved 522. For example, the search can search through thebusiness directory database 264 of theappointment database 252 to identify those service providers that match the provided search information. Then, a list of matching service providers is produced 524. The list of matching service providers is then sent 526. - A
decision 528 then determines whether a request for appointment type has been received. A request for appointment type results when the user selects one of the service providers from the list of matching service providers. In other embodiments, a service provider can additionally or alternatively be chosen by use of an address book or from a preferred provider directory where a directory search is not needed. When thedecision 528 determines that a request for appointment type has not yet been received, the server-side appointment processing awaits such a request. Once thedecision 528 determines that a request for appointment types has been received, appointment types for the selected service provider are retrieved 530. For example, the appointment types can be retrieved from the appointment database. After the appointment types are retrieved 530, the appointment types for the selected service provider are sent 530. - A
decision 532 then determines whether a request for appointment availability has been received. A request for appointment availability results when the user selects one of the appointment types available for the selected service provider. When thedecision 532 determines that a request for appointment availability has not yet been received, the server-side on-line appointment processing 500 awaits such a request. Once thedecision 532 determines that a request for appointment availability has been received, the selected service provider's calendar data for the predetermined date is retrieved 534. The service provider's calendar data is, for example, retrieved 534 from theappointment database 204 or the calendar/appointment database 262 of theappointment database 252. After the service provider's calendar data is retrieved 534, available time slots in the selected service provider's calendar data for the selected appointment type on the predetermined date are determined 536. In one implementation, the selected appointment type can identify the duration of the appointment to be scheduled. In another implementation, the duration of the appointment to be scheduled can be indicated by the requestor. Appointment availability information is then formatted 538 for the selected service provider. Here, the appointment availability information can, for example, include the available time slots for the selected service provider as well as the user's calendar. Such an arrangement of information allows a user to easily schedule an appointment with the available time slots of the service provider while having the user's calendar visible. The appointment availability information can be formatted as a markup language document (page) (e.g., HTML). The appointment availability information is then sent 540. - Next, a
decision 542 determines whether an appointment request has been received. Here, an appointment request results when the user selects one of the available time slots provided with the appointment availability information. When thedecision 542 determines that an appointment request has not yet been received, the server-side on-line appointment processing 500 awaits such a request. Once thedecision 542 determines that an appointment request has been received, appointment verification information is retrieved 544. The appointment verification information is used to enable the user to reconfirm the details of the appointment being requested. Then, the appointment verification information is sent 546. - A
decision 548 then determines whether a verification has been received. When thedecision 548 determines that a verification has been received, a pending appointment is stored 550 in the user's calendar data and the service provider's calendar data. On the other hand, when thedecision 548 determines that a verification has not been received, namely, that verification was denied, theoperation 550 is bypassed. The denial of verification can lead to cancellation of the appointment being scheduled or returning to earlier processing to allow the user to alter the appointment being requested. Followingblock 550 as well as following thedecision block 548 when there has been no verification, the server-side on-line appointment processing 500 is complete and ends. - Before calendar and appointment capabilities are provided to users, certain information is normally obtained from the users. This information includes, for example, contact information, setup information, and appointment configuration information.
FIGS. 5D and 5E describe registration processing in which such information can be obtained. -
FIG. 5D is a flow diagram of client-sidenew user processing 560 according to one embodiment. The client-sidenew user processing 560 is used to register new users with the on-line appointment system. The client-sidenew user processing 560 is, for example, performed by a network browser operating on a computer. As an example, the client-sidenew user processing 560 can operate on a consumer's computer, such as the consumer'scomputer 208 illustrated inFIG. 2A , or a service provider's computer, such as the service provider'scomputer 210 illustrated inFIG. 2A . An exemplary network browser is Internet Explorer from Microsoft Corporation. - The client-side
new user processing 560 initially receives and displays 562 a registration page. The registration page allows a new user to the system to provide information about themselves. The information provided typically includes contact information as well as a requested user name and password. In one implementation, the contact information can include: first name, last name, company name, address, city, state/province, country, zip/postal code, telephone number, and email address. The user interacts with the registration page being displayed to enter the contact information and the requested user name and password. Here, the contact information and the requested user name and password are entered and submitted 564. Once submitted, the client-sidenew user processing 560 awaits a response from the server. - A
decision 566 determines whether a response has been received. When thedecision 566 determines that the response has not yet been received, the client-sidenew user processing 560 awaits such a response. Once the response has been received, a setup page is displayed 568. Then, setup information is entered and submitted 570. Here, the setup page can ask the user to provide setup information regarding the setup of their on-line calendar and appointment capabilities. The user provides this setup information by interacting with the setup page being displayed. In one implementation, the setup information can include: selecting a default view for a calendar, setting a default time range for the calendar, setting a time zone for the calendar, indicating whether email notifications for scheduled appointments are requested, and indicating whether others are able to schedule appointments with the user. In any case, after the setup information is entered and submitted 570, the client-sidenew user processing 560 awaits a response from the server. Adecision 572 determines whether a response has been received. The response from the server will differ depending upon whether the user has allowed others to schedule appointments with them. Adecision 574 determines whether appointment support has been enabled. When thedecision 574 determines that the appointment support has been enabled, an appointment configuration page is displayed 576 after the response from the server is received. Here, when appointment support has been enabled, the response from the submission of thesetup information 570 is the appointment configuration page. After the appointment configuration page is displayed 576, appointment configuration information is entered and submitted 578. The user provides the appointment configuration information by interacting with the appointment configuration page being displayed. The appointment configuration information is used to configure the operation of the appointment scheduling. For example, the appointment configuration information can indicate days and times of availability and non-availability for appointments, types of appointments that can be made as well as their duration, and whether appointments should be confirmed automatically or not. As an example, one's availability for scheduling appointments during a week can be setup so that appointments can be scheduled on certain days (e.g., Monday-Friday), within certain time periods, and by further exclusion of certain time periods (e.g., lunch hour). The types of appointments can also be classified by industry or other categories. Following thesubmission 578 of the appointment configuration information, the client-sidenew user processing 560 ends and processing follows block 408 illustrated inFIG. 4A . - On the other hand, when the
decision 574 determines that appointment support is not enabled, then the response from thesubmission 560 of the setup information is that the processing of the client-sidenew user processing 560 ends. Hence, in this case, the client-sidenew user processing 560 subsequently follows the processing beginning atblock 408 illustrated inFIG. 4A without the need to request appointment configuration information. -
FIG. 5E is a flow diagram of server-sidenew user processing 580 according to one embodiment. The server-sidenew user processing 580 interacts with the client-sidenew user processing 560 illustrated inFIG. 5D . The server-sidenew user processing 580 is, for example, performed by theappointment server 202 illustrated inFIG. 2A or theappointment server 250 illustrated inFIG. 2B . - The server-side
new user processing 580 initially sends 582 a registration page to the user's computer. Then, adecision 584 causes the appointment server to await a registration request from the user's computer. When thedecision 584 determines that a registration request has not yet been received, the server-sidenew user processing 580 awaits such a request. Once thedecision 584 determines that a registration request has been received, a user account is opened and contact information, user name and password are stored 586. In one implementation, the user account can be opened or provided within the appointment database, such as theappointment database 204 illustrated inFIG. 2A or theappointment database 252 illustrated inFIG. 2B . For example, the user account and the contact information, user name and password can be stored in theuser information database 266 illustrated inFIG. 2B . - Next, a setup page is sent 588. The setup page allows the user to enter setup information to specify, for example, how the user would like the default calendar setup and whether or not others are able to schedule appointments with them. Next, a
decision 590 determines whether a setup request has been received. Here, thedecision 590 determines whether the client-sidenew user processing 560 has submitted the setup information with a setup request. When thedecision 590 determines that a setup request has not yet been received, the server-sidenew user processing 580 awaits such a request. Once thedecision 590 determines that a setup request has been received, the setup information provided with the setup request is stored 592. In one implementation, the setup information is stored in the appointment database, such as theappointment database 204 illustrated inFIG. 2A or theappointment database 252 illustrated inFIG. 2B . For example, the setup information can be stored in theuser information database 266 illustrated inFIG. 2B . - A
decision 594 then determines whether appointment support has been enabled. Here, the setup information informs the server whether the user desires to enable others to schedule appointments with them. When thedecision 594 determines that appointment support has not been requested, then the server-sidenew user processing 580 is complete and processing returns to block 510 inFIG. 5A so that the user's calendar can be obtained and displayed. On the other hand, when thedecision 594 determines that appointment support has been requested, then an appointment configuration page is sent 596. The appointment configuration page provided by the server to the client enables the user at the client-side to enter appointment configuration information so that appointments can be more intelligently scheduled. After the appointment configuration page has been sent 596, adecision 597 determines whether an appointment configuration request has been received. This represents the return of the appointment configuration page from the user via the client-sidenew user processing 560. When thedecision 597 determines that an appointment configuration request has not yet been received, the server-sidenew user processing 580 awaits such a request. Once thedecision 597 determines that an appointment configuration request has been received, appointment configuration information provided with the appointment configuration request is stored 598. In one implementation, the appointment configuration information can be stored in theappointment database 204 illustrated inFIG. 2A or theuser information database 266 of theappointment database 252 illustrated inFIG. 2B . After the appointment configuration information is stored 598, the server-sidenew user processing 580 is complete and the processing returns to block 510 illustrated inFIG. 5A . - The client-side on-
line appointment processing 400 and the server-side on-line appointment processing 500 can be modified to obtain additional appointment information from a user. For example, in making certain types of appointments, some service providers desire to obtain additional information about the user. For example, in a case where a user is making an appointment with a dentist (service provider), the dentist often wants to know if the user is a new patient or an existing patient. For new patients, a patient normally has to fill out a questionnaire. For existing patients, no questionnaire is needed but confirmation of similar information could be performed. As another example, an auto repair business (service provider) may want to obtain information on the owner and vehicle. Hence, the additional information gathered often varies with industry and type of consumer (user).FIGS. 6 and 7 describe appointment type processing in which such additional appointment information can be obtained according to one embodiment. -
FIG. 6 is a flow diagram of client-side appointment-type processing 600 according to one embodiment. The client-side appointment-type processing 600 is, for example, performed by the consumer'scomputer 208 illustrated inFIG. 2A . - The client-side appointment-
type processing 600 represents optional processing that can enhance the client-side on-line appointment processing 400 illustrated inFIGS. 4A and 4B . In particular, the client-side on-line appointment processing 600 can, in one embodiment, be performed following thedecision 426 and prior to therequest 428 illustrated inFIG. 4A . - The client-side appointment-
type processing 600 initially requests 602 an industry-type for the selected service provider. Here, the selection of one of the service providers causes the request for the industry type. Next, adecision 604 determines whether a response from the appointment server has been received. Here, the response is a consumer type form that is provided to the consumer's computer from the appointment server. When thedecision 604 determines that the response has not yet been received, the client-side appointment-type processing 600 awaits such a response. Once thedecision 604 determines that the response has been received, the customer type form is displayed. For example, the customer type form would be displayed on a display screen associated with the consumer's computer. Then, a customer type is selected 608. The customer type form thus enables the user to identify the type of customer they are (e.g., new or existing) to the appointment server. For example, the user of the consumer's computer can make a selection with respect to the customer type form being displayed on the display screen. For example, if the service provider were a dentist, the customer type form could provide options for the user to designate themselves as a new patient or an existing patient. After the customer type has been selected 608, an appropriate customer type information form is requested 610. In other words, once the customer type has been selected, a request is sent to the appointment server requesting 610 the customer type information form that is associated with the selected customer type. Next, adecision 610 determines whether a response has been received. Here, the response is the appropriate customer type information form that is provided by the appointment server. When thedecision 612 determines that the response to therequest 610 has not yet been received, then the client-side appointment type processing 600 awaits such a response. Once thedecision 612 determines that the response has been received, the appropriate customer type information form is displayed 614. For example, the appropriate customer type information form can be displayed on the display screen associated with consumer's computer. Thereafter, the customer type information form is completed and submitted 616. Here, for example, the user of the consumer's computer would interact with the customer type information form being displayed to enter information and then once the customer type information form has been sufficiently completed would submit the form to theappointment server 202. After the completion and submission of the customer type information form, the client-side appointment-type processing 600 is complete and ends. -
FIG. 7 is a flow diagram of server-side appointment type processing 700 according to one embodiment. The server-side appointment type processing 700 is, for example, performed by theappointment server 202 illustrated inFIG. 2A or theappointment server 250 illustrated inFIG. 2B . - The server-side appointment type processing 700 represents optional processing associated with the server-side on-
line appointment processing 500 illustrated inFIGS. 5A-5C . In particular, the server-side appointment type processing 700 is optional processing can, in one embodiment, be performed following thedecision 528 and prior to retrieving 530 illustrated inFIG. 5B . - The server-side appointment type processing 700 begins with a
decision 702 that determines whether an industry type request has been received. When thedecision 702 determines that an industry type request has not yet been received, the server-side appointment type processing 700 awaits such a request. Once thedecision 702 determines that an industry type request has been received, an industry type for the selected service provider is retrieved 704. Then, available customer types for the industry types are retrieved 706. As an example, the industry types and available customer types can be retrieved from theappointment database 204 illustrated inFIG. 2A or theappointment database 252 illustrated inFIG. 2B . Next, a customer type form is retrieved 708. The customer type form can be predetermined or dynamically generated. The customer type form is then sent 710. The customer type form is sent 710, for example, to the consumer's computer where it is received and displayed as described in the client-side appointment type processing 600 illustrated inFIG. 6 . - Next, a
decision 712 determines whether an information form request has been received. When thedecision 712 determines that an information form request has not yet been received, the server-side appointment type processing 700 awaits such a request. Once thedecision 712 determines that an information form request has been received, the appropriate customer type information form is retrieved 714. Then, the appropriate customer type information form is sent 716. - A
decision 718 next determines whether a completed form has been received. Here, the server-side appointment type processing 700 is awaiting the submission of the customer type information form from the client-sideappointment type processing 600. When thedecision 718 determines that the completed form has not yet been received, the server-side appointment type processing 700 awaits the reception of the completed form. Once thedecision 718 determines that the completed form has been received, the customer information provided in the completed form is saved 720. For example, the customer information is saved 720 in theappointment database 204 or theuser information database 266 of theappointment database 252. Thereafter, the server-side appointment type processing 700 is complete and ends. - After a consumer (user) has interacted with an appointment server to request an appointment with a service provider, the service provider can be given an opportunity to review the requested appointments from various consumers and either accept or decline the requested appointments.
-
FIGS. 8A and 8B are flow diagrams of service providerappointment review processing 800 according to one embodiment. The service provider appointment review processing is, for example, performed on the service provider'scomputer 210. Typically, the service providerappointment review processing 800 would be performed in conjunction with a network browser operating on the service provider'scomputer 210. - The service provider
appointment review processing 800 typically begins sometime after an email notification has been received by the service provider. More particularly, in one embodiment, the service provider is provided with an email notification when a consumer has requested an appointment with the service provider. As an example, such an email notification can inform the service provider of the name of the requestor and the date and time when the requestor desires an appointment. The service provider, upon receiving the email notification, can initiate access to the appointment server to review the requested appointment. Hence, although the invocation of the service providerappointment review processing 800 typically follows the reception of an email notification, in more general terms is activated whenever requested by the service provider. Thus, the service providerappointment review processing 800 begins when activated by a service provider. - After being activated, the appointment server webpage is accessed 804. The appointment server webpage, as noted above, is provided by the appointment server (e.g.,
appointment server 202, 250). Next, a login page is received and displayed 806. Here, the login page can be received from the appointment server and displayed on a display screen associated with the service provider's computer. Then, the service provider enters and submits 808 a user name and password. Then, assuming the login was successful, the service providerappointment review processing 800 receives and displays 810 the service provider's calendar. Here, the service provider's calendar is supplied by the appointment server. - Following the display of the service provider's calendar, the service provider can perform various navigation acts or operations with respect to the service provider's calendar provided by the appointment server. Eventually, the service provider desires to accept or decline a requested appointment. For example, to initiate acceptance or decline of a requested appointment, the service provider could select an icon or button being displayed. As an example, the icon or button can be displayed with the service provider's calendar. A
decision 812 determines whether an appointment status selection has been made for a particular requested appointment. When thedecision 812 determines that an appointment status selection has not been made, then adecision 814 determines whether the service providerappointment review processing 800 is done. When thedecision 814 determines that the service providerappointment review processing 800 is done, the service providerappointment review processing 800 is complete and ends. On the other hand, when thedecision 814 determines that the service providerappointment review processing 800 is not completed, then processing returns to repeat the navigation acts or operations and subsequent blocks including thedecision 812. - Alternatively, when the
decision 812 determines that an appointment status selection has been made, an appointment status notification is sent 816. Here, the appointment status notification provides an indication to the appointment server as to whether the requested appointment is accepted or declined. An accepted appointment is also referred to as a confirmed appointment. Also, depending on whether the requested appointment has been accepted or declined, the service providerappointment review processing 800 operates differently. In particular, adecision 818 determines whether the requested appointment has been accepted. When thedecision 818 determines that the requested appointment has not been accepted (i.e., declined), the service providerappointment review processing 800 returns to repeat theoperation 810 and subsequent operations. On the other hand, when thedecision 818 determines that the requested appointment has been accepted, adecision 820 determines whether detailed appointment information has been received. Here, the appointment server will forward or send to the service provider's computer detailed appointment information on the appointment that has been accepted. When thedecision 820 determines that detailed appointment information has not yet been received, the service providerappointment review processing 800 awaits such information. Once thedecision 820 determines that detailed appointment information has been received, the detailed appointment information is displayed 822. For example, the detailed appointment information can be displayed on a display screen associated with the service provider'scomputer 210. Next, adecision 824 determines whether the detailed appointment information has been verified. Here, the service provider is provided with an opportunity to verify the particular information included in the detailed appointment information. Hence, the service provider reviews the detailed appointment information displayed on the display screen and then verifies its accuracy. When thedecision 824 determines that the information has not yet been verified, the service providerappointment review processing 800 awaits such verification. Although not illustrated inFIGS. 8A and 8B , alternatively, the service provider could indicate that it desires to decline the requested appointment that was previously accepted, in which case the requested appointment would be declined and the processing could return to repeat theoperation 810 and subsequent operations. However, when thedecision 822 determines that the information has been verified, detailed appointment confirmation is sent 824. For example, the detailed appointment confirmation is sent 824 to the appointment server to inform the appointment server that the particular requested appointment and its details have been confirmed (accepted). Thereafter, the service providerappointment review processing 800 returns to repeat theoperation 810 and subsequent operations so that other requested appointments can be reviewed or other navigation acts performed. -
FIGS. 9A and 9B are flow diagrams of server-sideappointment review processing 900 according to one embodiment. The server-sideappointment review processing 900 is, for example, performed by theappointment server 202 illustrated inFIG. 2A or theappointment server 252 illustrated inFIG. 2B . The server-sideappointment review processing 900 interacts with the service provider's computer 212 which performs the service providerappointment review processing 800. - The server-side
appointment review processing 900 sends 902 a login page. Typically, the login page would be in response to a request by the service provider's to access the appointment server website. Next, adecision 904 determines whether a login request has been received. When thedecision 904 determines that a login request has not yet been received, the server-sideappointment review processing 900 awaits such a request. Once thedecision 904 determines that a login request has been received, the user name and password associated with the login request are verified 906. Adecision 908 then determines whether the user name and password have been correctly verified. When thedecision 908 determines that the user name and password were not able to be verified, then access is denied and the processing returns to repeat theoperation 902. On the other hand, when thedecision 908 determines that the user name and password are correctly verified, then service provider's calendar data is retrieved 910. Here, for example, the service provider's calendar data can be retrieved from theappointment database 204 illustrated inFIG. 2A or the calendar/appointment database 262 of theappointment database 252 illustrated inFIG. 2B . Then, a service provider's calendar is produced 912. Here, the service provider's calendar is produced 912 in accordance with the service provider's calendar data that has been retrieved 910. After the service provider's calendar has been produced 912, the service provider's calendar is sent 914. - Thereafter, the server-side
appointment review processing 900 can perform various actions or operations such as altering the calendar view being provided or sent to different days, months or weeks. In any event, since the service provider will eventually request an appointment confirmation, the server-sideappointment review processing 900 will recognize when the service provider is accepting or declining an appointment. In this regard, adecision 916 determines whether an appointment has been accepted (or rejected). Here, an appointment status notification is sent to the appointment server by the service provider following acceptance or cancellation of a requested appointment. When thedecision 916 determines that an appointment has been declined by the service provider, adecision 918 determines whether the server-sideappointment review processing 900 is done. When thedecision 918 determines that the server-side appointment review processing is done, then the server-sideappointment review processing 900 is complete and ends. On the other hand, when thedecision 918 determines that the server-sideappointment review processing 900 is not done, then the processing returns to thedecision 916 to await another appointment status notification for another requested appointment. - In this embodiment, the requested appointments (e.g., pending appointments) are reviewed minimal information about the appointments, for example, date, time and requestor's name. Once the
decision 916 determines that an appointment has been accepted (i.e., confirmed), detailed appointment information is retrieved 920. The detailed appointment information is then sent 922. Here, the detailed appointment information is retrieved 920 from theappointment database decision 924 determines whether the detailed appointment information has been confirmed. The service provider can confirm the detailed appointment information. When thedecision 924 determines that the detailed appointment information has not yet been confirmed, the server-sideappointment review processing 900 awaits such a confirmation. When thedecision 924 determines that the detailed appointment information has been confirmed, the status of the appointment is updated 926 to “confirmed” in the service provider's calendar data at the appointment database. In addition, the status of the appointment is updated 928 to “confirmed” in the user's calendar data at the appointment database. Also, an appointment confirmation email is sent 930 to the user. As an example, the appointment confirmation email serves to notify the consumer that his/her previously requested appointment has been confirmed (accepted). Of course, in other embodiments, the appointment confirmation email need not be sent to the user. Followingoperation 930, the server-sideappointment review processing 900 returns to repeat theoperation 910 and subsequent operations so that additional requested appointments can be reviewed. - Although appointment review was discussed above as being performed by a service provider, any user (e.g., consumer or service provider) permitting appointments to be made with them can likewise review appointments. Also, the appointment review could operate to provide the detailed appointment information before the service provider is asked to initially confirm or decline a requested appointment.
- According to another aspect, an appointment server can operate to notify a selected service provider via facsimile or electronic mail that a user (customer) desires to make an appointment on a given date at a given period of time. In this regard, the service provider can be considered known but unregistered for on-line appointment services with the appointment server. As such, the appointment server can partially manage the appointment request. In particular, the consumer will access the appointment server in a general manner and make an appointment by filling out an appointment form and submitting the form. Then, the appointment server will receive the appointment form that has been submitted by the consumer and prepare a facsimile or electronic mail notification to the selected service provider indicating that the consumer has requested to make a particular appointment with the service provider. Upon receiving the facsimile or electronic mail notification, the service provider can contact the consumer through electronic mail, telephone or mail.
FIGS. 10 and 11 explain this restricted type of appointment processing according to one embodiment. -
FIG. 10 is a flow diagram of client-side restrictedappointment request processing 1000 according to one embodiment. The client-side restricted appointment request processing 100 is, for example, performed by the consumer'scomputer 208 illustrated inFIG. 2A . - The client-side restricted
appointment request processing 1000 initially accesses 1002 an appointment server website. Then, navigation and/or search operations are performed 1004. Here, a user can interact with the appointment server website to review a directory of service providers, obtain listings of particular types of service providers, review address book entries, etc. so as to eventually select a particular service provider for which an appointment is to be requested. Eventually, the consumer will cause the client-side restrictedappointment request processing 1000 to request 1006 to make an appointment with the particular service provider. Following therequest 1006, adecision 1008 determines whether an appointment request form has been received. Here, the appointment request form will be received from the appointment server in response to therequest 1006. When thedecision 1008 determines that the appointment request form has not yet been received, the client-side restrictedappointment request processing 1000 awaits the reception of the appointment request form. Once thedecision 1008 determines that the appointment request form has been received, the appointment request form is displayed 1010. Here, the appointment request form is displayed on the display screen of the consumer's computer. Next, the appointment request form is completed 1012. Here, the user of the consumer's computer fills in information requested by the appointment request form to complete the form. As an example, the information requested includes appointment date, duration and perhaps a message. Next, adecision 1014 determines whether the appointment request form is to be submitted. When thedecision 1014 determines that the appointment request form is not yet ready to be submitted, the restrictedappointment request processing 1000 returns to repeat theblock 1012 and subsequent blocks. On the other hand, when thedecision 1014 determines that the appointment request form is to be submitted, the completed form is submitted 1016. After the completed form is submitted 1016, the restrictedappointment request processing 1000 is complete and ends. -
FIG. 11 is a flow diagram of a server-side restrictedappointment request processing 1100 according to one embodiment. The server-side restrictedappointment request processing 1100 is, for example, performed by theappointment server 202 illustrated inFIG. 2A or theappointment server 250 illustrated inFIG. 2B . - The server-side restricted
appointment request processing 1100 initially sends 1102 a webpage with a directory of service providers. Here, the webpage is part of the appointment server website and is provided to the consumer's computer upon access to the appointment server website. Adecision 1104 then determines whether an appointment request has been received. When thedecision 1104 determines that an appointment request has not yet been received, the server-side restrictedappointment request processing 1100 awaits such a request. Once thedecision 1104 determines that an appointment request has been received, an appointment request form is prepared and sent 1106. The appointment request form can be generic or customized for different industry types. - Next, a
decision 1108 determines whether a completed appointment request form has been submitted. When thedecision 1108 determines that the completed appointment request form has not yet been submitted, the server side restrictedappointment request processing 1100 awaits the reception of a completed appointment request form. On the other hand, when thedecision 1108 determines that the completed appointment request form has been submitted, a facsimile number or email address for the selected service provider is retrieved 1110. Here, the facsimile number or email address for the selected service provider are available from the appointment database (e.g., the business directory database 264). Then, an appointment request notification is sent 1112 to the selected service provider via facsimile or electronic mail. The appointment request notification can, for example, resemble the completed appointment request form. - Thereafter, in one embodiment, to limit the number of appointment requests that will be serviced by the appointment server without the service providers being registered with the system to participate in on-line appointment services, additional processing can be performed such as contained in operations 1114-1118 of
FIG. 11 . Namely, an allowed request count for the selected service provider can be decremented 1114 after each appointment request notification is sent 1112 to the selected service provider. Then, adecision 1116 determines the count is zero (0). When thedecision 1116 determines that the count has become zero (0), the capability for the selected service provider to receive appointment requests when unregistered can be disabled 1118. As a result, service providers can receive a limited number of appointment requests from consumers even while the service providers are unregistered with the appointment server, yet still be motivated to formally register with the appointment server. Alternatively, when thedecision 1116 determines that the count is not zero (0), as well as following theoperation 1118, the server-side restrictedappointment request processing 1100 is complete and ends. - Although the above discussion primarily concerned a user requesting an appointment with a service provider on a particular date, the appointment system can also consider multiple or alternative dates. By considering multiple or alternative dates, the users have more options in which to schedule an appointment. Also, the user requesting an appointment could, when requesting an appointment, provide alternative choices of times (i.e., time slots). For example, beside a first choice, the user could provide a second choice and a third choice. The service provider can then review the appointment request and have some scheduling options for the appointment.
- Moreover, although the above discussion has primarily discussed the request for an appointment by a consumer and then the confirmation of the requested appointment by the service provider, the appointment system also permits the service provider to request an appointment with the consumer and then allow the consumer to confirm the appointment. Hence, consumer and service providers are users, and user can both request and confirm appointments.
- Also, although the above discussion primarily concerns making appointments from one user to another user, the described techniques are also applicable to making appointment from one user to many users. For example, one user may want to arrange a meeting with two or more other users an could do so be requesting an appointment in accordance with the appointment availability of the two or more other users. Multiple users could also be grouped together to share a calendar and appointments. For example, a group of individuals could be associated with an on-line calendar provided by the appointment server, and then the group is effectively a user.
- Still further, the above discussion described the scheduling of appointments as initially requested and then confirmed. The requested appointment was then initially provided as a pending appointment upon being requested, and then either canceled or confirmed by the service provider. In another embodiment, the requested appointment could initially be deemed set and then thereafter cancelled by the service provider if not desired. In such an embodiment, the operation would be the same but the terminology slightly different.
- According to another aspect, a service provider's computer can include a synchronization application. The synchronization application is a separate application program that operates on the service provider's computer to synchronize a local appointment management system with the appointment database provided at the appointment server.
-
FIG. 12 is a block diagram of a service provider'scomputer 1200 according to one embodiment. The service provider'scomputer 1200 includes anoffice management program 1202 that is typically provided in a service provider's establishment. Theoffice management program 1202 is typically an integrated software package that includes functions or modules such as calendar and email. Theoffice management program 1202 may also include time and billing modules, management modules, etc. - The
office management program 1202 is coupled to adatabase 1204 that stores data associated with theoffice management program 1202. Theoffice management program 1202 can be coupled to various internal users at the service provider's establishment over alocal network 1206. The service provider'scomputer 1200 also includes asynchronization application 1208 coupled to an external network (e.g., the Internet) through anetwork link 1210. Thesynchronization application 1208 operates to synchronize the appointment data from the appointment database provided by the appointment server with thedatabase 1204 managed by theoffice management program 1202. In this regard, appointments scheduled with the appointment server are able to be presented in the calendar module of theoffice management program 1202. Still further, if desired, the service provider's on-line calendar maintained by the appointment server can be synchronized with the calendar module (i.e., local calendar) of theoffice management program 1202. -
FIG. 13 is a flow diagram ofsynchronization application processing 1300 according to one embodiment. Thesynchronization application processing 1300 is, for example, performed by thesynchronization application 1208 illustrated inFIG. 12 . In one implementation, thesynchronization application processing 1300 can be scheduled to periodically start such that the synchronization regularly occurs. - The
synchronization application processing 1300 initially connects 1301 the synchronization application to an appointment server. Then, the synchronization application will receive and display 1302 a login page. In response to the login page, the synchronization application will enter and submit 1304 a user name and password. Next, adecision 1306 determines whether access to the appointment server has been granted. Here, the appointment server will notify the synchronization application whether access has been granted or denied. When thedecision 1306 determines that access has not been granted (i.e., access denied), an error message is provided 1308 to the synchronization application. - On the other hand, when the
decision 1306 determines that access has been granted, thesynchronization application requests 1310 pending appointments. Adecision 1312 then determines whether the pending appointments that have been requested have been received. When thedecision 1312 determines that the pending appointments have not yet been received, theapplication synchronization processing 1300 waits to receive the pending appointments. Once the pending appointments have been received, the synchronization application attempts 1314 to fit the pending appointments into thedatabase 1204 of theoffice management program 1202. Then, thesynchronization application processing 1300 determines 1316 indications of confirmation or cancellation for each of the pending appointments. Here, the service provider can manually interact with the synchronization application or the synchronization application can automatically determine whether the pending appointments fit. For example, if a pending appointment conflicts with an existing appointment or event in the service provider's local calendar at theoffice management program 1202, the synchronization application can automatically cancel the pending appointment. Likewise, if a pending appointment does not conflict with an existing appointment or event in the service provider's calendar at theoffice management program 1202, the synchronization application can automatically accept (confirm) the pending appointment. In any case, after the indications are determined 1316, the indications are then sent 1318. The synchronization application then logs out 1320 from the appointment server. The synchronization application then disconnects 1322 from the appointment server. Following theoperation 1322, as well as following theoperation 1308, theappointment synchronization processing 1300 is complete and ends. -
FIG. 14 is a flow diagram of server-sideappointment synchronization processing 1400 according to one embodiment. The server-sideappointment synchronization processing 1400 begins when a login request from the synchronization application has been received. More particularly, adecision 1402 determines whether a login request has been received. When thedecision 1402 determines that a login request has not yet been received, the server-sideappointment synchronization processing 1400 awaits such a request. Once thedecision 1402 determines that a login request has been received, the user name and password associated with the login request are verified 1404. Adecision 1406 then determines whether the user name and password have been successfully verified. When thedecision 1406 determines that the user name and password have not been successfully verified, an error message is sent 1408. - On the other hand, when the
decision 1406 determines that the user name and password have been successfully verified, then an access granted indication is sent 1410 to the synchronization application. Then, adecision 1412 determines whether a pending appointment request has been received. When thedecision 1412 determines that a pending appointment request has not yet been received, the server-sideappointment synchronization processing 400 awaits such a request. Once thedecision 1412 determines that a pending appointment request has been received, pending appointments are sent 1414 to the synchronization application. Here, the pending appointments are first located within the appointment database and those located are then retrieved and sent 1414 to the synchronization application. - Next, a
decision 1416 determines whether confirmation/cancellation indications have been received from the synchronization application. When thedecision 1416 determines that the indications have not yet been received, the server-sideappointment synchronization processing 1400 awaits such indications. When thedecision 1416 determines that the indications have been received, appointment records are updated 1418 at the appointment database. For example, if a pending appointment has been confirmed (accepted), then the appointment record for the particular appointment is updated to indicate its status as being confirmed. On the other hand, if a pending appointment has been cancelled, the appointment record for the cancelled appointment is removed from the appointment database. Then, an email notification can be sent 1420 to those consumers whose appointments have been cancelled. The email notification can inform the consumers that their requested appointments have been cancelled and they should contact the service provider for additional information. Optionally, email notifications could be sent to those consumers whose appointments have been accepted. Regardless of the email notifications, the users' calendars would be updated to indicate that the appointment is confirmation or that the appointment has been cancelled. Thereafter, the server-sideappointment synchronization processing 1400 is complete and ends. - Another aspect is the notification and confirmation processing for appointments. Various notifications pertaining to appointment were also discussed above. Notifications can advise the service provider that a consumer has requested an appointment. Notifications can inform the consumer that the service provider has accepted (confirmed) or refused the requested appointment. Notifications can also inform the consumer or service provider that a previously accepted appointment has been canceled. The
email manager 260 of theappointment server 256 can initiate these notifications when appropriate. - Further, another aspect pertains to a method of doing business. The business method provides free on-line calendars and on-line appointment setting capabilities to consumers and provides fee-based calendars and on-line appointment accepting capabilities to service providers. For example, service providers could pay a monthly fee. Optionally, the business method provides email notifications to service providers when appointments are requested. Also, the business method may provide email notifications to consumers when their requested appointments are confirmed. The business method may also provide consumers with reminders for their upcoming appointments. The calendars of the consumers and service providers can also store information on other meetings or events besides appointments. Events that are scheduled can also make use of notifications. Further, the calendars of the consumers and service providers can also provide service providers or users with on-line address books.
- Another aspect pertains to a graphical user interface for scheduling appointments. The graphical user interface simultaneously displays on a display screen (i) a first user's daily calendar indicating the user's availability, and (ii) available time slots of a second user with which the appointment is being scheduled.
-
FIGS. 15-39 are representative screen shots of an on-line appointment system, namely a graphical user interface therefor, according to one or more embodiment. The screen shots are illustrative of the operation but are not to be deemed restrictive in scope. -
FIG. 15 is a registration screen in which a new user to the appointment system can register on-line. The registration screen depicts aregistration page 1500 displayed by a network browser on a user's computer. In this and subsequent examples, the network browser is Microsoft Internet Explorer. Theregistration page 1500, for example, pertains to the registration page received and displayed 562 with respect to the client-sidenew user processing 560 illustrated inFIG. 5D . Theregistration page 1500 includes afirst section 1502 that requests contact information from a user, and asecond section 1504 that requests a user name and password from the user. -
FIG. 16 is a setup screen in which a user can configure how he/she wishes his/her calendar to appear when he/she accesses the appointment website. The setup screen depicts asetup page 1600 displayed by a network browser on a user's computer. Thesetup page 1600, for example, pertains to the setup page displayed 568 with respect to the client-sidenew user processing 560 illustrated inFIG. 5D . Thesetup page 1600 allows the user to: set a default view of calendar to daily or monthly view; set default time range for calendar; set time zone; request that email notifications be sent to the user for scheduled appointments; and set whether others are permitted to schedule appointments with them or not. -
FIG. 17 is an appointment availability screen in which the user provides additional information concerning their availability for scheduling appointments, types of appointments, etc., assuming that the user is permitting appointments. The appointment availability screen depicts anappointment configuration page 1700 displayed by a network browser on a user's computer. Theappointment configuration page 1700, for example, pertains to the appointment configuration page displayed 576 with respect to the client-sidenew user processing 560 illustrated inFIG. 5D . Theappointment configuration page 1700 allows the user to specify: days and times of availability or unavailability for appointments, types of appointments that can be made as well as their duration, and whether appointments should be confirmed automatically or not. If an appointment is automatically confirmed, the user with which an appointment has been made does not get the opportunity to decline the requested appointment but can nevertheless cancel the automatically confirmed appointment. More particularly, theappointment configuration page 1700 allows the user to specify: whether appointments are to be automatically confirmed; availability for scheduling appointment during a normal week (including days and hours during the week of availability); other times during the week of availability; any times during the week of unavailability (e.g., lunch hour); type of appointment other can make; user category; and whether default information form (e.g., customer type information form) for the service type is to be used. As an example, one's availability for scheduling appointments during a week can be setup so that appointments can be scheduled on certain days (e.g., Monday-Friday), within certain time periods, and by further exclusion of certain time periods (e.g., lunch hour). The types of appointments can also be classified by industry or other categories. -
FIG. 18 is a user's calendar screen in which a user'scalendar page 1800 is depicted. The user'scalendar page 1800 includes a user'scalendar 1802 in a daily view format with the default time period extending from 8:00 a.m. to 8:00 p.m. In this example, anavailability indication 1803 indicates that the user is open to receiving appointment from 9:00 a.m. to 5:00 p.m. The user'scalendar page 1800 also includes an today'sdate indicator 1804, a month-to-month navigation device 1806, a selected month'scondensed calendar 1808 allowing navigation to any day of the selected month, a specificdate navigation device 1810, a dailyview request device 1812 and a monthlyview request device 1814 for the user's calendar, day-to-day navigation devices appointment availability device 1830, and a delete device 1822. The user'scalendar page 1800 also include request tabs 1824-1838. Ahome tab 1824 request that the home page be displayed. Anaccount information tab 1826 requests an account information page so that account information can be reviewed or changed. Apreferences tab 1828 requests a setup page and/or appointment configuration page. Acalendar tab 1830 requests the user's calendar page. An addevent tab 1832 requests an add event page so that a user can add an event to their calendar. Amake appointment tab 1834 requests a make an appointment page. Anaddress book tab 1836 requests an address book page. Alogout tab 1838 requests that the user be log out from the appointment server. - With respect to the user's calendar, a user can schedule an event on his/her own calendar using the
add event tag 1832 of the graphical user interface.FIG. 19 is an add event screen which anadd event page 1900 is displayed. Theadd event page 1900 allows information to be provided to the appointment system when a user desires to add a new event to his/her calendar.FIG. 20 is an exemplary add event screen in which a new event is being requested for addition to the user's calendar via anadd event page 2000. In this example, the event description is “Lunch with John Smith”, the date is Aug. 16, 1999, the event starts at 12:00 p.m. and lasts one hour, and the details are that they are to “Meet at the Pub”. Further, a check box indicates that the user's calendar is to mark this time period as busy so that other appointments are not scheduled during this time period. The event can also be repeated, and reminders for the event can be scheduled.FIG. 21 is an exemplary user's calendar screen in which an updated user'scalendar page 2100 is depicted. In particular, the user'scalendar page 1800 ofFIG. 18 has been updated inFIG. 21 to include the new event described with respect toFIG. 20 . -
FIG. 22 is an event details screen in which event details pertaining to the event scheduled with respect toFIG. 20 are visible on the display screen. Event details summarize the description, date, time, duration and details for the event. The event details can be requested by the user by selecting the event entry in the user's calendar which operates like a hyperlink. In this example, the event entry is “Lunch with John Smith”. -
FIG. 23 depicts a screen containing asearch form 2300 that a user can utilize in searching for a service provider with whom the user is interested in making an appointment. The search form allows searching of a business directory database by name of a person, company name or location, service category, or any combination thereof. The search form, for example, pertains to the service provider search form displayed 418 with respect to the client-side on-line appointment processing 400 illustrated inFIG. 4 .FIG. 24 depicts a screen contain a search resultspage 2400 which contain the search results of a search carried out using thesearch form 2300 ofFIG. 23 . The search resultspage 2400 lists those service provides that match the search criteria. In this example, there is one matching service provider, namely, Tommy Tam of Accela Corporation. Also repeated in thesearch results page 2400 is the completed search form (e.g., which resembles the search form 2300) that was used to locate the service provider. The search resultspage 2400, for example, pertains to the list of matching service providers displayed 424 with respect to the client-side on-line appointment processing 400 illustrated inFIG. 4 .FIG. 25 is a screen depicting an availableappointment types page 2500 for the selected service provider (i.e., Tommy Tam). The availableappointment types page 2500 is displayed after one of the matching service providers is selected (e.g., from the search results page 2400). The availableappointment types page 2500, for example, pertains to the list of appointment types displayed 432 with respect to the client-side on-line appointment processing 400 illustrated inFIG. 4 . -
FIG. 26 depicts an appointment timeslot selection screen 2600. The appointment timeslot selection screen 2600 allows a user to select an appointment time slot. In this example, the appointment timeslot selection screen 2600 includes a user's calendar, namely in a daily view for the day of the appointment to be scheduled, and a listing of available time slots. The user's calendar is provided in afirst region 2602 and the listing of available time slots is provided in asecond region 2604. In this example, the type of meeting requested was a “Half Hour Meeting” so the available time slots are provided in increments of thirty minutes. A condensed monthly calendar is also provided in athird region 2606 to allow easy user navigation to different dates or months. With respect toFIG. 26 , the user is able to view the user's calendar, in daily view, as well as the available time slots, both at the same time. Hence, the user can easily determine what time to schedule the appointment given his/her calendar as well as the availability of the selected service provider. Hence, a user would select one of the available time slots in which to schedule the appointment. The appointment timeslot selection screen 2600 can also include an appointment date selector 2608 (i.e., a specific date navigation device) that displays the determined date for the appointment being scheduled and also allow the user to change the determined date. The appointment timeslot selection screen 2600 can also include anappointment type indicator 2610 that indicates the appointment type being scheduled as well allow the user to change do different appointment types. The appointment timeslot selection screen 2600 also includes an today'sdate indicator 2612, a month-to-month navigation device 2614, day-to-day navigation devices slot selection screen 2600 can further include request tabs, such as request tabs 1824-1838 shown inFIG. 18 . - Still further, although not shown in
FIG. 26 , the appointment timeslot selection screen 2600 can further display an indication of the next available appointment date. For example, if the user is not offered any time slots for the determined date or if the user is not satisfied with the time slots offered on the determined date, then the next available appointment date can provide the user with a quick link to request the re-display of the appointment timeslot selection screen 2600 for the next available appointment date. This could be the next day or could be the several days in the future depending on the days that the service provider allows for appointments. Also, if desired, this could be limited to the next available appointment date in the future that has some open time slots. - Following selection of an available time slot, such as presented by the appointment time
slot selection screen 2600 ofFIG. 26 , the user could next be presented with an appointment detailsscreen 2700 such as illustrated inFIG. 27 in which the appointment details can be confirmed and in which a user message can be provided. InFIG. 27 , the appointment details include, date, time, name, company name, city, state/province, ZIP/postal code, country, service category, appointment type, and a message. InFIG. 27 , the message provided for the particular appointment is “Status Meeting via telephone”. By selecting the “Scheduled Appointment” button, the appointment will be scheduled. Additionally, the appointment system allows appointments to be made for others. -
FIG. 28 is a user's calendar screen in which a user'scalendar page 2800 is depicted. The user'scalendar page 2800 includes a screen shot of the user's calendar after the appointment has been scheduled, and thus represents an updated version of the user's calendar screen as compared to the user's calendar screen shown inFIG. 18 . Here, the appointment is scheduled from the user's perspective. More specifically, the appointment has been requested and is thus “pending” until “confirmed” (accepted) by the selected service provider. Hence, inFIG. 28 , the appointment is illustrated within the user's calendar at the appropriate date and time (and duration) and with a short description of the appointment. Here, the appointment is shown as having a status of “pending”. - After the selected service provider is notified of the requested appointment and, thereafter, accepts (or confirms) the requested appointment, the appointment system will update the user's calendar (as well as the service provider's calendar) to update the status to that of “confirmed”.
FIG. 29 illustrates the user's calendar screen ofFIG. 28 after the selected service provider has confirmed the requested appointment. -
FIG. 30 depicts anaddress book screen 3000 that provides an address book for the user. The address book is maintained by the appointment server. The appointment system allows users to maintain an address book on-line and utilize those businesses or individuals provided in their address book to make appointments quickly. Hence, to schedule an appointment, the user can go directly to the address book to select an individual or business or can instead use the search form discussed above. -
FIGS. 31-39 are screen depictions associated with the scheduling and confirmation of a requested appointment from the respective of two registered users. In this example, the registered users of the appointments are both individuals. -
FIG. 31 depicts an appointment timeslot selection screen 3100 that resembles that resembles the timeslot selection screen 2600 illustrated inFIG. 26 . Using the appointment timeslot selection screen 2600, the first user selects one of the available time slots, in this example, 2:00 p.m.-3:00 p.m. on Sep. 14, 1999. In response to the selection of the time slot, an appointmentscheduling confirmation page 3200 is presented such as shown inFIG. 32 . The appointmentscheduling confirmation page 3200 provides the details regarding the appointment to be scheduled. The appointmentscheduling confirmation page 3200 can provide an area in which the requestor of the appointment can provide a message to the requestee. If the user is satisfied with the details of the appointment as described in the appointmentconfirmation display page 3200, the user selects the “Schedule Appointment” button. At this point, the on-line appointment system schedules the requested appointment with the first and second users. - Following the scheduling of the appointment, the user's calendar screen is depicted with the user's
calendar page 3300 as shown inFIG. 33 . The user'scalendar page 3300 is similar to the user'scalendar page 2800 illustrated inFIG. 28 . It should be noted that the appointment that was scheduled, as explained with respect toFIGS. 31 and 32 , now appears in the user'scalendar page 3300 as a pending appointment. The entry in the user's calendar displayed with the user'scalendar page 3200 includes a link 3202 (e.g., a hyperlink) to details regarding the appointment. Upon selecting the link, the appointment details are displayed such as presented in anappointment detail screen 3400 illustrated inFIG. 34 . - Now, from the perspective of the second user, the user with whom the appointment has been scheduled, the second user's calendar is depicted such as shown in a user's
calendar page 3500 of a user's calendar screen illustrated inFIG. 35 . Note that in the user's calendar shown inFIG. 35 , the previously scheduled appointment appears as a pending appointment. This entry in the user's calendar also includes a link 3502 (e.g. a hyperlink) to details regarding the appointment. Upon selection of thelink 3502, an appointment detailsscreen 3600 can be presented to the user such as illustrated inFIG. 36 . Theappointment detail screen 3600 represents the screen presented to the second user, while theappointment detail screen 3400 illustrated inFIG. 34 represents the appointment details presented to the first user. The user's calendar provided with the user'scalendar page 3500 illustrated inFIG. 35 also includes aconfirmation indicator 3504 and acancellation indicator 3506. Theconfirmation indicator 3504 allows the user to confirm or decline a pending appointment by the selection of theconfirmation indicator 3504. Thecancellation indicator 3506 allows the user to cancel a pending appointment, or even a confirmed appointment, by the selection of thecancellation indicator 3506. When theconfirmation indicator 3504 has been selected by user, a confirmation screen having anappointment confirmation page 3700 is presented to the user. Theappointment confirmation page 3700 provides information on the requested appointment and allows the requestee to confirm or decline the appointment as well as provide a message in response. If the user confirms the appointment, the appointment will be confirmed and the respective calendars of the first and second users will be appropriately updated. On the other hand, if the user declines the requested appointment, the calendars of the first and second users will also be appropriately updated.FIG. 38 is a user's calendar screen in which a user'scalendar page 3800 is depicted. The user'scalendar page 3800 represents an updated version of the user'scalendar page 3500 illustrated inFIG. 35 . Note that the appointment that was scheduled is now shown as being confirmed and theconfirmation indicator 3504 is removed. Similarly, from the perspective of the first user, once the appointment has been confirmed, the user's calendar of the first user is also updated to indicate that the appointment is now confirmed.FIG. 39 is a user's calendar screen in which a user'scalendar page 3900 is depicted. The user'scalendar page 3900 represents the user's calendar (i.e., the first user's calendar) after the appointment has been confirmed by the second user. Note that in comparison with the user'scalendar page 3300 illustrated inFIG. 33 , the status of the appointment has been changed from “pending” to “confirmed”. - The user could specify a period during the day in which they desire an appointment, and then the available days for those times would be displayed for user selection. In other words, although the on-line appointment system is largely described as displaying time slots available on a given day (e.g.,
FIG. 26 ), the system could equally display available days in which certain time slots are available for appointments. In other words, the system can serve to identify available slots to the user desirous of requesting an appointment. These slots can, for example, represent available time periods or available days. - A combination of hardware and software components can be used to implement techniques for providing on-line appointments described herein. The software can be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data which can be thereafter be read by a computer system. Examples of the computer readable medium include read-only memory, random-access memory, CD-ROMs, magnetic tape, optical data storage devices. The computer readable medium can also be distributed over a network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.
- In one embodiment the appointment server is implemented on a computer operating Windows NT operating system and provides a web server. The web server stores Active Server Pages (ASP) that perform the interactions with the database(s) and generate the pages to be displayed to requestors.
- The advantages of the techniques for providing on-line appointments are numerous. Different embodiments or implementations may have one or more of the following advantages. One advantage is that appointments can be efficiently established on-line at any time day or night. Appointments can also be established without the need to waiting for personal assistance to schedule an appointment with a service provider. Another advantage is that user can manage and schedule appointments using a website. Still another advantage is that customers can use a central website to make appointments with various service providers. Yet another advantage is that synchronization of calendars or appointments between those maintained by the central website and those on local computers.
- The many features and advantages of the techniques for providing on-line appointments are apparent from the written description. Further, since numerous modifications and changes will readily occur to those skilled in the art, it is not desired to limit the techniques for providing on-line appointments to the exact construction and operation as illustrated and described. Hence, suitable modifications and equivalents may be resorted to as falling within the scope of the techniques for providing on-line appointments described herein.
Claims (20)
1. A computer-implemented method comprising:
receiving, by an appointment service, appointment availability information from a server device associated with a business, the appointment availability information indicating services offered by the business, available appointment dates for the services, and available appointment times on the available appointment dates for the services;
receiving data indicative of selections from a user device through the appointment service to schedule an appointment for a selected one of the services, the selections indicating the selected one of the services and a selected one of the available appointment dates for the appointment;
exposing, by the appointment service, a webpage configured to include a calendar having at least the selected one of the available appointment dates;
determining the available appointment times on the selected one of the available appointment dates for the selected one of the services;
configuring, by the appointment service, the webpage to display the available appointment times on the selected one of the available appointment dates, the calendar and the available appointment times formatted to be concurrently displayed in separate, non-overlapping regions of the webpage;
receiving data indicative of a selected one of the available appointment times from the user device through the webpage; and
scheduling the appointment at the selected one of the available appointment times.
2. A method as recited in claim 1 , further comprising configuring, by the appointment service the webpage to display of a list of the services offered by the business, the selections including a selection indicating the selected one of the services.
3. A method as recited in claim 2 , wherein the scheduling of the appointment comprises updating a calendar of the business accessible via the server device.
4. A method as recited in claim 3 , wherein determining the available appointment times includes determining the available appointment times with respect to the calendar of the business.
5. A method as recited in claim 4 , further comprising sending data representing an appointment availability form to the server device corresponding to the business, the appointment availability form configured to collect the appointment availability information that is received by the appointment service.
6. A method as recited in claim 5 , wherein sending data representing an appointment availability form includes sending data representing a first region for gathering information on daily time periods of general availability for one or more selectable weekdays.
7. A method as recited in claim 6 , wherein sending data representing an appointment availability form further includes sending data representing a second region for gathering information on daily time periods of unavailability for the one or more selectable weekdays.
8. A method as recited in claim 7 , wherein sending data representing an appointment availability form further includes sending data representing a third region for gathering information on daily time periods of special availability for the one or more selectable weekdays.
9. A method as recited in claim 8 , wherein sending data representing an appointment availability form further includes sending data representing a region for gathering information on different appointment types offered by the business.
10. A method as recited in claim 9 , further comprising receiving the information gathered on the different appointment types offered by the business, wherein the gathered information includes respective names and durations for the different appointment types.
11. One or more computer-readable storage media comprising instructions that, in response to execution by an appointment server device, cause the appointment server device to perform acts comprising:
receive appointment availability information from at least one server device associated with a business through an appointment service managed by the appointment server device, the appointment availability information indicating services offered by the business, available appointment dates for the services, and available appointment times on the available appointment dates for the services;
generate a list of the services offered by the business to be made available to a user device through the appointment service;
receive data indicative of selections from the user device via the appointment service, the selections indicating a selected one of the services and a selected one of the available appointment dates for an appointment to be scheduled; and
send markup language data to the user device, the markup language data sufficient to enable rendering by the user device of a webpage that is configured to include a view of a calendar that indicates at least the selected one of the available appointment dates and a numerical list of the available appointment times on the selected one of the available appointment dates.
12. One or more computer-readable storage media as recited in claim 11 having further instructions to cause the appointment server device to perform acts comprising:
receive data from the user device indicative of a selection of one of the available appointment times from the numerical list of the available appointment times.
13. One or more computer-readable storage media as recited in claim 12 having further instructions to cause the appointment server device to perform acts comprising:
schedule the appointment on the selected one of the available appointment times responsive to the selection.
14. One or more computer-readable storage media as recited in claim 11 , wherein the calendar pertains to the user device, and wherein the view of the calendar indicates previously scheduled appointments associated with the user device on at least the selected one of the available appointment dates.
15. One or more computer-readable storage media as recited in claim 11 having further instructions to cause the appointment server device to perform acts comprising:
reproduce the markup language data to reflect a change to one or more of the selected one of the available appointment dates, the selected one of the services, or the predetermined duration responsive to the change.
16. One or more computer-readable storage media comprising instructions that, in response to execution by an appointment server device, cause the appointment server device to implement an online appointment system configured to:
receive appointment availability information from a plurality of server devices associated with a plurality of businesses, the appointment availability information identifying services offered by the plurality of businesses and available appointment times for the services;
receive data from a user device indicative of a selected business from the plurality of businesses and indicative of a request to schedule an appointment for one or more services offered by the selected business at a selected one of the available appointment times; and
request scheduling of the appointment at the selected one of the available appointment times.
17. One or more computer-readable storage media as recited in claim 16 , wherein the online appointment system is further configured to make data available for display of a list of selected ones of the plurality of businesses that offer a selected service in response to a query received from the user device.
18. One or more computer-readable storage media as recited in claim 16 , wherein the online appointment system is further configured to make available a webpage comprising a calendar that includes an available appointment date for the services, the available appointment date including one or more of the available appointment times from which the selected one of the available appointment times is selected.
19. One or more computer-readable storage media as recited in claim 16 , wherein the online appointment system is further configured to make data available for display of a list of the services offered by the selected business.
20. One or more computer-readable storage media as recited in claim 16 , wherein the online appointment system is configured to schedule the appointment by updating a calendar of the selected business maintained by an associated said server device of the plurality of server devices.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/710,174 US20100153162A1 (en) | 1999-08-18 | 2010-02-22 | On-Line Appointment System |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14934699P | 1999-08-18 | 1999-08-18 | |
US15420199P | 1999-09-15 | 1999-09-15 | |
US09/550,706 US8015049B1 (en) | 1999-08-18 | 2000-04-17 | On-line appointment system |
US12/710,174 US20100153162A1 (en) | 1999-08-18 | 2010-02-22 | On-Line Appointment System |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/550,706 Continuation US8015049B1 (en) | 1999-08-18 | 2000-04-17 | On-line appointment system |
Publications (1)
Publication Number | Publication Date |
---|---|
US20100153162A1 true US20100153162A1 (en) | 2010-06-17 |
Family
ID=42241630
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/550,706 Expired - Fee Related US8015049B1 (en) | 1999-08-18 | 2000-04-17 | On-line appointment system |
US09/551,825 Expired - Lifetime US7188073B1 (en) | 1999-08-18 | 2000-04-17 | On-line appointment system with electronic notifications |
US12/710,174 Abandoned US20100153162A1 (en) | 1999-08-18 | 2010-02-22 | On-Line Appointment System |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US09/550,706 Expired - Fee Related US8015049B1 (en) | 1999-08-18 | 2000-04-17 | On-line appointment system |
US09/551,825 Expired - Lifetime US7188073B1 (en) | 1999-08-18 | 2000-04-17 | On-line appointment system with electronic notifications |
Country Status (1)
Country | Link |
---|---|
US (3) | US8015049B1 (en) |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070233510A1 (en) * | 2006-03-17 | 2007-10-04 | Howes Paul L | Service transaction facilitation systems and methods |
US20080040188A1 (en) * | 2006-08-08 | 2008-02-14 | Skadool, Inc. | System and method for providing temporary and limited grants of calendar access |
US20090125358A1 (en) * | 2007-11-09 | 2009-05-14 | Michael Reynard | Integrated Appointment Scheduling And Targeted Advertising |
US20090150206A1 (en) * | 2007-12-07 | 2009-06-11 | Mci Communications Services | Notification system and method |
US20100094680A1 (en) * | 2008-10-14 | 2010-04-15 | Peter Ellis | System and method for providing web-based management solutions |
US20100269071A1 (en) * | 2009-04-16 | 2010-10-21 | International Business Machines Corporation | Integrating information sources |
US8015049B1 (en) | 1999-08-18 | 2011-09-06 | S.F. Ip Properties 61 Llc | On-line appointment system |
US20110314115A1 (en) * | 2010-06-18 | 2011-12-22 | Nagaraj Sharat | Automated Schedule Systems and Methods |
US20130055086A1 (en) * | 2011-08-25 | 2013-02-28 | Justin R. Labagh | Method and system for creating and maintaining activity plans |
US20130117701A1 (en) * | 2011-10-26 | 2013-05-09 | II Joseph I. Evans | System and Method for Coordinating a Multi-User Internet-Based Appointment Scheduler for Fashion and Related Arts |
JP2013190861A (en) * | 2012-03-12 | 2013-09-26 | Kajitaku Co Ltd | Housekeeping service reservation method |
US8620712B1 (en) * | 2007-01-26 | 2013-12-31 | Intuit Inc. | Method and system of intelligent matching for meetings |
US20140297318A1 (en) * | 2013-03-28 | 2014-10-02 | Mckesson Specialty Care Distribution Corporation | Systems and methods for automatically scheduling patient visits based on information in clinical notes of electronic medical records |
US20140365261A1 (en) * | 2013-06-10 | 2014-12-11 | Microsoft Corporation | Creating recurring appointments |
CN104228935A (en) * | 2013-06-11 | 2014-12-24 | 株式会社捷太格特 | Electric power steering device |
TWI494870B (en) * | 2013-07-29 | 2015-08-01 | yan ting Lin | A smart reservation and check-in system of mobile device |
US20150235183A1 (en) * | 2014-02-20 | 2015-08-20 | Evan SAMPSON | Computer-implemented method and system for scheduling appointments with clients |
US9136785B2 (en) | 2013-03-12 | 2015-09-15 | Steering Solutions Ip Holding Corporation | Motor control system to compensate for torque ripple |
US20150262089A1 (en) * | 2014-03-12 | 2015-09-17 | Reso Holdings, Inc. | System and method for one-click booking of a service event for a user |
US9143081B2 (en) | 2013-03-14 | 2015-09-22 | Steering Solutions Ip Holding Corporation | Motor control system having bandwidth compensation |
US9809247B2 (en) | 2015-01-30 | 2017-11-07 | Steering Solutions Ip Holding Corporation | Motor control current sensor loss of assist mitigation for electric power steering |
US10115078B2 (en) | 2013-03-11 | 2018-10-30 | Sony Corporation | Service scheduling system |
US10135368B2 (en) | 2016-10-01 | 2018-11-20 | Steering Solutions Ip Holding Corporation | Torque ripple cancellation algorithm involving supply voltage limit constraint |
US10389289B2 (en) | 2014-02-06 | 2019-08-20 | Steering Solutions Ip Holding Corporation | Generating motor control reference signal with control voltage budget |
US10636015B2 (en) | 2010-06-18 | 2020-04-28 | Sharat NAGARAJ | Automated schedule systems and methods |
US11094414B2 (en) | 2017-06-21 | 2021-08-17 | SmileDirectClub LLC | Arrangements for intraoral scanning |
US11246687B2 (en) | 2017-06-21 | 2022-02-15 | Sdc U.S. Smilepay Spv | Dental impression retake kit and methods therefor |
US11253409B2 (en) | 2017-06-21 | 2022-02-22 | Sdc U.S. Smilepay Spv | Systems and methods for mobile dentition scanning |
US11337778B2 (en) | 2017-06-21 | 2022-05-24 | Sdc U.S. Smilepay Spv | Distributed system for fabricating dental aligners |
US11382718B2 (en) | 2017-06-21 | 2022-07-12 | Sdc U.S. Smilepay Spv | Arrangements for remote orthodontic treatment |
US20220300912A1 (en) * | 2020-05-12 | 2022-09-22 | Lenovo (Singapore) Pte. Ltd. | Reserving conference in electronic calendar pursuant to electronic calendar restriction(s) |
US11556903B2 (en) * | 2020-08-30 | 2023-01-17 | VB Solutions, LLC | Method and application for automating automobile service provider tracking and communications |
US11957530B2 (en) | 2022-05-23 | 2024-04-16 | Sdc U.S. Smilepay Spv | Distributed system for fabricating dental aligners |
Families Citing this family (229)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7979382B2 (en) | 1999-05-04 | 2011-07-12 | Accenture Global Services Limited | Component based information linking during claim processing |
US7617240B2 (en) * | 1999-05-04 | 2009-11-10 | Accenture Llp | Component based task handling during claim processing |
US8601373B1 (en) | 1999-11-16 | 2013-12-03 | Ebay Inc. | Network-based sales system with customizable user interface |
US7447509B2 (en) * | 1999-12-22 | 2008-11-04 | Celeritasworks, Llc | Geographic management system |
US7664667B1 (en) * | 2000-01-10 | 2010-02-16 | Kevin Michael Ruppelt | Method, system, and program product for on-line service call scheduling |
US10115076B2 (en) * | 2000-04-21 | 2018-10-30 | Goalassist Corporation | System and method employing capacity/demand management for human-factor resources |
US7571254B1 (en) * | 2000-05-15 | 2009-08-04 | Access Systems Americas, Inc. | Mutual scheduling of events on handheld computers |
US7337123B2 (en) * | 2000-06-26 | 2008-02-26 | Epic Systems Corporation | Rules based ticketing for self-scheduling of appointments |
US6901444B1 (en) * | 2000-06-30 | 2005-05-31 | Sony Corporation | Method of and apparatus for communicating data structures between devices in a networking environment |
US20040260580A1 (en) * | 2000-12-22 | 2004-12-23 | Norihiko Takada | Facility reservation system, facility reservation apparatus, and facility reservation method |
US6826729B1 (en) * | 2001-06-29 | 2004-11-30 | Microsoft Corporation | Gallery user interface controls |
US7305491B2 (en) * | 2001-07-02 | 2007-12-04 | Intellisync Corporation | Techniques for handling time zone changes in personal information management software |
US7334000B2 (en) * | 2001-07-16 | 2008-02-19 | Aol Llc | Method and apparatus for calendaring reminders |
CN1628307A (en) * | 2001-07-20 | 2005-06-15 | 电子湾有限公司 | Automated listing management |
US20040039626A1 (en) * | 2001-09-26 | 2004-02-26 | Dirk Voorhees | System and method for tracking appointment data |
US10346767B2 (en) * | 2001-10-31 | 2019-07-09 | Goalassist Corporation | System and method employing capacity/demand management in prepared food service industry |
CA2424399A1 (en) * | 2002-04-04 | 2003-10-04 | Build-A-Bear Workshop, Inc. | Electronic meeting management system and an associated method of scheduling meetings |
US7395221B2 (en) | 2002-05-09 | 2008-07-01 | International Business Machines Corporation | Intelligent free-time search |
US7865387B2 (en) * | 2002-05-23 | 2011-01-04 | Aol Inc. | Method and system for scheduling a meeting for a set of attendees via a special attendee |
US20030233265A1 (en) * | 2002-06-17 | 2003-12-18 | International Business Machines Corporation | Method, system and program product for interactive electronic meeting scheduling |
US7814055B2 (en) * | 2002-08-28 | 2010-10-12 | Apple Inc. | Method of managing a calendar and a computer system for implementing that method |
EP2584510A3 (en) * | 2002-09-09 | 2013-10-09 | Apple Inc. | A computer program comprising a plurality of calendars |
AU2003263107A1 (en) * | 2002-09-09 | 2004-03-29 | Apple Computer, Inc. | A method of managing a calendar and a computer system for implementing that method |
US7734028B2 (en) * | 2002-09-30 | 2010-06-08 | Avaya Inc. | Method and apparatus for delivering enhanced caller identification services to a called party |
US7472170B2 (en) | 2003-02-13 | 2008-12-30 | Bruce Zak | System and method for managing content on a network interface |
US7793233B1 (en) | 2003-03-12 | 2010-09-07 | Microsoft Corporation | System and method for customizing note flags |
US7774799B1 (en) | 2003-03-26 | 2010-08-10 | Microsoft Corporation | System and method for linking page content with a media file and displaying the links |
US7454763B2 (en) | 2003-03-26 | 2008-11-18 | Microsoft Corporation | System and method for linking page content with a video media file and displaying the links |
US20040193458A1 (en) * | 2003-03-26 | 2004-09-30 | Bear Barbara E. | Method and system for matching an open appointment to a client |
US7116976B2 (en) | 2003-12-08 | 2006-10-03 | Thomas C Douglass | Adaptable communication techniques for electronic devices |
US7590695B2 (en) | 2003-05-09 | 2009-09-15 | Aol Llc | Managing electronic messages |
US8126742B2 (en) | 2003-05-09 | 2012-02-28 | Accenture Global Services Limited | Automated assignment of insurable events |
US7739602B2 (en) | 2003-06-24 | 2010-06-15 | Aol Inc. | System and method for community centric resource sharing based on a publishing subscription model |
US9715678B2 (en) * | 2003-06-26 | 2017-07-25 | Microsoft Technology Licensing, Llc | Side-by-side shared calendars |
US7392249B1 (en) | 2003-07-01 | 2008-06-24 | Microsoft Corporation | Methods, systems, and computer-readable mediums for providing persisting and continuously updating search folders |
US7707255B2 (en) * | 2003-07-01 | 2010-04-27 | Microsoft Corporation | Automatic grouping of electronic mail |
US8799808B2 (en) | 2003-07-01 | 2014-08-05 | Microsoft Corporation | Adaptive multi-line view user interface |
US7716593B2 (en) | 2003-07-01 | 2010-05-11 | Microsoft Corporation | Conversation grouping of electronic mail records |
US7373603B1 (en) | 2003-09-18 | 2008-05-13 | Microsoft Corporation | Method and system for providing data reference information |
US10437964B2 (en) | 2003-10-24 | 2019-10-08 | Microsoft Technology Licensing, Llc | Programming interface for licensing |
US20050114167A1 (en) * | 2003-11-21 | 2005-05-26 | Mcevoy Dean | Booking system and method |
US7729688B2 (en) | 2003-12-08 | 2010-06-01 | Ipventure, Inc. | Systems and processes to manage multiple modes of communication |
US7620562B2 (en) * | 2003-12-24 | 2009-11-17 | Time Warner Cable, Inc. | Online installation scheduling system and method for cable services |
US8219436B2 (en) * | 2003-12-24 | 2012-07-10 | Time Warner Cable, Inc. | Online installation scheduling system and method for cable services |
US8489442B1 (en) * | 2004-02-02 | 2013-07-16 | Avaya Inc. | Interface for meeting facilitation and coordination, method and apparatus |
US20050193011A1 (en) * | 2004-02-03 | 2005-09-01 | Wizard Co., Inc. | System and method for integrating reservation information with personal information management |
US7555707B1 (en) | 2004-03-12 | 2009-06-30 | Microsoft Corporation | Method and system for data binding in a block structured user interface scripting language |
US20050227216A1 (en) * | 2004-04-12 | 2005-10-13 | Gupta Puneet K | Method and system for providing access to electronic learning and social interaction within a single application |
US20050256737A1 (en) * | 2004-05-17 | 2005-11-17 | Liu Hsaio-Feng D | System and method for facilitating meetings between pharmaceutical sales representatives and physicians |
US7991637B1 (en) | 2004-05-24 | 2011-08-02 | Apple Inc. | Freeform communication in calendaring system |
US20080140458A1 (en) * | 2004-07-02 | 2008-06-12 | Roderick James Moore | Online Booking Method and System |
US7895531B2 (en) | 2004-08-16 | 2011-02-22 | Microsoft Corporation | Floating command object |
US8117542B2 (en) | 2004-08-16 | 2012-02-14 | Microsoft Corporation | User interface for displaying selectable software functionality controls that are contextually relevant to a selected object |
US7703036B2 (en) | 2004-08-16 | 2010-04-20 | Microsoft Corporation | User interface for displaying selectable software functionality controls that are relevant to a selected object |
US8255828B2 (en) | 2004-08-16 | 2012-08-28 | Microsoft Corporation | Command user interface for displaying selectable software functionality controls |
US8146016B2 (en) | 2004-08-16 | 2012-03-27 | Microsoft Corporation | User interface for displaying a gallery of formatting options applicable to a selected object |
US9015621B2 (en) | 2004-08-16 | 2015-04-21 | Microsoft Technology Licensing, Llc | Command user interface for displaying multiple sections of software functionality controls |
US9552599B1 (en) | 2004-09-10 | 2017-01-24 | Deem, Inc. | Platform for multi-service procurement |
US7712049B2 (en) * | 2004-09-30 | 2010-05-04 | Microsoft Corporation | Two-dimensional radial user interface for computer software applications |
US7747966B2 (en) | 2004-09-30 | 2010-06-29 | Microsoft Corporation | User interface for providing task management and calendar information |
US7788589B2 (en) * | 2004-09-30 | 2010-08-31 | Microsoft Corporation | Method and system for improved electronic task flagging and management |
US20070203769A1 (en) * | 2005-10-14 | 2007-08-30 | Thomas Tracey R | Method of selecting and matching professionals |
JP5112613B2 (en) * | 2004-10-15 | 2013-01-09 | エスアーペー アーゲー | Activity management system and method, activity management apparatus, client terminal, and computer program |
US9324083B2 (en) * | 2004-11-18 | 2016-04-26 | Dean Thomas McEvoy | Booking system and method |
US7856483B2 (en) * | 2004-12-10 | 2010-12-21 | Microsoft Corporation | Information management systems with time zone information, including event scheduling processes |
US20060184885A1 (en) * | 2005-02-15 | 2006-08-17 | International Business Machines Corporation | Scheduling parts of meetings using electronic calendars |
US8060539B2 (en) * | 2005-02-24 | 2011-11-15 | Research In Motion Limited | Method of notifying an invitee to an event of changes to the event in an electronic calendar system |
US7640507B2 (en) * | 2005-02-28 | 2009-12-29 | At&T Intellectual Property I, L.P. | Methods, systems, and products for calendaring applications |
US7925990B2 (en) * | 2005-03-31 | 2011-04-12 | At&T Intellectual Property I, L. P. | Methods, systems, and products for calendaring applications |
US7886290B2 (en) * | 2005-06-16 | 2011-02-08 | Microsoft Corporation | Cross version and cross product user interface |
US8180663B2 (en) * | 2005-06-28 | 2012-05-15 | Microsoft Corporation | Facilitating automated meeting scheduling |
US8239882B2 (en) | 2005-08-30 | 2012-08-07 | Microsoft Corporation | Markup based extensibility for user interfaces |
US8689137B2 (en) * | 2005-09-07 | 2014-04-01 | Microsoft Corporation | Command user interface for displaying selectable functionality controls in a database application |
US9542667B2 (en) * | 2005-09-09 | 2017-01-10 | Microsoft Technology Licensing, Llc | Navigating messages within a thread |
US7739259B2 (en) | 2005-09-12 | 2010-06-15 | Microsoft Corporation | Integrated search and find user interface |
US8627222B2 (en) | 2005-09-12 | 2014-01-07 | Microsoft Corporation | Expanded search and find user interface |
US8204950B2 (en) * | 2005-09-15 | 2012-06-19 | Qwest Communications International Inc. | Webpage search |
US20070067300A1 (en) * | 2005-09-16 | 2007-03-22 | Ollis Jeffrey D | Network alarm clock communicating alarm settings over a wireless or other local area network |
US7933786B2 (en) * | 2005-11-01 | 2011-04-26 | Accenture Global Services Limited | Collaborative intelligent task processor for insurance claims |
US8170189B2 (en) | 2005-11-02 | 2012-05-01 | Qwest Communications International Inc. | Cross-platform message notification |
US7676473B2 (en) | 2005-12-02 | 2010-03-09 | Qwest Communications International, Inc. | Propagation of user preferences to end devices |
US9117223B1 (en) | 2005-12-28 | 2015-08-25 | Deem, Inc. | Method and system for resource planning for service provider |
US7747557B2 (en) * | 2006-01-05 | 2010-06-29 | Microsoft Corporation | Application of metadata to documents and document objects via an operating system user interface |
US7797638B2 (en) * | 2006-01-05 | 2010-09-14 | Microsoft Corporation | Application of metadata to documents and document objects via a software application user interface |
US8825507B1 (en) * | 2006-02-03 | 2014-09-02 | Liveops, Inc. | System and method for self-scheduling of service representatives |
US7984378B1 (en) | 2006-02-07 | 2011-07-19 | Avaya Inc. | Management of meetings by grouping |
US9323821B2 (en) * | 2006-04-05 | 2016-04-26 | Qwest Communications International Inc. | Network repository auto sync wireless handset |
US20070239832A1 (en) * | 2006-04-05 | 2007-10-11 | Qwest Communications International Inc. | Communication presentation in a calendar perspective |
US8078476B2 (en) | 2006-04-05 | 2011-12-13 | Qwest Communications International Inc. | Cross-platform calendar notifications |
US8320535B2 (en) * | 2006-04-06 | 2012-11-27 | Qwest Communications International Inc. | Selectable greeting messages |
US8214469B2 (en) * | 2006-04-06 | 2012-07-03 | Qwest Communications International Inc. | Multiple use of common perspectives |
US20070245229A1 (en) * | 2006-04-17 | 2007-10-18 | Microsoft Corporation | User experience for multimedia mobile note taking |
US20070245223A1 (en) * | 2006-04-17 | 2007-10-18 | Microsoft Corporation | Synchronizing multimedia mobile notes |
US8600794B2 (en) | 2006-05-10 | 2013-12-03 | Avaya Inc. | Meeting notification and merging agents |
US8819751B2 (en) | 2006-05-16 | 2014-08-26 | Qwest Communications International Inc. | Socially networked television experience |
US20080005680A1 (en) * | 2006-05-18 | 2008-01-03 | Andrews Mcmeel Publishing, Inc. | Electronic Calendar |
US8605090B2 (en) | 2006-06-01 | 2013-12-10 | Microsoft Corporation | Modifying and formatting a chart using pictorially provided chart elements |
US9727989B2 (en) | 2006-06-01 | 2017-08-08 | Microsoft Technology Licensing, Llc | Modifying and formatting a chart using pictorially provided chart elements |
US7865386B2 (en) * | 2006-06-03 | 2011-01-04 | Sarkar Shyamal K | Appointment scheduling system |
US20070288278A1 (en) * | 2006-06-13 | 2007-12-13 | International Business Machines Corporation | Method and system for automatically scheduling and managing agendas for presentation-style meetings |
US7716078B2 (en) * | 2006-06-30 | 2010-05-11 | Intercollegiate Sports Scheduling, Llc | System and method for web-based sports event scheduling |
KR100755881B1 (en) * | 2006-06-30 | 2007-09-06 | 주식회사 모리스 | Sliding pen |
US7778858B1 (en) | 2006-07-17 | 2010-08-17 | Avaya Inc. | Linking unable to respond messages to entries in electronic calendar |
US9058595B2 (en) | 2006-08-04 | 2015-06-16 | Apple Inc. | Methods and systems for managing an electronic calendar |
US20080065459A1 (en) * | 2006-09-13 | 2008-03-13 | Motorola, Inc. | Method and apparatus facilitating goal based intelligent calendar management using policies and data analysis |
US20080082980A1 (en) * | 2006-09-28 | 2008-04-03 | Edge Inova International, Inc. | System and method for using filters and standardized messages to identify and schedule appointments in aggregate resource scheduling applications |
WO2008051961A2 (en) * | 2006-10-24 | 2008-05-02 | Mid-America Consulting Group | Invitee-participant matching for meeting scheduling |
US10445703B1 (en) | 2006-10-30 | 2019-10-15 | Avaya Inc. | Early enough reminders |
US7693736B1 (en) | 2006-10-30 | 2010-04-06 | Avaya Inc. | Recurring meeting schedule wizard |
US8037143B1 (en) * | 2006-10-30 | 2011-10-11 | Avaya Inc. | Automatic display of email distribution lists |
US7707518B2 (en) | 2006-11-13 | 2010-04-27 | Microsoft Corporation | Linking information |
US7761785B2 (en) | 2006-11-13 | 2010-07-20 | Microsoft Corporation | Providing resilient links |
US10489749B2 (en) * | 2006-11-14 | 2019-11-26 | Microsoft Technology Licensing, Llc | Presenting daily task lists |
US8578301B2 (en) * | 2006-11-22 | 2013-11-05 | Skadool, Inc. | Hierarchical events |
US20080134344A1 (en) * | 2006-12-01 | 2008-06-05 | Mcbrearty Gerald Francis | Restricting access to calendar entries |
US20080162614A1 (en) * | 2006-12-28 | 2008-07-03 | Nokia Corporation | Apparatus, method and computer program product providing calendar application with automatic decision making for received invitation based on parameter sets |
US7827240B1 (en) | 2007-01-02 | 2010-11-02 | Avaya Inc. | Calendar item hierarchy for automatic specialization |
US20080167911A1 (en) * | 2007-01-09 | 2008-07-10 | Microsoft Corporation | Scheduling integration for providing business automation |
US8065175B1 (en) * | 2007-01-30 | 2011-11-22 | Intuit Inc. | System and method for relational scheduling of people and/or resources |
US20080186807A1 (en) * | 2007-02-02 | 2008-08-07 | Research In Motion Limited | Electronic device and method of controlling an electronic device for calendar event updates |
US9552571B2 (en) * | 2007-02-02 | 2017-01-24 | Blackberry Limited | Electronic device and method of meeting notification |
US20080191896A1 (en) * | 2007-02-09 | 2008-08-14 | Jain Rohit Rocky | Electronic device and method of adding parties to a calendar event |
US7849056B2 (en) * | 2007-02-09 | 2010-12-07 | Research In Motion Limited | System and method for managing databases associated with respective personal information manager service accounts |
US20080195455A1 (en) * | 2007-02-09 | 2008-08-14 | Research In Motion Limited | Electronic device and method of scheduling calendar events |
WO2008113153A1 (en) * | 2007-03-20 | 2008-09-25 | Tungle Corporation | Method and apparatus for sharing calendar information |
US20080275741A1 (en) * | 2007-05-02 | 2008-11-06 | Loeffen Karin M | Method and system for an online reservation system for services selectable from multiple categories |
US20080307323A1 (en) * | 2007-06-10 | 2008-12-11 | Patrick Lee Coffman | Calendaring techniques and systems |
US20080313005A1 (en) * | 2007-06-15 | 2008-12-18 | Edgelnova International, Inc. | System and method for real-time scheduling of human and non-human resources |
WO2009002066A2 (en) * | 2007-06-22 | 2008-12-31 | Samsung Electronics Co., Ltd. | System and method for deferred message reminders and expiry extension |
US8060395B1 (en) * | 2007-06-28 | 2011-11-15 | Intuit Inc. | Method and system for priority-based appointment scheduling |
US8762880B2 (en) | 2007-06-29 | 2014-06-24 | Microsoft Corporation | Exposing non-authoring features through document status information in an out-space user interface |
US8201103B2 (en) | 2007-06-29 | 2012-06-12 | Microsoft Corporation | Accessing an out-space user interface for a document editor program |
US8484578B2 (en) | 2007-06-29 | 2013-07-09 | Microsoft Corporation | Communication between a document editor in-space user interface and a document editor out-space user interface |
US20090030742A1 (en) * | 2007-07-27 | 2009-01-29 | Rearden Commerce, Inc. | System and Method for Tentative Booking When Service Providers are Temporarily Unavailable |
US8214241B2 (en) | 2007-08-20 | 2012-07-03 | Peter Kaiser | System and method for web-based customer check-in |
US8099308B2 (en) * | 2007-10-02 | 2012-01-17 | Honda Motor Co., Ltd. | Method and system for vehicle service appointments based on diagnostic trouble codes |
US20090106036A1 (en) * | 2007-10-22 | 2009-04-23 | Kazuya Tamura | Method and system for making automated appointments |
US20090112722A1 (en) * | 2007-10-26 | 2009-04-30 | Springthrough Consulting, Inc. | Centralized consumer notification system |
US20100145801A1 (en) * | 2007-11-01 | 2010-06-10 | Jagannadha Raju Chekuri | Methods and systems for a time-aware or calendar-aware facilitator to improve utilization of time-sensitive or perishable resources |
US20090138822A1 (en) * | 2007-11-28 | 2009-05-28 | International Business Machines Corporation | Method of flexibly blocking out busy-time in calendars |
US20090153353A1 (en) * | 2007-12-13 | 2009-06-18 | Neil Adams | Method and apparatus for generating a notification at a computing device |
US8161419B2 (en) * | 2007-12-17 | 2012-04-17 | Smooth Productions Inc. | Integrated graphical user interface and system with focusing |
US8510123B2 (en) * | 2007-12-17 | 2013-08-13 | Smooth Productions Inc. | Communications system and method for serving electronic content |
US8655714B2 (en) | 2007-12-28 | 2014-02-18 | International Business Machines Corporation | Automatic time-zone sensitive scheduling |
TWI351849B (en) * | 2007-12-31 | 2011-11-01 | Ind Tech Res Inst | Apparatus and method for transmitting streaming se |
US20090171737A1 (en) * | 2007-12-31 | 2009-07-02 | Cecilio Vladimir Polanco | Vehicle Sales Space System |
US7839723B2 (en) * | 2008-02-13 | 2010-11-23 | Research In Motion Limited | Electronic device and method of controlling reminder notifications |
US20090217146A1 (en) * | 2008-02-22 | 2009-08-27 | Eugene Goldfarb | Page navigation generation system for a customizable application |
US8478769B2 (en) * | 2008-02-22 | 2013-07-02 | Accenture Global Services Limited | Conversational question generation system adapted for an insurance claim processing system |
US8515786B2 (en) * | 2008-02-22 | 2013-08-20 | Accenture Global Services Gmbh | Rule generation system adapted for an insurance claim processing system |
US20090217201A1 (en) * | 2008-02-27 | 2009-08-27 | Andrew Bocking | Hybrid calendar |
US9588781B2 (en) * | 2008-03-31 | 2017-03-07 | Microsoft Technology Licensing, Llc | Associating command surfaces with multiple active components |
US8341184B2 (en) | 2008-05-07 | 2012-12-25 | Smooth Productions Inc. | Communications network system and service provider |
US20090313074A1 (en) * | 2008-06-11 | 2009-12-17 | International Business Machines Corporation | Enhanced viewing/updating of calendar entries based upon relationships between a viewer and a calendar owner and a relative importance value of the calendar entries |
US8243719B1 (en) | 2008-06-17 | 2012-08-14 | United States Automobile Association (USAA) | Systems and methods for call scheduling |
US9665850B2 (en) | 2008-06-20 | 2017-05-30 | Microsoft Technology Licensing, Llc | Synchronized conversation-centric message list and message reading pane |
US8402096B2 (en) | 2008-06-24 | 2013-03-19 | Microsoft Corporation | Automatic conversation techniques |
BRPI0913924B1 (en) * | 2008-07-01 | 2020-02-04 | Univ Leland Stanford Junior | method for determining the likelihood that a female individual will experience a life-giving birth event |
US20100036701A1 (en) * | 2008-08-06 | 2010-02-11 | Parran Foster | Physician And Medical Vender Appointment Coordination Method |
US20100076807A1 (en) * | 2008-09-22 | 2010-03-25 | Research In Motion Limited | Method and apparatus for controlling an electronic device |
US20100082391A1 (en) * | 2008-09-26 | 2010-04-01 | Soerensen Ebbe Bruun | Method, device, and system for appointment messaging |
US20100094739A1 (en) | 2008-10-14 | 2010-04-15 | Peter Ellis | System and method for providing transaction-based profit solutions |
US20100241480A1 (en) * | 2008-12-31 | 2010-09-23 | Research In Motion Limited | System and Method for Dynamic Manipulation of Data Describing User Availability |
US8073725B2 (en) * | 2009-01-26 | 2011-12-06 | John Loring | Appointment scheduling system |
US20100191552A1 (en) * | 2009-01-27 | 2010-07-29 | Patrick Behrens | Apparatus, method and article to facilitate propagation of current appointment availability in a network environment |
US8799353B2 (en) * | 2009-03-30 | 2014-08-05 | Josef Larsson | Scope-based extensibility for control surfaces |
US8671009B1 (en) | 2009-04-28 | 2014-03-11 | Schedulicity Inc. | Systems and methods for on-line scheduling of appointments and other resources |
US10552849B2 (en) | 2009-04-30 | 2020-02-04 | Deem, Inc. | System and method for offering, tracking and promoting loyalty rewards |
US9046983B2 (en) | 2009-05-12 | 2015-06-02 | Microsoft Technology Licensing, Llc | Hierarchically-organized control galleries |
US20110015959A1 (en) * | 2009-07-16 | 2011-01-20 | Edward Darreff | Appointment alert system and method |
US8707206B1 (en) * | 2009-08-24 | 2014-04-22 | West Corporation | Method and system of providing enhanced appointment notification service to mobile devices |
US20110054978A1 (en) * | 2009-09-03 | 2011-03-03 | Rakshat Singh Mohil | Method and system for providing marketplace calendaring |
US20110119079A1 (en) * | 2009-11-19 | 2011-05-19 | American Well Corporation | Connecting Consumers with Service Providers |
US20110153380A1 (en) * | 2009-12-22 | 2011-06-23 | Verizon Patent And Licensing Inc. | Method and system of automated appointment management |
US20110173221A1 (en) * | 2010-01-13 | 2011-07-14 | Microsoft Corporation | Calendar expand grid |
US20110179358A1 (en) * | 2010-01-19 | 2011-07-21 | Rajesh Gautam | System For Managing A Plurality of Appointments, Events, and Reminders |
US20120203579A1 (en) * | 2010-06-10 | 2012-08-09 | Gobookings Systems Pty Ltd | System for booking a time period for utilising a time based service or resource |
US8302014B2 (en) | 2010-06-11 | 2012-10-30 | Microsoft Corporation | Merging modifications to user interface components while preserving user customizations |
CN102947857A (en) | 2010-06-20 | 2013-02-27 | 尤尼维公司 | Decision support systems (DSSs) and electronic health records (EHRs) |
US9348972B2 (en) | 2010-07-13 | 2016-05-24 | Univfy Inc. | Method of assessing risk of multiple births in infertility treatments |
US10665040B2 (en) | 2010-08-27 | 2020-05-26 | Zonar Systems, Inc. | Method and apparatus for remote vehicle diagnosis |
US10600096B2 (en) | 2010-11-30 | 2020-03-24 | Zonar Systems, Inc. | System and method for obtaining competitive pricing for vehicle services |
US20120136743A1 (en) * | 2010-11-30 | 2012-05-31 | Zonar Systems, Inc. | System and method for obtaining competitive pricing for vehicle services |
USD774529S1 (en) | 2010-11-04 | 2016-12-20 | Bank Of America Corporation | Display screen with graphical user interface for funds transfer |
US8639550B2 (en) * | 2010-11-05 | 2014-01-28 | Timetrade Systems, Inc. | Availability-based contact routing and scheduling system |
USD774526S1 (en) | 2011-02-21 | 2016-12-20 | Bank Of America Corporation | Display screen with graphical user interface for funds transfer |
USD774527S1 (en) | 2011-02-21 | 2016-12-20 | Bank Of America Corporation | Display screen with graphical user interface for funds transfer |
USD774528S1 (en) | 2011-02-21 | 2016-12-20 | Bank Of America Corporation | Display screen with graphical user interface for funds transfer |
US8677112B2 (en) * | 2011-04-29 | 2014-03-18 | Sap Ag | Automatic notification based on generic storage framework |
US9449288B2 (en) | 2011-05-20 | 2016-09-20 | Deem, Inc. | Travel services search |
US20130006691A1 (en) * | 2011-06-30 | 2013-01-03 | Arthur Jill E | Scheduling and payment systems and methods |
US10388103B1 (en) * | 2011-09-22 | 2019-08-20 | Genesis Gaming Solutions, Inc. | Data transport system and method for hospitality industry |
US9934361B2 (en) | 2011-09-30 | 2018-04-03 | Univfy Inc. | Method for generating healthcare-related validated prediction models from multiple sources |
US9514447B2 (en) * | 2011-12-27 | 2016-12-06 | Dassault Systemes Americas Corp. | Multi-horizon time wheel |
US8849689B1 (en) * | 2012-01-23 | 2014-09-30 | Intuit Inc. | Method and system for providing dynamic appointment scheduling and tracking |
US20130253972A1 (en) * | 2012-03-21 | 2013-09-26 | Opendoctors 247, Inc. | System and method for scheduling and ordering services |
WO2013159173A1 (en) * | 2012-04-26 | 2013-10-31 | Research In Motion Limited | Methods and apparatus for the management and viewing of calendar event information |
US20140006081A1 (en) * | 2012-07-02 | 2014-01-02 | Stephen D David | System, software, and method for consolidating appointment information |
USD770478S1 (en) | 2012-09-07 | 2016-11-01 | Bank Of America Corporation | Communication device with graphical user interface |
US9679274B1 (en) | 2012-10-18 | 2017-06-13 | Amazon Technologies, Inc. | Time proposals using variable access to time block information |
US10339503B1 (en) | 2012-10-18 | 2019-07-02 | Amazon Technologies, Inc. | Variable access to time block information |
US20140136262A1 (en) * | 2012-11-12 | 2014-05-15 | goHairCut.com, Inc. | Service management system and methods for facilitating on-demand services |
US20140136259A1 (en) * | 2012-11-15 | 2014-05-15 | Grant Stephen Kinsey | Methods and systems for the sale of consumer services |
US9015604B2 (en) | 2012-11-26 | 2015-04-21 | Microsoft Technology Licensing, Llc | Calendaring between user profiles |
US20140222482A1 (en) * | 2013-02-05 | 2014-08-07 | Wal-Mart Stores, Inc. | Online appointment schedulers |
US10726393B2 (en) * | 2013-03-04 | 2020-07-28 | OpenMed, Inc. | Appointment scheduling |
WO2014169268A1 (en) * | 2013-04-12 | 2014-10-16 | Biophysical Corporation, Inc. | System and method for identifying patients most likely to subscribe to a prevention program for type-2 diabetes |
US20150046209A1 (en) * | 2013-08-09 | 2015-02-12 | slipcal, PBC | System and method for providing calendar services to users |
US20150154566A1 (en) * | 2013-12-03 | 2015-06-04 | Vmware, Inc. | Productivity based meeting scheduler |
US10096002B2 (en) * | 2014-04-14 | 2018-10-09 | The Boeing Company | Time zone sensitive calendar |
US9978043B2 (en) * | 2014-05-30 | 2018-05-22 | Apple Inc. | Automatic event scheduling |
WO2016203378A1 (en) * | 2015-06-15 | 2016-12-22 | Mykali Australia Pty Ltd | Scheduling calendar events across different calendar applications and devices |
US10387845B2 (en) | 2015-07-10 | 2019-08-20 | Bank Of America Corporation | System for facilitating appointment calendaring based on perceived customer requirements |
US10387846B2 (en) | 2015-07-10 | 2019-08-20 | Bank Of America Corporation | System for affecting appointment calendaring on a mobile device based on dependencies |
US10198484B2 (en) * | 2015-09-10 | 2019-02-05 | Salesforce.Com, Inc. | Displaying reduced and detailed visual representations of calendar items based on mouse cursor movement |
US11188878B2 (en) * | 2015-09-22 | 2021-11-30 | International Business Machines Corporation | Meeting room reservation system |
US20170310746A1 (en) * | 2016-04-21 | 2017-10-26 | Sony J. ROUNDHILL | System for communicating with select group(s) of users and methods of use |
US10467599B1 (en) * | 2016-06-17 | 2019-11-05 | United Services Automobile Association (Usaa) | Dynamic event scheduling |
US10546275B2 (en) * | 2016-12-09 | 2020-01-28 | International Business Machines Corporation | Assisting user in managing a calendar application |
US20180260790A1 (en) * | 2017-03-07 | 2018-09-13 | Timetrade Systems, Inc. | Automated appointment scheduling |
USD832296S1 (en) * | 2017-08-29 | 2018-10-30 | FlowJo, LLC | Display screen or portion thereof with graphical user interface |
USD907062S1 (en) | 2017-08-29 | 2021-01-05 | FlowJo, LLC | Display screen or portion thereof with graphical user interface |
US20190102746A1 (en) * | 2017-10-02 | 2019-04-04 | Servicenow, Inc. | Systems and method for dynamic scheduling of service appointments |
JP2019191975A (en) * | 2018-04-26 | 2019-10-31 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | Talent selection device, talent selection system, talent selection method, and program |
US11178253B2 (en) * | 2019-01-11 | 2021-11-16 | Cartocal, LLC | Graphical user interface for generating multiple tasks |
US11068287B2 (en) | 2019-03-05 | 2021-07-20 | Bank Of America Corporation | Real-time generation of tailored recommendations associated with client interactions |
US11317059B1 (en) | 2019-03-25 | 2022-04-26 | Boehringer Ingelheim Animal Health USA Inc. | Method and system for managing communications between a veterinarian and a pet owner including video communications |
US11138862B2 (en) | 2019-03-29 | 2021-10-05 | Lenovo (Singapore) Pte. Ltd. | Systems and methods to electronically indicate whether conference room is in use based on sensor input |
US11915203B2 (en) | 2019-11-20 | 2024-02-27 | Polaris Industries Inc. | Vehicle service scheduling |
Citations (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4626836A (en) * | 1983-11-04 | 1986-12-02 | International Business Machines Corp. | Method of scheduling meetings |
US4807155A (en) * | 1987-01-29 | 1989-02-21 | International Business Machines Corporation | Electronic calendaring method for confirmation of resource availability during event calendaring |
US4831552A (en) * | 1987-01-29 | 1989-05-16 | International Business Machines Corporation | Method for concurrently displaying entries from a plurality of different electronic calendars based on interactively entered non-temporal criteria |
US4866611A (en) * | 1987-01-29 | 1989-09-12 | International Business Machines Corporation | Method for automatically reconciling entries on two copies of independently maintained electronic calendars |
US5093813A (en) * | 1984-01-05 | 1992-03-03 | Levine Alfred B | Multiple mode electronic scheduler |
US5197000A (en) * | 1990-07-09 | 1993-03-23 | International Business Machines Corporation | Method of scheduling meetings |
US5208748A (en) * | 1985-11-18 | 1993-05-04 | Action Technologies, Inc. | Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants |
US5261045A (en) * | 1987-12-18 | 1993-11-09 | International Business Machines Corporation | Method of exchanging entries from a plurality of different electronic calendars based on interactively entered criteria |
US5289531A (en) * | 1989-08-24 | 1994-02-22 | Levine Alfred B | Remote scheduling of appointments with interactivety using a caller's unit |
US5323314A (en) * | 1991-12-31 | 1994-06-21 | International Business Machines Corporation | Method and system for graphic representation of meeting parameters in a data processing system |
US5519606A (en) * | 1992-01-21 | 1996-05-21 | Starfish Software, Inc. | System and methods for appointment reconciliation |
US5524146A (en) * | 1992-04-17 | 1996-06-04 | Bell Atlantic Network Services, Inc. | Automatic access to communication service providers |
US5528745A (en) * | 1994-10-28 | 1996-06-18 | King; C. David | Method and system for the display of scheduling information for users within a single viewport |
US5530684A (en) * | 1988-06-03 | 1996-06-25 | Sharp Kabushiki Kaisha | Electronic device with calendar function |
US5615121A (en) * | 1995-01-31 | 1997-03-25 | U S West Technologies, Inc. | System and method for scheduling service providers to perform customer service requests |
US5772585A (en) * | 1996-08-30 | 1998-06-30 | Emc, Inc | System and method for managing patient medical records |
US5790974A (en) * | 1996-04-29 | 1998-08-04 | Sun Microsystems, Inc. | Portable calendaring device having perceptual agent managing calendar entries |
US5842173A (en) * | 1994-10-14 | 1998-11-24 | Strum; David P. | Computer-based surgical services management system |
US5848396A (en) * | 1996-04-26 | 1998-12-08 | Freedom Of Information, Inc. | Method and apparatus for determining behavioral profile of a computer user |
US5848395A (en) * | 1996-03-23 | 1998-12-08 | Edgar; James William Hardie | Appointment booking and scheduling system |
US5855006A (en) * | 1996-03-01 | 1998-12-29 | Humware | Personal activity scheduling apparatus |
US5889979A (en) * | 1996-05-24 | 1999-03-30 | Hewlett-Packard, Co. | Transparent data-triggered pipeline latch |
US5918207A (en) * | 1996-05-01 | 1999-06-29 | Electronic Data Systems Corporation | Process and system for predictive resource planning |
US5948040A (en) * | 1994-06-24 | 1999-09-07 | Delorme Publishing Co. | Travel reservation information and planning system |
US5960406A (en) * | 1998-01-22 | 1999-09-28 | Ecal, Corp. | Scheduling system for use between users on the web |
US5963913A (en) * | 1997-02-28 | 1999-10-05 | Silicon Graphics, Inc. | System and method for scheduling an event subject to the availability of requested participants |
US5970466A (en) * | 1997-10-06 | 1999-10-19 | Impromed, Inc. | Graphical computer system and method for appointment scheduling |
US5982863A (en) * | 1997-08-27 | 1999-11-09 | Phytel, Inc. | Communications system for a service provider |
US6018343A (en) * | 1996-09-27 | 2000-01-25 | Timecruiser Computing Corp. | Web calendar architecture and uses thereof |
US6038542A (en) * | 1998-04-28 | 2000-03-14 | Micron Electronics, Inc. | System for notifying an individual of a previously scheduled event |
US6049776A (en) * | 1997-09-06 | 2000-04-11 | Unisys Corporation | Human resource management system for staffing projects |
US6052563A (en) * | 1997-12-10 | 2000-04-18 | Motorola | Communication device controlled by appointment information stored therein, and method therefor |
US6058415A (en) * | 1997-07-24 | 2000-05-02 | Intervoice Limited Partnership | System and method for integration of communication systems with computer-based information systems |
US6064977A (en) * | 1998-06-19 | 2000-05-16 | International Business Machine Corporation | Web server with integrated scheduling and calendaring |
US6085166A (en) * | 1998-06-19 | 2000-07-04 | International Business Machines | Electronic calendar with group scheduling and asynchronous fan out method |
US6101480A (en) * | 1998-06-19 | 2000-08-08 | International Business Machines | Electronic calendar with group scheduling and automated scheduling techniques for coordinating conflicting schedules |
US6167379A (en) * | 1998-03-24 | 2000-12-26 | Siemens Information And Communication Networks, Inc. | System for user to accept or decline updating a calendar remotely with a proposed schedule update that may have schedule confliction |
US6216110B1 (en) * | 1998-02-27 | 2001-04-10 | Microsoft Corporation | System and method for publishing calendar information to a publicly accessible location |
US6236396B1 (en) * | 1992-05-27 | 2001-05-22 | Apple Computer, Inc. | Method and apparatus for controlling a scheduler |
US20010011225A1 (en) * | 1999-06-01 | 2001-08-02 | O'connor Patrick Thomas | Internet subscription system for providing appointment management for small businesses |
US6272545B1 (en) * | 1997-10-24 | 2001-08-07 | Microsoft Corporation | System and method for interaction between one or more desktop computers and one or more mobile devices |
US6313852B1 (en) * | 1998-01-07 | 2001-11-06 | Hitachi, Ltd. | Scheduling management system and its process control method |
US6341316B1 (en) * | 1999-09-10 | 2002-01-22 | Avantgo, Inc. | System, method, and computer program product for synchronizing content between a server and a client based on state information |
US6345260B1 (en) * | 1997-03-17 | 2002-02-05 | Allcare Health Management System, Inc. | Scheduling interface system and method for medical professionals |
US6389454B1 (en) * | 1999-05-13 | 2002-05-14 | Medical Specialty Software | Multi-facility appointment scheduling system |
US6396510B1 (en) * | 1996-06-21 | 2002-05-28 | Intel Corporation | Method and apparatus for scheduling a multi-point electronic conference |
US6457062B1 (en) * | 1999-04-08 | 2002-09-24 | Palm, Inc. | System and method for synchronizing multiple calendars over wide area network |
US6480830B1 (en) * | 1998-01-29 | 2002-11-12 | International Business Machines Corporation | Active calendar system |
US20030061087A1 (en) * | 2002-07-15 | 2003-03-27 | Paul Srimuang | Calendar scheduling of multiple persons resources and consumables with group access view restriction |
US6553037B1 (en) * | 1999-04-08 | 2003-04-22 | Palm, Inc. | System and method for synchronizing data among a plurality of users via an intermittently accessed network |
US6708205B2 (en) * | 2001-02-15 | 2004-03-16 | Suffix Mail, Inc. | E-mail messaging system |
US6785868B1 (en) * | 2000-05-31 | 2004-08-31 | Palm Source, Inc. | Method and apparatus for managing calendar information from a shared database and managing calendar information from multiple users |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7127412B2 (en) | 1999-06-07 | 2006-10-24 | Pointserve, Inc. | Method and system for allocating specific appointment time windows in a service industry |
US8015049B1 (en) | 1999-08-18 | 2011-09-06 | S.F. Ip Properties 61 Llc | On-line appointment system |
WO2001052145A1 (en) * | 2000-01-14 | 2001-07-19 | Scheduleonline, Inc. | Calendar scheduling of multiple persons resources and consumables with group access view restriction |
-
2000
- 2000-04-17 US US09/550,706 patent/US8015049B1/en not_active Expired - Fee Related
- 2000-04-17 US US09/551,825 patent/US7188073B1/en not_active Expired - Lifetime
-
2010
- 2010-02-22 US US12/710,174 patent/US20100153162A1/en not_active Abandoned
Patent Citations (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4626836A (en) * | 1983-11-04 | 1986-12-02 | International Business Machines Corp. | Method of scheduling meetings |
US5093813A (en) * | 1984-01-05 | 1992-03-03 | Levine Alfred B | Multiple mode electronic scheduler |
US5208748A (en) * | 1985-11-18 | 1993-05-04 | Action Technologies, Inc. | Method and apparatus for structuring and managing human communications by explicitly defining the types of communications permitted between participants |
US4807155A (en) * | 1987-01-29 | 1989-02-21 | International Business Machines Corporation | Electronic calendaring method for confirmation of resource availability during event calendaring |
US4831552A (en) * | 1987-01-29 | 1989-05-16 | International Business Machines Corporation | Method for concurrently displaying entries from a plurality of different electronic calendars based on interactively entered non-temporal criteria |
US4866611A (en) * | 1987-01-29 | 1989-09-12 | International Business Machines Corporation | Method for automatically reconciling entries on two copies of independently maintained electronic calendars |
US5261045A (en) * | 1987-12-18 | 1993-11-09 | International Business Machines Corporation | Method of exchanging entries from a plurality of different electronic calendars based on interactively entered criteria |
US5530684A (en) * | 1988-06-03 | 1996-06-25 | Sharp Kabushiki Kaisha | Electronic device with calendar function |
US5289531A (en) * | 1989-08-24 | 1994-02-22 | Levine Alfred B | Remote scheduling of appointments with interactivety using a caller's unit |
US5197000A (en) * | 1990-07-09 | 1993-03-23 | International Business Machines Corporation | Method of scheduling meetings |
US5323314A (en) * | 1991-12-31 | 1994-06-21 | International Business Machines Corporation | Method and system for graphic representation of meeting parameters in a data processing system |
US5778346A (en) * | 1992-01-21 | 1998-07-07 | Starfish Software, Inc. | System and methods for appointment reconcilation |
US5519606A (en) * | 1992-01-21 | 1996-05-21 | Starfish Software, Inc. | System and methods for appointment reconciliation |
US5524146A (en) * | 1992-04-17 | 1996-06-04 | Bell Atlantic Network Services, Inc. | Automatic access to communication service providers |
US6236396B1 (en) * | 1992-05-27 | 2001-05-22 | Apple Computer, Inc. | Method and apparatus for controlling a scheduler |
US5948040A (en) * | 1994-06-24 | 1999-09-07 | Delorme Publishing Co. | Travel reservation information and planning system |
US5842173A (en) * | 1994-10-14 | 1998-11-24 | Strum; David P. | Computer-based surgical services management system |
US5528745A (en) * | 1994-10-28 | 1996-06-18 | King; C. David | Method and system for the display of scheduling information for users within a single viewport |
US5615121A (en) * | 1995-01-31 | 1997-03-25 | U S West Technologies, Inc. | System and method for scheduling service providers to perform customer service requests |
US5855006A (en) * | 1996-03-01 | 1998-12-29 | Humware | Personal activity scheduling apparatus |
US5848395A (en) * | 1996-03-23 | 1998-12-08 | Edgar; James William Hardie | Appointment booking and scheduling system |
US5848396A (en) * | 1996-04-26 | 1998-12-08 | Freedom Of Information, Inc. | Method and apparatus for determining behavioral profile of a computer user |
US5790974A (en) * | 1996-04-29 | 1998-08-04 | Sun Microsystems, Inc. | Portable calendaring device having perceptual agent managing calendar entries |
US5918207A (en) * | 1996-05-01 | 1999-06-29 | Electronic Data Systems Corporation | Process and system for predictive resource planning |
US5889979A (en) * | 1996-05-24 | 1999-03-30 | Hewlett-Packard, Co. | Transparent data-triggered pipeline latch |
US6396510B1 (en) * | 1996-06-21 | 2002-05-28 | Intel Corporation | Method and apparatus for scheduling a multi-point electronic conference |
US5772585A (en) * | 1996-08-30 | 1998-06-30 | Emc, Inc | System and method for managing patient medical records |
US6018343A (en) * | 1996-09-27 | 2000-01-25 | Timecruiser Computing Corp. | Web calendar architecture and uses thereof |
US5963913A (en) * | 1997-02-28 | 1999-10-05 | Silicon Graphics, Inc. | System and method for scheduling an event subject to the availability of requested participants |
US6345260B1 (en) * | 1997-03-17 | 2002-02-05 | Allcare Health Management System, Inc. | Scheduling interface system and method for medical professionals |
US6058415A (en) * | 1997-07-24 | 2000-05-02 | Intervoice Limited Partnership | System and method for integration of communication systems with computer-based information systems |
US5982863A (en) * | 1997-08-27 | 1999-11-09 | Phytel, Inc. | Communications system for a service provider |
US6049776A (en) * | 1997-09-06 | 2000-04-11 | Unisys Corporation | Human resource management system for staffing projects |
US5970466A (en) * | 1997-10-06 | 1999-10-19 | Impromed, Inc. | Graphical computer system and method for appointment scheduling |
US6272545B1 (en) * | 1997-10-24 | 2001-08-07 | Microsoft Corporation | System and method for interaction between one or more desktop computers and one or more mobile devices |
US6052563A (en) * | 1997-12-10 | 2000-04-18 | Motorola | Communication device controlled by appointment information stored therein, and method therefor |
US6313852B1 (en) * | 1998-01-07 | 2001-11-06 | Hitachi, Ltd. | Scheduling management system and its process control method |
US5960406A (en) * | 1998-01-22 | 1999-09-28 | Ecal, Corp. | Scheduling system for use between users on the web |
US6480830B1 (en) * | 1998-01-29 | 2002-11-12 | International Business Machines Corporation | Active calendar system |
US6216110B1 (en) * | 1998-02-27 | 2001-04-10 | Microsoft Corporation | System and method for publishing calendar information to a publicly accessible location |
US6167379A (en) * | 1998-03-24 | 2000-12-26 | Siemens Information And Communication Networks, Inc. | System for user to accept or decline updating a calendar remotely with a proposed schedule update that may have schedule confliction |
US6038542A (en) * | 1998-04-28 | 2000-03-14 | Micron Electronics, Inc. | System for notifying an individual of a previously scheduled event |
US6101480A (en) * | 1998-06-19 | 2000-08-08 | International Business Machines | Electronic calendar with group scheduling and automated scheduling techniques for coordinating conflicting schedules |
US6085166A (en) * | 1998-06-19 | 2000-07-04 | International Business Machines | Electronic calendar with group scheduling and asynchronous fan out method |
US6064977A (en) * | 1998-06-19 | 2000-05-16 | International Business Machine Corporation | Web server with integrated scheduling and calendaring |
US6457062B1 (en) * | 1999-04-08 | 2002-09-24 | Palm, Inc. | System and method for synchronizing multiple calendars over wide area network |
US6553037B1 (en) * | 1999-04-08 | 2003-04-22 | Palm, Inc. | System and method for synchronizing data among a plurality of users via an intermittently accessed network |
US6389454B1 (en) * | 1999-05-13 | 2002-05-14 | Medical Specialty Software | Multi-facility appointment scheduling system |
US20010011225A1 (en) * | 1999-06-01 | 2001-08-02 | O'connor Patrick Thomas | Internet subscription system for providing appointment management for small businesses |
US6341316B1 (en) * | 1999-09-10 | 2002-01-22 | Avantgo, Inc. | System, method, and computer program product for synchronizing content between a server and a client based on state information |
US6785868B1 (en) * | 2000-05-31 | 2004-08-31 | Palm Source, Inc. | Method and apparatus for managing calendar information from a shared database and managing calendar information from multiple users |
US6708205B2 (en) * | 2001-02-15 | 2004-03-16 | Suffix Mail, Inc. | E-mail messaging system |
US20030061087A1 (en) * | 2002-07-15 | 2003-03-27 | Paul Srimuang | Calendar scheduling of multiple persons resources and consumables with group access view restriction |
Cited By (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8015049B1 (en) | 1999-08-18 | 2011-09-06 | S.F. Ip Properties 61 Llc | On-line appointment system |
US20070233510A1 (en) * | 2006-03-17 | 2007-10-04 | Howes Paul L | Service transaction facilitation systems and methods |
US20080040188A1 (en) * | 2006-08-08 | 2008-02-14 | Skadool, Inc. | System and method for providing temporary and limited grants of calendar access |
US8630885B2 (en) * | 2006-08-08 | 2014-01-14 | Skadool, Inc. | System and method for providing temporary and limited grants of calendar access |
US8620712B1 (en) * | 2007-01-26 | 2013-12-31 | Intuit Inc. | Method and system of intelligent matching for meetings |
US20090125358A1 (en) * | 2007-11-09 | 2009-05-14 | Michael Reynard | Integrated Appointment Scheduling And Targeted Advertising |
US20090150206A1 (en) * | 2007-12-07 | 2009-06-11 | Mci Communications Services | Notification system and method |
US9934489B2 (en) | 2008-10-14 | 2018-04-03 | Booker Software, Inc. | System and method for providing web-based management solutions |
US20100094680A1 (en) * | 2008-10-14 | 2010-04-15 | Peter Ellis | System and method for providing web-based management solutions |
US20100191569A1 (en) * | 2008-10-14 | 2010-07-29 | Spafinder, Inc. | System and method for providing web-based management solutions |
US8209206B2 (en) | 2008-10-14 | 2012-06-26 | Gramercyone Technology Corp. | System and method for providing web-based management solutions |
US8370186B2 (en) | 2008-10-14 | 2013-02-05 | Gramercyone Technology Corp. | System and method for providing web-based management solutions |
US8434008B2 (en) * | 2009-04-16 | 2013-04-30 | International Business Machines Corporation | Integrating information sources |
US20100269071A1 (en) * | 2009-04-16 | 2010-10-21 | International Business Machines Corporation | Integrating information sources |
US10636015B2 (en) | 2010-06-18 | 2020-04-28 | Sharat NAGARAJ | Automated schedule systems and methods |
US9129266B2 (en) * | 2010-06-18 | 2015-09-08 | Sharat NAGARAJ | Automated schedule systems and methods |
US20110314115A1 (en) * | 2010-06-18 | 2011-12-22 | Nagaraj Sharat | Automated Schedule Systems and Methods |
US20130055086A1 (en) * | 2011-08-25 | 2013-02-28 | Justin R. Labagh | Method and system for creating and maintaining activity plans |
US9058575B2 (en) * | 2011-08-25 | 2015-06-16 | Justin R. Labagh | Method and system for creating and maintaining activity plans |
US20130117701A1 (en) * | 2011-10-26 | 2013-05-09 | II Joseph I. Evans | System and Method for Coordinating a Multi-User Internet-Based Appointment Scheduler for Fashion and Related Arts |
JP2013190861A (en) * | 2012-03-12 | 2013-09-26 | Kajitaku Co Ltd | Housekeeping service reservation method |
US10699251B2 (en) | 2013-03-11 | 2020-06-30 | Sony Corporation | Service scheduling system |
US10115078B2 (en) | 2013-03-11 | 2018-10-30 | Sony Corporation | Service scheduling system |
US9136785B2 (en) | 2013-03-12 | 2015-09-15 | Steering Solutions Ip Holding Corporation | Motor control system to compensate for torque ripple |
US9143081B2 (en) | 2013-03-14 | 2015-09-22 | Steering Solutions Ip Holding Corporation | Motor control system having bandwidth compensation |
US20140297318A1 (en) * | 2013-03-28 | 2014-10-02 | Mckesson Specialty Care Distribution Corporation | Systems and methods for automatically scheduling patient visits based on information in clinical notes of electronic medical records |
US20140365261A1 (en) * | 2013-06-10 | 2014-12-11 | Microsoft Corporation | Creating recurring appointments |
US10210483B2 (en) * | 2013-06-10 | 2019-02-19 | Microsoft Technology Licensing, Llc | Creating recurring appointments |
CN104228935A (en) * | 2013-06-11 | 2014-12-24 | 株式会社捷太格特 | Electric power steering device |
TWI494870B (en) * | 2013-07-29 | 2015-08-01 | yan ting Lin | A smart reservation and check-in system of mobile device |
US10389289B2 (en) | 2014-02-06 | 2019-08-20 | Steering Solutions Ip Holding Corporation | Generating motor control reference signal with control voltage budget |
US20150235183A1 (en) * | 2014-02-20 | 2015-08-20 | Evan SAMPSON | Computer-implemented method and system for scheduling appointments with clients |
US20150262089A1 (en) * | 2014-03-12 | 2015-09-17 | Reso Holdings, Inc. | System and method for one-click booking of a service event for a user |
US9809247B2 (en) | 2015-01-30 | 2017-11-07 | Steering Solutions Ip Holding Corporation | Motor control current sensor loss of assist mitigation for electric power steering |
US10135368B2 (en) | 2016-10-01 | 2018-11-20 | Steering Solutions Ip Holding Corporation | Torque ripple cancellation algorithm involving supply voltage limit constraint |
US11328814B2 (en) | 2017-06-21 | 2022-05-10 | Sdc U.S. Smilepay Spv | Arrangements for intraoral scanning |
US11246687B2 (en) | 2017-06-21 | 2022-02-15 | Sdc U.S. Smilepay Spv | Dental impression retake kit and methods therefor |
US11253409B2 (en) | 2017-06-21 | 2022-02-22 | Sdc U.S. Smilepay Spv | Systems and methods for mobile dentition scanning |
US11309077B2 (en) | 2017-06-21 | 2022-04-19 | SmileDirectClub LLC | Distributed processing of scan data for fabricating dental aligners |
US11094414B2 (en) | 2017-06-21 | 2021-08-17 | SmileDirectClub LLC | Arrangements for intraoral scanning |
US11337778B2 (en) | 2017-06-21 | 2022-05-24 | Sdc U.S. Smilepay Spv | Distributed system for fabricating dental aligners |
US11382718B2 (en) | 2017-06-21 | 2022-07-12 | Sdc U.S. Smilepay Spv | Arrangements for remote orthodontic treatment |
US11894131B2 (en) | 2017-06-21 | 2024-02-06 | Sdc U.S. Smilepay Spv | Arrangements for intraoral scanning |
US11908572B2 (en) | 2017-06-21 | 2024-02-20 | Sdc U.S. Smilepay Spv | Arrangements for intraoral scanning |
US20220300912A1 (en) * | 2020-05-12 | 2022-09-22 | Lenovo (Singapore) Pte. Ltd. | Reserving conference in electronic calendar pursuant to electronic calendar restriction(s) |
US11556903B2 (en) * | 2020-08-30 | 2023-01-17 | VB Solutions, LLC | Method and application for automating automobile service provider tracking and communications |
US11957530B2 (en) | 2022-05-23 | 2024-04-16 | Sdc U.S. Smilepay Spv | Distributed system for fabricating dental aligners |
Also Published As
Publication number | Publication date |
---|---|
US8015049B1 (en) | 2011-09-06 |
US7188073B1 (en) | 2007-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8015049B1 (en) | On-line appointment system | |
US5963913A (en) | System and method for scheduling an event subject to the availability of requested participants | |
US7774221B2 (en) | System and method for a planner | |
KR100763672B1 (en) | System, method and service for negotiating schedules while preserving privacy though a shared representation | |
US20050055252A1 (en) | Method and system for online interactive appointments and reservations | |
US6304850B1 (en) | Computer-implemented system and method for booking airline travel itineraries | |
US7937329B1 (en) | Method and system for remotely managing business and employee administration functions | |
US7877282B2 (en) | System and method for a planner | |
US20060129444A1 (en) | Appointment arbiter | |
US20040044556A1 (en) | System and method for a planner and an accounting user interface for a planner | |
US20080313005A1 (en) | System and method for real-time scheduling of human and non-human resources | |
US7028178B2 (en) | Scheduling system and method including creating and/or changing a scheduling system by an administrator and making appointments employing the schedule conducted through a global computer network | |
US20060129445A1 (en) | System and method for scheduling a litigation event | |
US20080082980A1 (en) | System and method for using filters and standardized messages to identify and schedule appointments in aggregate resource scheduling applications | |
US20050288987A1 (en) | Vacation planning and approval | |
US20060122875A1 (en) | Web-based, industry specific, staffing interactive database | |
US20040044673A1 (en) | System and method for a planner and a deduplicating planner | |
US20050203783A1 (en) | Automated real-time event planning system and method | |
US20020188515A1 (en) | Method and system for processing physical distribution information | |
US20100235201A1 (en) | Booking System and Method | |
US20050171830A1 (en) | System and method for managing and utilizing information | |
AU2009200006A1 (en) | A method, system and program product for filling job orders | |
AU2005200452A1 (en) | System and method for integrating reservation information with personal information management | |
US20020069097A1 (en) | Database management system and method | |
US20140108121A1 (en) | Pay Per Appointment Advertising |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |