System, method, and computer program product for enabling on-device servers, offline forms, and dynamic ad tracking on mobile devices
First Claim
Patent Images
1. A method of browsing web-based content of a network while not in communication over the network, comprising the steps of:
- (1) synchronizing a client and a server to transfer to the client objects associated with one or more web-based channels;
(2) storing said objects in the client;
(3) enabling browsing of said stored objects at the client by a user while the client is not in communication with the server; and
(4) tracking user behavior during browsing of said stored objects.
2 Assignments
0 Petitions
Accused Products
Abstract
Described herein are systems, methods, computer program products, and combinations and sub-combinations thereof, for enabling web content (as well as other objects) to be loaded on mobile devices (as well as other types of devices), and for users of mobile devices to operate with such web content on their mobile devices in an interactive manner while in an off-line mode.
203 Citations
36 Claims
-
1. A method of browsing web-based content of a network while not in communication over the network, comprising the steps of:
-
(1) synchronizing a client and a server to transfer to the client objects associated with one or more web-based channels;
(2) storing said objects in the client;
(3) enabling browsing of said stored objects at the client by a user while the client is not in communication with the server; and
(4) tracking user behavior during browsing of said stored objects. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
synchronizing the client and the server to transfer to the client objects associated with one or more web-based channels previously chosen by the client from a list of web-based channels embodied on a home page of the server.
-
-
3. The method of claim 1, wherein the client resides on one of a handheld communications device and a handheld data processing device.
-
4. The method of claim 3, wherein said handheld communications device and said handheld data processing device comprises one of a cellular phone, a pager, a radio, a TV, an audio device, a recorder, a text-to-speech device, a bar code scanner, a net appliance, a mini-browser, a handheld computer, and a personal data assistants (PDA).
-
5. The method of claim 3, further comprising the step of:
transmitting tracked user behavior information to the server upon synchronization, wherein the tracked user behavior information is sent to an appropriate provider.
-
6. The method of claim 1, wherein step (3) comprises the step of:
(i) interactively browsing said stored objects at the client while the client is not in communication with the server.
-
7. The method of claim 6, wherein step (i) comprises the steps of:
-
displaying at the client a form page containing one or more form elements;
enabling a user to provide input associated with said form elements; and
caching said user input in the client.
-
-
8. The method of claim 7, further comprising the steps of:
-
transferring said user input to the server during synchronization between the server and the client;
receiving from the server second objects pertaining to said user input that the server obtained from one or more providers based on said user input;
storing said second objects in the client; and
enabling browsing of said stored second objects at the client while the client is not in communication with the server.
-
-
9. The method of claim 8, wherein said user can review the cached information before and after synchronization.
-
10. The method of claim 8, wherein an appropriate notification is provided to said user during synchronization.
-
11. The method of claim 7, further comprising the steps of:
-
displaying at the client a second form page containing one or more second form elements;
enabling a user to provide input associated with said second form elements; and
caching said user input associated with said second form elements in the client.
-
-
12. The method of claim 1, wherein step (3) comprises the step of processing one or more context sensitive objects based on one or more context sensitive triggers.
-
13. The method of claim 12, wherein said context sensitive objects include one or more of a business card, advertisement, email, to-do list, calendar event, ticket notification, product code, and channel, and said context sensitive triggers include one or more of a zip code, bar code, time of day, user preferences, last sync location, whether the client is in range of a transmitter, credit card, temperature, altitude, location, and an agent, arbiter, or avatar.
-
14. A method of enabling browsing at a client of web-based content of a network while the client is not in communication over the network, comprising the steps of:
-
(1) assembling a plurality of web-based channels at a server;
(2) enabling a client to select one or more of said web-based channels;
(3) obtaining objects associated with said selected web-based channels;
(4) transferring to the client at least some of said objects during synchronization with the client, wherein said at least some of said objects are stored at the client for browsing at the client by a user while the client is not in communication with the server; and
(5) tracking user behavior during browsing of said stored objects. - View Dependent Claims (15, 16, 17, 18)
comparing information related to said objects with information related to the client to identify any of said objects not already resident at the client; and
transferring to the client said any of said objects not already resident at the client.
-
-
16. The method of claim 14, wherein step (4) comprises the steps of:
-
comparing information related to said objects with information related to the client to identify any of said objects that have been altered from objects resident at the client; and
transferring to the client said any of said objects that have been altered from objects resident at the client.
-
-
17. The method of claim 14, wherein step (3) comprises the steps of:
-
(i) identifying top level resources needed to fulfill the client'"'"'s selection of one or more of said web-based channels;
(ii) communicating with providers of said objects to obtain top level resources;
(iii) determining other resources needed to maintain the integrity of information related to said objects; and
(iv) optimizing said objects to fit within the parameters of the client.
-
-
18. The method of claim 17, wherein step (3)(iv) comprises the step of:
transforming specific values of said objects in a conversion process to an encoding that is optimized for the client.
-
19. A computer program product comprising a computer useable medium including control logic stored therein, said control logic enabling browsing of web-based content of a network while not in communication over the network, said control logic comprising:
-
synchronization means for enabling a processor to synchronize a client and a server to transfer to the client objects associated with one or more web-based channels that were previously selected;
storing means for enabling a processor to store said objects in the client;
browsing means for enabling a processor to enable browsing of said stored objects at the client by a user while the client is not in communication with the server; and
tracking means for enabling a processor to track user behavior during browsing of said stored objects. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31)
interactive means for enabling a processor to interactively browse said stored objects at the client while the client is not in communication with the server.
-
-
24. The computer program product of claim 23, wherein said interactive means comprises:
-
displaying means for enabling a processor to display at the client a form page containing one or more form elements;
enabling means for enabling a processor to enable a user to provide input associated with said form elements; and
caching means for enabling a processor to cache said user input in the client.
-
-
25. The computer program product of claim 24, wherein said control logic further comprises:
-
transferring means for enabling a processor to transfer said user input to the server during synchronization between the server and the client;
receiving means for enabling a processor to receive from the server second objects pertaining to said user input that the server obtained from one or more providers based on said user input;
storing means for enabling a processor to store said second objects in the client; and
browsing means for enabling a processor to enable browsing of said stored second objects at the client while the client is not in communication with the server.
-
-
26. The computer program product of claim 25, wherein said user can review the cached information before and after synchronization.
-
27. The computer program product of claim 25, wherein an appropriate notification is provided to said user during synchronization.
-
28. The computer program product of claim 24, wherein said control logic further comprises:
-
displaying means for enabling a processor to display at the client a second form page containing one or more second form elements;
enabling means for enabling a processor to enable a user to provide input associated with said second form elements; and
caching means for enabling a processor to cache said user input associated with said second form elements in the client.
-
-
29. The computer program product of claim 19, wherein said browsing means comprises processing means for enabling a processor to process one or more context sensitive objects based on one or more context sensitive triggers.
-
30. The computer program product of claim 29, wherein said context sensitive objects include one or more of a business card, advertisement, email, to-do list, calendar event, ticket notification, product code, and channel, and said context sensitive triggers include one or more of a zip code, bar code, time of day, user preferences, last sync location, whether the client is in range of a transmitter, credit card, temperature, altitude, location, and an agent, arbiter, or avatar.
-
31. The computer program product of claim 19, wherein said control logic further comprises:
transmitting means for enabling a processor to transmit tracked user behavior information to the server upon synchronization, wherein the tracked user behavior information is sent to an appropriate provider.
-
32. A computer program product comprising a computer useable medium including control logic stored therein, said control logic enabling browsing at a client of web-based content of a network while the client is not in communication over the network, said control logic comprising:
-
assembling means for enabling a processor to assemble a plurality of web-based channels at a server;
enabling means for enabling a processor to enable a client to select one or more of said web-based channels;
obtaining means for enabling a processor to obtain objects associated with said selected web-based channels;
transferring means for enabling a processor to transfer to the client at least some of said objects during synchronization with the client, wherein said at least some of said objects are stored at the client for browsing by a user at the client while the client is not in communication with the server; and
tracking means for enabling a processor to track user behavior during browsing of said stored objects. - View Dependent Claims (33, 34, 35, 36)
comparing means for enabling a processor to compare information related to said objects with information related to the client to identify any of said objects not already resident at the client; and
transferring means for enabling a processor to transfer to the client said any of said objects not already resident at the client.
-
-
34. The computer program product of claim 32, wherein said transferring means comprises:
-
comparing means for enabling a processor to compare information related to said objects with information related to the client to identify any of said objects that have been altered from objects resident at the client; and
transferring means for enabling a processor to transfer to the client said any of said objects that have been altered from objects resident at the client.
-
-
35. The computer program product of claim 32, wherein said obtaining means comprises:
-
identifying means for enabling a processor to identify top level resources needed to fulfill the client'"'"'s selection of one or more of said channels;
communicating means for enabling a processor to communicate with providers of said objects to obtain top level resources;
determining means for enabling a processor to determine other resources needed to maintain the integrity of information related to said objects; and
optimizing means for enabling a processor to optimize said objects to fit within the parameters of the client.
-
-
36. The computer program product of claim 35, wherein said optimizing means comprises:
transforming means for enabling a processor to transform specific values of said objects in a conversion process to an encoding that is optimized for the client.
Specification