IP Library Granted Patent US 7,584,249
Granted Patent B2
US 7,584,249 · App. 11/973,467 · Granted Sep 1, 2009

Synchronization among plural browsers using a state manager

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,584,249
App. No.
11/973,467
Granted
Sep 1, 2009
Kind
B2
Abstract

A technique for synchronizing a visual browser and a voice browser. A visual browser is used to navigate through visual content, such as WML pages. During the navigation, the visual browser creates a historical record of events that have occurred during the navigation. The voice browser uses this historical record to navigate the content in the same manner as occurred on the visual browser, thereby synchronizing to a state equivalent to that of the visual browser. The creation of the historical record may be performed by using a script to trap events, where the script contains code that records the trapped events. The synchronization technique may be used with a multi-modal application that permits the mode of input/output (I/O) to be changed between visual and voice browsers. When the mode is changed from visual to voice, the record of events captured by the visual browser is provided to the voice browser, thereby allowing the I/O mode to change seamlessly from visual to voice. Likewise, the voice browser captures events which may be provided to the visual browser when the I/O mode is changed from voice to visual.

Claims (80)

1. A system for using a visual browser for navigation through a collection of data and synchronization of the state of a voice browser with the state of said visual browser, said system comprising:

a first wireless device further comprising:

a first memory to store a first set of data and a first set of instructions;

a first processor to execute said first instruction set and manipulate said first data set;

a visual display for displaying visual output;

an input device for accepting user data from a user;

an audio speaker to render audio output;

a microphone to accept audio input; and

said visual browser stored in said first memory and operating in said first wireless device for interacting with a content page using one or more of said user data and said first data set, wherein said visual browser stores said visual browser state indicating a state of interaction with said content page, and wherein said visual browser displays said interaction through said visual display;

a state manager for receiving said visual browser state and providing said received visual browser state to said voice browser to recreate the visual browser state at said voice browser at one of a plurality of granularity levels specified by said user, wherein each of said granularity levels represent the precision with which the voice browser recreates the visual browser state, and wherein said granularity levels comprise one of a page level granularity, a card level granularity, a field level granularity, and a cursor level granularity; and

a second device further comprising:

a second memory to store a second set of data and a second set of instructions;

a second processor to execute said second instruction set and manipulate said second data set;

said voice browser storable in said second memory and executable on said second processor, wherein the voice browser enables interaction of said user with said content page using said audio speaker and said microphone, and receives said visual browser state from said state manager;

wherein said first wireless device is in communication with said second device and said state manager through a network;

whereby the state of the voice browser is synchronized with the state of the visual browser from the information received from said state manager.

2. The system of claim 1 , further comprising a data store for storing said visual browser state received by said state manager.

3. The system of claim 1 , wherein said visual browser state comprises a historical record of events occurring during said navigation.

4. The system of claim 1 , wherein said state manager allows said user to seamlessly switch between said visual browser and said voice browser when said voice browser state is synchronized with said visual browser state.

5. The system of claim 1 , wherein said page level granularity comprises synchronization of said voice browser to point to said content page being browsed by said visual browser.

6. The system of claim 1 , wherein said card level granularity comprises synchronization of said voice browser to point to a card within said content page, wherein said visual browser is browsing within said card of said content page.

7. The system of claim 1 , wherein said field level granularity comprises synchronization of said voice browser to point to a field within a card in said content page, wherein said visual browser is browsing within said field in said card of said content page.

8. The system of claim 1 , wherein said cursor level granularity comprises synchronization of said voice browser to point to the cursor position in the visual browser.

9. A system for using a voice browser for navigation through a collection of data and synchronization of the state of a visual browser with state of said voice browser, said system comprising:

a first wireless device further comprising:

a first memory to store a first set of data and a first set of instructions;

a first processor to execute said first instruction set and manipulate said first data set;

a visual display for displaying visual output;

an input device for accepting user data from a user;

an audio speaker to render audio output;

a microphone to accept audio input;

said visual browser stored in said first memory and operating in said first wireless device;

a second device further comprising:

a second memory to store a second set of data and a second set of instructions;

a second processor to execute said second instruction set and manipulate said second data set;

said voice browser storable in said second memory and executable on said second processor, wherein the voice browser enables interaction with a content page using said audio speaker and said microphone, and wherein said voice browser sends said voice browser state indicating a state of interaction with said content page to a state manager;

wherein said first wireless device is in communication with said second device and said state manager via a network; and

said state manager for receiving said voice browser state and providing said received voice browser state to said visual browser for allowing said visual browser to recreate the voice browser state at one of a plurality of granularity levels specified by said user, wherein each of said granularity levels represent the precision with which the visual browser recreates the voice browser state, and wherein said granularity levels comprise one of a page level granularity, a card level granularity, a field level granularity, and a cursor level granularity; and

whereby the voice browser state is synchronized with the visual browser state from the information received from said state manager.

10. The system of claim 9 , further comprising a data store for storing said voice browser state received by said state manager.

11. The system of claim 9 , wherein said voice browser state comprises a historical record of events occurring during said navigation.

12. The system of claim 9 , wherein said state manager allows said user to seamlessly switch between said voice browser and said visual browser, when said visual browser state is synchronized with said voice browser state.

13. The system of claim 9 , wherein said page level granularity comprises synchronization of said visual browser to point to said content page being browsed by said voice browser.

14. The system of claim 9 , wherein said card level granularity comprises sycnchronization of said visual browser to point to a card within said content page, wherein said voice browser is browsing within said card of said content page.

15. The system of claim 9 , wherein said field level granularity comprises synchroniztion of said visual browser to point to a field within a card in said content page, wherein said voice browser is browsing within said field card of said content page.

16. The system of claim 9 , wherein said cursor level granularity comprises synchronization of said visual browser to point to cursor position pointed by said voice browser.

17. A system of using a visual browser for navigation through a collection of data, resulting in the generation of events, and the synchronization of the state of a voice browser with the state of said visual browser, comprising:

a first device further comprising:

a first memory to store a first set of data and a first set of instructions;

a first processor to execute said first instruction set and manipulate said first data set;

a visual display for displaying visual output;

an input device for accepting user data from a user;

an audio speaker to render audio output;

a microphone to accept audio input;

said visual browser stored in said first memory and operating in said first device for interacting with a content page using one or more of said user data and said first data set, wherein said visual browser displays said interaction through said visual display;

a script engine for recording the generated events by executing instructions in a script, wherein said script comprises a plurality of sets of instructions interpretable by the script engine, and wherein each of said sets of instructions being adapted to create a record of a particular one of the events, said script engine being adapted to invoke a particular one of said sets of instructions according to which said events is signaled by said visual browser; and

a second device further comprising:

a second memory to store second set of data and second set of instructions;

a second processor to execute said second instruction set and manipulate said second data set;

said voice browser storable in said second memory and executable on said second processor for enabling interaction with said content page using said audio speaker and said microphone;

wherein said first wireless device is in communication with said second device and a state manager via a network; and

wherein said state manager receives the record of events created by said script engine and provides the record of events to the voice browser;

whereby the voice browser recreates the state of the visual browser.

18. A system of using a voice browser for navigation through a collection of data, resulting in the generation of events, and the synchronization of the state of a visual browser with the state of said voice browser, comprising:

a first device further comprising:

a first memory to store a first set of data and a first set of instructions;

a first processor to execute said first instruction set and manipulate said first data set;

a visual display for displaying visual output;

an input device for accepting user data from a user;

an audio speaker to render audio output;

a microphone to accept audio input;

said visual browser storable in said first memory and operating in said first device for interacting with a content page using one or more of said user data and said first data set, wherein said visual browser displays said interaction through said visual display;

a script engine for recording the generated events by executing instructions in a script, wherein said script comprises a plurality of sets of instructions interpretable by the script engine, and wherein each of said sets of instructions being adapted to create a record of a particular one of the events, said script engine being adapted to invoke particular one of said sets of instructions according to which of said events is signaled by said voice browser; and

a second device further comprising:

a second memory to store a second set of data and a second set of instructions;

a second processor to execute said second instruction set and manipulate said second data set;

said voice browser storable in said second memory and executable on said second processor for enabling interaction with said content page using said audio speaker and said microphone;

wherein said first wireless device is in communication with said second device and a state manager via a network;

and wherein said state manager receives the record of events created by said script engine, and provides the record of events to the visual browser;

whereby the visual browser recreates the state of the voice browser.

Assignments (4)
MERGER Recorded Nov 12, 2015
From: WALOOMBA TECH LTD., L.L.C.
To: GULA CONSULTING LIMITED LIABILITY COMPANY
Reel/Frame 037028/0475 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2011
From: KIRUSA INC.
To: WALOOMBA TECH LTD., L.L.C.
Reel/Frame 026378/0115 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2011
From: MUMICK, INDERPAL SINGH; SIBAL, SANDEEP
To: KIRUSA, INC.
Reel/Frame 025906/0832 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 14, 2009
From: MUMICK, INDERPAL SINGH
To: KIRUSA INC.
Reel/Frame 023367/0048 →