Cross-pollination synchronization of data
First Claim
1. A system that facilitates synchronizing data, comprising:
- an analyzer component that analyzes a first data item from a source, the analyzer component compares the first data item with a second data item of a device and determines an output that represents a relationship between the first data item and at the second data item; and
a transfer component that transmits the first data item to the device in accordance with the output from the analyzer component.
2 Assignments
0 Petitions

Accused Products

Abstract
A technique and mechanism to effect cross-pollination synchronization of PIM (personal information manager) data to multiple sources. Additionally, a novel feature of the subject invention is the ability to effect cross-pollination synchronization with any number of devices and sources in a network. The invention provides for a user to employ a mobile device or set of devices as a central repository for PIM data (e.g., calendar, contacts and tasks) synchronized from multiple sources (e.g., multiple PC'"'"'s (personal computers), an exchange server). The invention provides for synchronization of PIM data from multiple types of server sources to multiple devices regardless of the synchronization protocol versions and different schemas.
240 Citations
Method for modifying notifications in an electronic device | ||
Patent #
US 7,873,646 B2
Filed 02/25/2004
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Methods for publishing content | ||
Patent #
US 7,917,505 B2
Filed 10/28/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Collection bin for data management and transformation | ||
Patent #
US 7,895,246 B2
Filed 05/31/2007
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Linking of personal information management data | ||
Patent #
US 7,917,468 B2
Filed 09/16/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
METHOD FOR MODIFYING NOTIFICATIONS IN AN ELECTRONIC DEVICE | ||
Patent #
US 20110029989A1
Filed 10/13/2010
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
SYSTEM AND METHOD FOR MANAGING DATA DEDUPLICATION OF STORAGE SYSTEMS UTILIZING PERSISTENT CONSISTENCY POINT IMAGES | ||
Patent #
US 20110035357A1
Filed 10/26/2010
|
Current Assignee
NetApp Inc.
|
Original Assignee
Daniel Ting, John Frederick Destefano, Stephen L. Manley, Ling Zheng
|
Apparatus for changing the behavior of an electronic device | ||
Patent #
US 7,917,127 B2
Filed 12/18/2009
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
SECURE END-TO-END TRANSPORT THROUGH INTERMEDIARY NODES | ||
Patent #
US 20110099363A1
Filed 09/23/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for managing data deduplication of storage systems utilizing persistent consistency point images | ||
Patent #
US 7,921,077 B2
Filed 06/29/2006
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
SYSTEM AND METHOD OF A RELAY SERVER FOR MANAGING COMMUNICATIONS AND NOTIFICATION BETWEEN A MOBILE DEVICE AND APPLICATION SERVER | ||
Patent #
US 20110191474A1
Filed 04/13/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
INTELLIGENT RENDERING OF INFORMATION IN A LIMITED DISPLAY ENVIRONMENT | ||
Patent #
US 20110179377A1
Filed 12/16/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
SYSTEM AND METHOD FOR FACILITATING MOBILE TRAFFIC IN A MOBILE NETWORK | ||
Patent #
US 20110238772A1
Filed 06/13/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Flexible billing architecture | ||
Patent #
US 8,010,082 B2
Filed 10/19/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
INTEGRATED MESSAGING | ||
Patent #
US 20110190014A1
Filed 04/08/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
MOBILE DEVICE POWER MANAGEMENT IN DATA SYNCHRONIZATION OVER A MOBILE NETWORK WITH OR WITHOUT A TRIGGER NOTIFICATION | ||
Patent #
US 20110213898A1
Filed 05/05/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
METHOD FOR MODIFYING NOTIFICATIONS IN AN ELECTRONIC DEVICE | ||
Patent #
US 20110214132A2
Filed 10/13/2010
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Managing user-to-user contact with inferred presence information | ||
Patent #
US 8,069,166 B2
Filed 02/27/2006
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Multiple data store authentication | ||
Patent #
US 8,064,583 B1
Filed 09/21/2006
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Universal data aggregation | ||
Patent #
US 7,853,563 B2
Filed 08/31/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Electronic device and method of messaging meeting invitees | ||
Patent #
US 7,730,404 B2
Filed 07/31/2006
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Bandwidth Measurement | ||
Patent #
US 20100146107A1
Filed 10/12/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
INFORMATION CORRELATION SYSTEM, USER INFORMATION CORRELATING METHOD, AND PROGRAM | ||
Patent #
US 20100070508A1
Filed 02/19/2008
|
Current Assignee
NEC Corporation
|
Original Assignee
NEC Corporation
|
AUTO-RESOLVE RECIPIENTS CACHE | ||
Patent #
US 20100121922A1
Filed 11/10/2008
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
APPARATUS FOR CHANGING THE BEHAVIOR OF AN ELECTRONIC DEVICE | ||
Patent #
US 20100099385A1
Filed 12/18/2009
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
ELECTRONIC DEVICE AND METHOD OF MESSAGING MEETING INVITEES | ||
Patent #
US 20100241970A1
Filed 05/03/2010
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Maintaining Mobile Terminal Information for Secure E-Mail Communications | ||
Patent #
US 20090054034A1
Filed 09/05/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Messaging centre for forwarding e-mail | ||
Patent #
US 20090063647A1
Filed 08/11/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks International Oy
|
Policy based content service | ||
Patent #
US 20090164560A1
Filed 01/25/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Electronic-mail filtering for mobile devices | ||
Patent #
US 20090149203A1
Filed 12/10/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Web-Based Access to Data Objects | ||
Patent #
US 20090193130A1
Filed 01/28/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile virtual network operator | ||
Patent #
US 20090181641A1
Filed 01/11/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Content search engine | ||
Patent #
US 20090248670A1
Filed 03/31/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
ELECTRONIC DEVICE AND METHOD FOR MANAGING STORAGE OF DATA | ||
Patent #
US 20090282351A1
Filed 05/07/2009
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Application Discovery on Mobile Devices | ||
Patent #
US 20090318171A1
Filed 06/18/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for group management | ||
Patent #
US 20080001717A1
Filed 03/27/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for managing data deduplication of storage systems utilizing persistent consistency point images | ||
Patent #
US 20080005201A1
Filed 06/29/2006
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
System and method for storage and display of time-dependent events | ||
Patent #
US 20080027955A1
Filed 07/31/2006
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
METHOD AND APPARATUS FOR CONFIGURING UNIQUE PROFILE SETTINGS FOR MULTIPLE SERVICES | ||
Patent #
US 20080043958A1
Filed 12/28/2006
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Extending user relationships | ||
Patent #
US 20080134292A1
Filed 10/28/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Methods for publishing content | ||
Patent #
US 20080133641A1
Filed 10/28/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Context Based Action | ||
Patent #
US 20080133708A1
Filed 10/28/2007
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
APPARATUS FOR CHANGING THE BEHAVIOR OF AN ELECTRONIC DEVICE | ||
Patent #
US 20080292084A1
Filed 06/05/2008
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
SYSTEM AND METHOD FOR ACCELERATING ANCHOR POINT DETECTION | ||
Patent #
US 20080301134A1
Filed 05/31/2007
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Publishing data in an information community | ||
Patent #
US 20070027886A1
Filed 12/14/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Context based action | ||
Patent #
US 20070027921A1
Filed 02/27/2006
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Context aware data presentation | ||
Patent #
US 20070027920A1
Filed 02/24/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Linking of personal information management data | ||
Patent #
US 20070027917A1
Filed 09/16/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Universal data aggregation | ||
Patent #
US 20070027930A1
Filed 08/31/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Synchronization of client application data between pots telephone and content portal through PSTN | ||
Patent #
US 20070127442A1
Filed 04/13/2006
|
Current Assignee
ATT Intellectual Property I LP
|
Original Assignee
Bellsouth Intellectual Property Corporation
|
METHOD FOR PROVIDING PERSONALIZED INFORMATION LIFECYCLE MANAGEMENT SERVICE USING POLICY-BASED AUTONOMIC DATA MANAGEMENT | ||
Patent #
US 20070244932A1
Filed 04/11/2007
|
Current Assignee
Electronics and Telecommunications Research Institute
|
Original Assignee
Electronics and Telecommunications Research Institute
|
System and method for sampling based elimination of duplicate data | ||
Patent #
US 20070255758A1
Filed 04/28/2006
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Flexible billing architecture | ||
Patent #
US 20060084410A1
Filed 10/19/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Secure end-to-end transport through intermediary nodes | ||
Patent #
US 8,127,342 B2
Filed 09/23/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Natural language personal information management | ||
Patent #
US 20070282595A1
Filed 06/06/2006
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Systems and methods for group messaging | ||
Patent #
US 20070290787A1
Filed 02/02/2007
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Provisioning applications for a mobile device | ||
Patent #
US 8,078,158 B2
Filed 06/26/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning of e-mail settings for a mobile terminal | ||
Patent #
US 8,116,214 B2
Filed 11/30/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile virtual network operator | ||
Patent #
US 8,107,921 B2
Filed 01/11/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Auto-resolve recipients cache | ||
Patent #
US 8,122,092 B2
Filed 11/10/2008
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Method and apparatus for configuring unique profile settings for multiple services | ||
Patent #
US 8,145,200 B2
Filed 12/28/2006
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Application and network-based long poll request detection and cacheability assessment therefor | ||
Patent #
US 8,166,164 B1
Filed 10/14/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for sampling based elimination of duplicate data | ||
Patent #
US 8,165,221 B2
Filed 04/28/2006
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Cache defeat detection and caching of content addressed by identifiers intended to defeat cache | ||
Patent #
US 8,190,701 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Electronic device and method for managing storage of data | ||
Patent #
US 8,285,675 B2
Filed 05/07/2009
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Application and network-based long poll request detection and cacheability assessment therefor | ||
Patent #
US 8,291,076 B2
Filed 03/05/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for managing data deduplication of storage systems utilizing persistent consistency point images | ||
Patent #
US 8,296,260 B2
Filed 10/26/2010
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Method for modifying notifications in an electronic device | ||
Patent #
US 8,306,989 B2
Filed 10/13/2010
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Social caching for device resource sharing and management | ||
Patent #
US 8,316,098 B2
Filed 04/19/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Distributed management of keep-alive message signaling for mobile network resource conservation and optimization | ||
Patent #
US 8,326,985 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for a mobile device to use physical storage of another device for caching | ||
Patent #
US 8,356,080 B2
Filed 07/20/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Electronic-mail filtering for mobile devices | ||
Patent #
US 8,364,181 B2
Filed 12/10/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Extracting Incremental Data | ||
Patent #
US 20130073516A1
Filed 06/22/2012
|
Current Assignee
Alibaba Group Services Limited
|
Original Assignee
Alibaba Group Services Limited
|
Context aware data presentation | ||
Patent #
US 8,412,675 B2
Filed 02/24/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for retrieving and using block fingerprints for data deduplication | ||
Patent #
US 8,412,682 B2
Filed 06/29/2006
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Aligning data transfer to optimize connections established for transmission over a wireless network | ||
Patent #
US 8,417,823 B2
Filed 11/18/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Natural language personal information management | ||
Patent #
US 8,423,347 B2
Filed 06/06/2006
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Flexible real-time inbox access | ||
Patent #
US 8,438,633 B1
Filed 12/18/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Publishing data in an information community | ||
Patent #
US 8,468,126 B2
Filed 12/14/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Distributed caching in a wireless network of content delivered for a mobile application over a long-held request | ||
Patent #
US 8,484,314 B2
Filed 10/14/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning applications for a mobile device | ||
Patent #
US 8,494,510 B2
Filed 12/06/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Apparatus for changing the behavior of an electronic device | ||
Patent #
US 8,498,620 B2
Filed 06/05/2008
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Auto-resolve recipients cache | ||
Patent #
US 8,499,052 B2
Filed 02/20/2012
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Mobile network background traffic data management with optimized polling intervals | ||
Patent #
US 8,539,040 B2
Filed 02/28/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Secure end-to-end transport through intermediary nodes | ||
Patent #
US 8,549,587 B2
Filed 02/14/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for executing commands that are non-native to the native environment of a mobile device | ||
Patent #
US 8,561,086 B2
Filed 05/17/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Detecting and preserving state for satisfying application requests in a distributed proxy and cache system | ||
Patent #
US 8,621,075 B2
Filed 04/27/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Cache state management on a mobile device to preserve user experience | ||
Patent #
US 8,635,339 B2
Filed 08/22/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Polling | ||
Patent #
US 8,693,494 B2
Filed 03/31/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Cache defeat detection and caching of content addressed by identifiers intended to defeat cache | ||
Patent #
US 8,700,728 B2
Filed 05/17/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Cross-platform event engine | ||
Patent #
US 8,209,709 B2
Filed 07/05/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Distributed system for cache defeat detection and caching of content addressed by identifiers intended to defeat cache | ||
Patent #
US 8,204,953 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Electronic-mail filtering for mobile devices | ||
Patent #
US 8,738,050 B2
Filed 01/07/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network | ||
Patent #
US 8,750,123 B1
Filed 07/31/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Maintaining an IP connection in a mobile network | ||
Patent #
US 8,761,756 B2
Filed 09/13/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks International Oy
|
System and method for accelerating anchor point detection | ||
Patent #
US 8,762,345 B2
Filed 05/31/2007
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Integrated messaging | ||
Patent #
US 8,774,844 B2
Filed 04/08/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications | ||
Patent #
US 8,775,631 B2
Filed 02/25/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Timing of keep-alive messages used in a system for mobile network resource conservation and optimization | ||
Patent #
US 8,782,222 B2
Filed 09/05/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Application discovery on mobile devices | ||
Patent #
US 8,787,947 B2
Filed 06/18/2008
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Content delivery to a mobile device from a content service | ||
Patent #
US 8,793,305 B2
Filed 12/13/2007
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method of a relay server for managing communications and notification between a mobile device and a web access server | ||
Patent #
US 8,799,410 B2
Filed 04/13/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Maintaining mobile terminal information for secure communications | ||
Patent #
US 8,805,334 B2
Filed 09/05/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Integrated messaging | ||
Patent #
US 8,805,425 B2
Filed 01/28/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile device power management in data synchronization over a mobile network with or without a trigger notification | ||
Patent #
US 8,811,952 B2
Filed 05/05/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Method and system for management of a virtual network connection without heartbeat messages | ||
Patent #
US 8,812,695 B2
Filed 04/03/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for tracking billing events in a mobile wireless network for a network operator | ||
Patent #
US 8,831,561 B2
Filed 04/28/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief | ||
Patent #
US 8,832,228 B2
Filed 04/26/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Distributed caching for resource and mobile network traffic management | ||
Patent #
US 8,838,783 B2
Filed 07/05/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Flexible real-time inbox access | ||
Patent #
US 8,839,412 B1
Filed 09/13/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Web-based access to data objects | ||
Patent #
US 8,838,744 B2
Filed 01/28/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile traffic categorization and policy for network use optimization while preserving user experience | ||
Patent #
US 8,843,153 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System for providing policy based content service in a mobile network | ||
Patent #
US 8,849,902 B2
Filed 06/24/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization | ||
Patent #
US 8,861,354 B2
Filed 12/14/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Policy based content service | ||
Patent #
US 8,862,657 B2
Filed 01/25/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation | ||
Patent #
US 8,868,753 B2
Filed 12/06/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning of e-mail settings for a mobile terminal | ||
Patent #
US 8,873,411 B2
Filed 01/12/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols | ||
Patent #
US 8,874,761 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile application traffic optimization | ||
Patent #
US 8,886,176 B2
Filed 07/22/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Electronic device and method for managing storage of data | ||
Patent #
US 8,898,110 B2
Filed 09/04/2012
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Optimization of resource polling intervals to satisfy mobile device requests | ||
Patent #
US 8,903,954 B2
Filed 11/22/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile virtual network operator | ||
Patent #
US 8,909,192 B2
Filed 08/11/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Bandwidth measurement | ||
Patent #
US 8,909,759 B2
Filed 10/12/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Detection and management of user interactions with foreground applications on a mobile device in distributed caching | ||
Patent #
US 8,909,202 B2
Filed 01/07/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for providing a network service in a distributed fashion to a mobile device | ||
Patent #
US 8,914,002 B2
Filed 08/11/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Optimization of mobile traffic directed to private networks and operator configurability thereof | ||
Patent #
US 8,918,503 B2
Filed 08/28/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Method and apparatus for intercepting events in a communication system | ||
Patent #
US RE45,348 E1
Filed 03/16/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Application and network-based long poll request detection and cacheability assessment therefor | ||
Patent #
US 8,966,066 B2
Filed 10/12/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Mobile device and method to utilize the failover mechanism for fault tolerance provided for mobile traffic management and network/device resource conservation | ||
Patent #
US 8,977,755 B2
Filed 12/06/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Monitoring mobile application activities for malicious traffic on a mobile device | ||
Patent #
US 8,984,581 B2
Filed 07/11/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Connection architecture for a mobile network | ||
Patent #
US 8,989,728 B2
Filed 09/07/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Predictive content delivery | ||
Patent #
US 9,002,828 B2
Filed 01/02/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation | ||
Patent #
US 9,009,250 B2
Filed 12/07/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Mobile network reporting and usage analytics system and method aggregated using a distributed traffic optimization system | ||
Patent #
US 9,021,021 B2
Filed 12/10/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
3D mobile user interface with configurable workspace management | ||
Patent #
US 9,043,731 B2
Filed 03/30/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network traffic coordination across multiple applications | ||
Patent #
US 9,043,433 B2
Filed 05/25/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Synchronization of client application data between POTS telephone and content portal through PSTN | ||
Patent #
US 9,049,285 B2
Filed 04/13/2006
|
Current Assignee
ATT Intellectual Property I LP
|
Original Assignee
ATT Intellectual Property I LP
|
Intelligent rendering of information in a limited display environment | ||
Patent #
US 9,047,142 B2
Filed 12/16/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network traffic coordination across multiple applications | ||
Patent #
US 9,049,179 B2
Filed 01/20/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Location-based operations and messaging | ||
Patent #
US 9,055,102 B2
Filed 08/02/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic | ||
Patent #
US 9,060,032 B2
Filed 05/09/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network | ||
Patent #
US 9,065,765 B2
Filed 10/08/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for accelerating anchor point detection | ||
Patent #
US 9,069,787 B2
Filed 06/20/2014
|
Current Assignee
NetApp Inc.
|
Original Assignee
NetApp Inc.
|
Distributed implementation of dynamic wireless traffic policy | ||
Patent #
US 9,077,630 B2
Filed 07/08/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Device resources sharing for network resource conservation | ||
Patent #
US 9,084,105 B2
Filed 04/19/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network background traffic data management | ||
Patent #
US 9,100,873 B2
Filed 09/14/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
TECHNIQUES FOR DATA SYNCHRONIZATION USING COMPRESSIVE SENSING | ||
Patent #
US 20150234908A1
Filed 09/24/2013
|
Current Assignee
Harvard College
|
Original Assignee
President and Fellows of Harvard College
|
Managing cache to prevent overloading of a wireless network due to user activity | ||
Patent #
US 9,131,397 B2
Filed 06/06/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion | ||
Patent #
US 9,161,258 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol | ||
Patent #
US 9,173,128 B2
Filed 03/06/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Electronic device and method of messaging meeting invitees | ||
Patent #
US 9,177,300 B2
Filed 05/03/2010
|
Current Assignee
Blackberry Limited
|
Original Assignee
Blackberry Limited
|
Dynamic categorization of applications for network access in a mobile network | ||
Patent #
US 9,203,864 B2
Filed 02/04/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Mobile device having content caching mechanisms integrated with a network operator for traffic alleviation in a wireless network and methods therefor | ||
Patent #
US 9,208,123 B2
Filed 12/07/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Mobile device with application or context aware fast dormancy | ||
Patent #
US 9,241,314 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network | ||
Patent #
US 9,239,800 B2
Filed 07/11/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Extending user relationships | ||
Patent #
US 9,251,193 B2
Filed 10/28/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Application or context aware fast dormancy | ||
Patent #
US 9,271,238 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Request and response characteristics based adaptation of distributed caching in a mobile network | ||
Patent #
US 9,275,163 B2
Filed 10/17/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol | ||
Patent #
US 9,277,443 B2
Filed 12/07/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
System and method for a mobile device to use physical storage of another device for caching | ||
Patent #
US 9,300,719 B2
Filed 01/14/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Systems and methods for application management of mobile device radio state promotion and demotion | ||
Patent #
US 9,307,493 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
System and method for reduction of mobile network traffic used for domain name system (DNS) queries | ||
Patent #
US 9,325,662 B2
Filed 01/09/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
User as an end point for profiling and optimizing the delivery of content and data in a wireless network | ||
Patent #
US 9,326,189 B2
Filed 02/04/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Wireless traffic management system cache optimization using http headers | ||
Patent #
US 9,330,196 B2
Filed 06/14/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Sampling based elimination of duplicate data | ||
Patent #
US 9,344,112 B2
Filed 04/10/2012
|
Current Assignee
NetApp Inc.
|
Original Assignee
Craig Johnstone, Don Trimmer, Roger Stager, Yuval Frandzel, Ling Zheng
|
Access to supplemental data based on identifier derived from corresponding primary application data | ||
Patent #
US 9,396,277 B2
Filed 12/09/2011
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Technology Licensing LLC
|
Mobile application traffic optimization | ||
Patent #
US 9,407,713 B2
Filed 01/16/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Mobile device configured for communicating with another mobile device associated with an associated user | ||
Patent #
US 9,712,986 B2
Filed 03/22/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic | ||
Patent #
US 9,832,095 B2
Filed 12/14/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Enhanced customer service for mobile carriers using real-time and historical mobile application and traffic or optimization data associated with mobile devices in a mobile network | ||
Patent #
US 10,263,899 B2
Filed 04/10/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Method and system for object synchronization in CRM systems | ||
Patent #
US 10,599,620 B2
Filed 09/01/2012
|
Current Assignee
Full Circle Insights Inc.
|
Original Assignee
Full Circle Insights Inc.
|
Cross-pollination of multiple sync sources | ||
Patent #
US 7,526,768 B2
Filed 02/04/2004
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Arrangement of data synchronization in a telecommunications system | ||
Patent #
US 7,376,697 B2
Filed 11/11/2002
|
Current Assignee
Blackberry Limited
|
Original Assignee
Nokia Corporation
|
Methods and apparatuses to provide mobile applications | ||
Patent #
US 20070067373A1
Filed 07/11/2006
|
Current Assignee
Apacheta
|
Original Assignee
Apacheta
|
Systems and methods providing lightweight runtime code generation | ||
Patent #
US 7,219,329 B2
Filed 06/13/2003
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
System and method for synchronization of version annotated objects | ||
Patent #
US 20070180075A1
Filed 04/25/2002
|
Current Assignee
Oracle International Corporation
|
Original Assignee
Oracle International Corporation
|
On-line switch diagnostics | ||
Patent #
US 6,487,208 B1
Filed 09/09/1999
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Synchronization of controlled device state using state table and eventing in data-driven remote device control model | ||
Patent #
US 6,725,281 B1
Filed 11/02/1999
|
Current Assignee
Rovi Technologies Corporation
|
Original Assignee
Microsoft Corporation
|
Language-driven interface for an automated testing framework | ||
Patent #
US 6,907,546 B1
Filed 03/27/2000
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
Method of providing personal messaging using a virtual messaging assistant | ||
Patent #
US 6,650,739 B1
Filed 12/28/1998
|
Current Assignee
Pitney Bowes Incorporated
|
Original Assignee
Pitney Bowes Incorporated
|
System, method, and article of manufacture for test maintenance in an automated scripting framework | ||
Patent #
US 6,701,514 B1
Filed 03/27/2000
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System, method and article of manufacture for selecting a gateway of a hybrid communication system architecture | ||
Patent #
US 7,145,898 B1
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
Synchronizing databases | ||
Patent #
US 6,799,190 B1
Filed 04/11/2002
|
Current Assignee
Intellisync Corporation
|
Original Assignee
Intellisync Corporation
|
Initializing an ecommerce database framework | ||
Patent #
US 6,633,878 B1
Filed 07/30/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
Error injection apparatus and method | ||
Patent #
US 6,560,720 B1
Filed 09/09/1999
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Switch adapter testing | ||
Patent #
US 6,601,195 B1
Filed 09/09/1999
|
Current Assignee
Google LLC
|
Original Assignee
International Business Machines Corporation
|
System, method and article of manufacture for a call back architecture in a hybrid network with support for internet telephony | ||
Patent #
US 6,731,625 B1
Filed 02/10/1997
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
System and method for providing requested quality of service in a hybrid network | ||
Patent #
US 6,335,927 B1
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
Secure gateway interconnection in an e-commerce based environment | ||
Patent #
US 6,704,873 B1
Filed 07/30/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System, method and article of manufacture for an activity framework design in an e-commerce based environment | ||
Patent #
US 6,718,535 B1
Filed 07/30/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System and method for a directory service supporting a hybrid communication system architecture | ||
Patent #
US 6,754,181 B1
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
Method and apparatus for random update synchronization among multiple computing devices | ||
Patent #
US 6,343,299 B1
Filed 11/16/1998
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Managing user information on an e-commerce system | ||
Patent #
US 7,100,195 B1
Filed 07/30/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System, method and article of manufacture for communications utilizing calling, plans in a hybrid network | ||
Patent #
US 5,867,495 A
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
System, method and article of manufacture with integrated video conferencing billing in a communication system architecture | ||
Patent #
US 5,867,494 A
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
Method for video telephony over a hybrid network | ||
Patent #
US 5,999,525 A
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
System, method and article of manufacture for a communication system architecture including video conferencing | ||
Patent #
US 6,909,708 B1
Filed 11/18/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
MCI Communications Corporation
|
Mid-tier-based conflict resolution method and system usable for message synchronization and replication | ||
Patent #
US 6,983,293 B2
Filed 07/24/2002
|
Current Assignee
Huawei Technologies Co. Ltd.
|
Original Assignee
International Business Machines Corporation
|
Information management system, information management method, and system control apparatus | ||
Patent #
US 20060031927A1
Filed 07/31/2001
|
Current Assignee
AreaBe Japan Inc.
|
Original Assignee
AreaBe Japan Inc.
|
Contents synchronization system in network enviroment and a method therefor | ||
Patent #
US 20060224775A1
Filed 09/23/2003
|
Current Assignee
Nitgen Technologies Inc.
|
Original Assignee
Nitgen Technologies Inc.
|
Synchronization and data review system | ||
Patent #
US 20050033561A1
Filed 08/07/2003
|
Current Assignee
The MathWorks Inc.
|
Original Assignee
The MathWorks Inc.
|
Protectable expressions in objects having authorable behaviors and appearances | ||
Patent #
US 6,870,546 B1
Filed 09/14/2000
|
Current Assignee
Autodesk Inc.
|
Original Assignee
Autodesk Inc.
|
Allocating computing resources in a distributed environment | ||
Patent #
US 20050050545A1
Filed 08/29/2003
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
Version based content distribution and synchronization system and method | ||
Patent #
US 20050060370A1
Filed 09/17/2003
|
Current Assignee
Sony Electronics Inc., Sony Corporation
|
Original Assignee
Sony Electronics Inc., Sony Corporation
|
Multiple wireless device synchronization server | ||
Patent #
US 20050073991A1
Filed 02/19/2003
|
Current Assignee
PDA Verticals Corp.
|
Original Assignee
PDA Verticals Corp.
|
Synchronization and merge engines | ||
Patent #
US 20050102328A1
Filed 11/07/2003
|
Current Assignee
TiVo Corporation
|
Original Assignee
Plaxo Incorporated
|
System and method for a generic mobile synchronization framework | ||
Patent #
US 20050114431A1
Filed 11/25/2003
|
Current Assignee
SAP SE
|
Original Assignee
SAP SE
|
System and method for automated distributed account maintenance | ||
Patent #
US 20050165884A1
Filed 12/29/2003
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Method and apparatus for synchronizing firmware | ||
Patent #
US 6,678,741 B1
Filed 04/09/1999
|
Current Assignee
Oracle America Inc.
|
Original Assignee
Sun Microsystems Incorporated
|
System and method for recovering from a failed synchronization session | ||
Patent #
US 20030005161A1
Filed 06/27/2001
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Interfacing servers in a Java based e-commerce architecture | ||
Patent #
US 6,523,027 B1
Filed 07/30/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System, method and computer program product for creating disconnected mobile applications | ||
Patent #
US 20030115378A1
Filed 05/14/2002
|
Current Assignee
NVIDIA International Inc.
|
Original Assignee
Clickmarks Inc.
|
Business components framework | ||
Patent #
US 6,601,233 B1
Filed 07/30/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System and method of identifying and resolving conflicts among versions of a database table | ||
Patent #
US 6,598,059 B1
Filed 04/22/2000
|
Current Assignee
Oracle International Corporation
|
Original Assignee
Oracle Corporation
|
Method and system for server synchronization with a computing device | ||
Patent #
US 20030159136A1
Filed 02/25/2002
|
Current Assignee
Oracle America Inc.
|
Original Assignee
Siebel Systems Inc.
|
Codes table framework design in an E-commerce architecture | ||
Patent #
US 6,609,128 B1
Filed 07/30/1999
|
Current Assignee
Accenture LLP
|
Original Assignee
Accenture LLP
|
Object synchronization between objects stores on different computers | ||
Patent #
US 6,633,924 B1
Filed 10/02/1997
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Distributed framework for intertask communication between workstation applications | ||
Patent #
US 6,647,432 B1
Filed 12/04/1996
|
Current Assignee
Geoquest
|
Original Assignee
Geoquest
|
Data package including synchronization data | ||
Patent #
US 20020010807A1
Filed 01/02/2001
|
Current Assignee
Synchronoss Technologies Incorporated
|
Original Assignee
FusionOne Incorporated
|
Using query language for event filtering and aggregation | ||
Patent #
US 6,367,034 B1
Filed 09/21/1998
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
System and method for providing requested quality of service in a hybrid network | ||
Patent #
US 20020064149A1
Filed 06/14/2001
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
Verizon Services Corporation, MCI Communications Corporation, Verizon Communications Inc.
|
Memory-to-memory copy and compare/exchange instructions to support non-blocking synchronization schemes | ||
Patent #
US 20020078307A1
Filed 12/15/2000
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
Enabling an application access to setup information therefor | ||
Patent #
US 20020095663A1
Filed 08/31/2001
|
Current Assignee
Docubase Limited
|
Original Assignee
Docubase Limited
|
Deleting objects from a store of a device | ||
Patent #
US 20020108091A1
Filed 02/02/2001
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Use of object signature property as a search parameter during synchronization of objects on a computer | ||
Patent #
US 6,463,427 B1
Filed 03/16/1999
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
One-way hash functions for distributed data synchronization | ||
Patent #
US 6,470,329 B1
Filed 07/11/2000
|
Current Assignee
Oracle America Inc.
|
Original Assignee
Sun Microsystems Incorporated
|
Remote file system using network multicast | ||
Patent #
US 20020156931A1
Filed 04/20/2001
|
Current Assignee
Hewlett-Packard Development Company L.P.
|
Original Assignee
Hewlett-Packard Development Company L.P.
|
System and methods for communicating between multiple devices for synchronization | ||
Patent #
US 6,487,560 B1
Filed 05/13/1999
|
Current Assignee
Intellisync Corporation
|
Original Assignee
Starfish Software Inc.
|
Transaction verification system and method | ||
Patent #
US 20020198848A1
Filed 06/26/2002
|
Current Assignee
Entpr Solutions Incorporated
|
Original Assignee
John R. Michener
|
System, method and article of manufacture for a table-driven automated scripting architecture | ||
Patent #
US 6,502,102 B1
Filed 03/27/2000
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
Chemical supply system with a pair of bellows connected in series for pumping a fluid | ||
Patent #
US 6,183,223 B1
Filed 08/25/1997
|
Current Assignee
Koganei Corporation
|
Original Assignee
Koganei Corporation
|
Distributed synchronization of databases | ||
Patent #
US 6,223,187 B1
Filed 11/30/1999
|
Current Assignee
Intellisync Corporation
|
Original Assignee
Puma Technology Inc.
|
Method, apparatus and program product for interfacing a multi-threaded, client-based API to a single-threaded, server-based API | ||
Patent #
US 6,260,077 B1
Filed 10/24/1997
|
Current Assignee
Oracle America Inc.
|
Original Assignee
Sun Microsystems Incorporated
|
Using query language for provider and subscriber registrations | ||
Patent #
US 6,275,957 B1
Filed 10/20/1998
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
System for user control of version /Synchronization in mobile computing | ||
Patent #
US 6,317,754 B1
Filed 07/03/1998
|
Current Assignee
Hanger Solutions LLC
|
Original Assignee
Mitsubishi Electric Research Laboratories
|
System and method for forward custom marshaling event filters | ||
Patent #
US 6,314,533 B1
Filed 10/20/1998
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Apparatus and method for high performance remote application gateway servers | ||
Patent #
US 6,041,365 A
Filed 06/30/1997
|
Current Assignee
Aurel Kleinerman
|
Original Assignee
Aurel Kleinerman
|
Automatic data synchronization between a handheld and a host computer using pseudo cache including tags and logical data elements | ||
Patent #
US 5,974,238 A
Filed 08/07/1996
|
Current Assignee
Hewlett-Packard Development Company L.P.
|
Original Assignee
Compaq Computer Corporation
|
Method and system for high performance dynamic and user programmable cache arbitration | ||
Patent #
US 5,822,758 A
Filed 09/09/1996
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Dual stage pump system with pre-stressed diaphragms and reservoir | ||
Patent #
US 5,490,765 A
Filed 05/17/1993
|
Current Assignee
Ropintassco Holdings L.P.
|
Original Assignee
Cybor Corp
|
Communication for version management in a distributed information service | ||
Patent #
US 4,714,992 A
Filed 11/26/1985
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
20 Claims
-
1. A system that facilitates synchronizing data, comprising:
-
an analyzer component that analyzes a first data item from a source, the analyzer component compares the first data item with a second data item of a device and determines an output that represents a relationship between the first data item and at the second data item; and
a transfer component that transmits the first data item to the device in accordance with the output from the analyzer component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer-implemented method of cross-pollinating data, comprising:
-
receiving a first data item from a source;
comparing the first data item to a second data item stored in a device; and
synchronizing the first data item with the device if the first data item has a distinguishable characteristic from the second data item. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A system of cross-pollinating data, comprising:
-
means for receiving a first data item from a source;
means for comparing the first data item to a second data item stored on a disparate source to determine a distinguishable characteristic; and
means for cross-pollinating the first data item to the disparate source if the first data item has a distinguishable characteristic from the second data item. - View Dependent Claims (18, 19, 20)
-
1 Specification
This application is continuation-in-part of co-pending U.S. patent application Ser. No. 10/771,896 entitled “Cross-Pollination of Multiple Sync Sources” and filed on Feb. 4, 2004. The entirety of the above-noted application is incorporated by reference herein.
This invention is related to computer systems and more particularly to cross-pollination synchronization of PIM (personal information manager) data between multiple sources and multiple devices.
Electronic organizers are widely used to manage and organize a variety of PIM (personal information manager) data. An electronic organizer (e.g., PIM) enables a user to electronically retain personal data for any purpose and to retrieve the data as desired. Today, PIMs can vary widely, but common to all of them is to provide methods for managing and organizing personal information and to make the information readily available to the user.
By way of example, in accordance with a common PIM, a user can search contact entries alphabetically by name, by keyword, etc. Appointments can be searched by date, topic, etc. Essentially, once personal data is entered into a PIM, the user can query the data to retrieve the information in any manner desired.
PIMs have become increasingly more common. For instance, personal data assistants (PDAs) are probably the most common example of a PIM. Additionally, emerging mobile devices such as mobile telephones, smart phones, and handheld computers incorporate PIM functionality. Oftentimes, a user has multiple devices for which synchronization and/or cross-pollination of data is desired. By way of example, it is not uncommon for a user to have a PDA, a mobile telephone, a home personal computer (PC) and a work PC whereby cross-pollination of data is desired.
A common problem in a multi-device scenario is the generation of sync loops. By way of example, suppose a user synchronizes a contact from a first data source to a first device. Next, the contact is synchronized to a second data source. The contact is then synchronized from the second data source to a second device and ultimately back to the first data source. Once received at the first data source, the contact will appear as a modified version of the contact thus prompting a continual sync loop.
As described supra, a PIM or personal organizer can be synchronized with a source whereby the information is cross-pollinated onto a disparate source from the PIM. However, prior implementations are prone to creating duplicative entries as a result of synchronization. As well, as described above, prior implementations can generate “sync loops” whereby devices view information as changed information thereby initiating continuous looping of data.
Users who want their mobile device(s) to be a central repository for PIM data (e.g., calendar, contacts and tasks items) often synchronize from multiple sources. Today, users that employ multiple personal computers and an exchange server do not have an automated tool capable of adequately performing this synchronization task. Prior synchronization algorithms that attempted to synchronize a device or group of devices with multiple sources encountered duplicate entries, lost user data, and perpetual sync loops causing data to be synchronized multiple times.
What is needed is a system and/or methodology that provides for synchronization of PIM data from multiple sources (e.g., desktop Outlook-brand and exchange front-end servers) regardless of the synchronization protocol versions and different schemas. Further, a need exists for a system that allows for changes to be tracked and passed on to all sources, whereby duplicative items can be detected and prevented.
Moreover, a need exists for a system that includes a central repository for PIM data (e.g., calendar, contacts and tasks items) synchronized from multiple sources (e.g., two PC'"'"'s, and an exchange server). As well, a need exists for a system where synchronization allows for changes to be tracked and passed on to all sources and devices while detecting and preventing duplicative data items and sync loops.
The following presents a simplified summary of the invention in order to provide a basic understanding of some aspects of the invention. This summary is not an extensive overview of the invention. It is not intended to identify key/critical elements of the invention or to delineate the scope of the invention. Its sole purpose is to present some concepts of the invention in a simplified form as a prelude to the more detailed description that is presented later.
The invention disclosed and claimed herein, in one aspect thereof, comprises a technique and mechanism to effect cross-pollination synchronization of PIM (personal information manager) data to multiple sources. Additionally, a novel feature of the subject invention is the ability to effect cross-pollination synchronization with any number of devices and sources in a network.
The invention provides for a user to employ a mobile device or set of devices as a central repository for PIM data (e.g., calendar, contacts and tasks) synchronized from multiple sources (e.g., multiple PCs (personal computers), an exchange server). Prior synchronization algorithms that attempted to synchronize a single device with multiple sources encountered duplicate entries, lost user data, and perpetual sync loops where data is synchronized multiple times. The subject invention provides for synchronization of PIM data from multiple types of server sources to multiple devices regardless of the synchronization protocol versions and different schemas.
In another aspect, the invention provides for data changes to be tracked and passed on to all sources as well as duplicate items to be detected and prevented. In other words, items that have previously been synchronized can be detected whereby duplicative entries can be eliminated.
In addition to tracking data items added to a device/source, the subject invention provides mechanisms for processing changes to data items. Accordingly, edits can be saved to a device and propagated to other sources when synchronized. This can be possible as the invention provides mechanisms to track all changes. In still another aspect, a mechanism for processing deletes can be provided. Conventionally, the protocol sends down a delete for an item if it falls out of filter or if it is physically deleted. Because of possible data loss with the propagation of out-of-filter deletes across cross-pollinating sources, an aspect of the invention discloses a “hard” delete command (e.g., propagates across all cross-pollinating sources) that can be added to the synchronization protocol (e.g., AirSync-brand protocol) which will allow for differentiation between a “soft” and “hard” delete.
Another aspect is directed to a mechanism to detect duplicate items upon cross-pollination synchronization. The device can implement a form of property-level comparison which can be used to identify duplicates. Aspects can employ unique values (e.g., hash values) to effect comparison and detection of duplicates.
Still another aspect is directed to a mechanism for handling conflicts for items edited at both data sources. Synchronizing with multiple server versions is the subject of yet another aspect of the invention.
In yet another aspect thereof, an artificial intelligence component is provided that employs a probabilistic and/or statistical-based analysis to prognose or infer an action that a user desires to be automatically performed.
To the accomplishment of the foregoing and related ends, certain illustrative aspects of the invention are described herein in connection with the following description and the annexed drawings. These aspects are indicative, however, of but a few of the various ways in which the principles of the invention can be employed and the subject invention is intended to include all such aspects and their equivalents. Other advantages and novel features of the invention will become apparent from the following detailed description of the invention when considered in conjunction with the drawings.
The invention is now described with reference to the drawings, wherein like reference numerals are used to refer to like elements throughout. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the subject invention. It may be evident, however, that the invention can be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to facilitate describing the invention.
As used in this application, the terms “component” and “system” are intended to refer to a computer-related entity, either hardware, a combination of hardware and software, software, or software in execution. For example, a component can be, but is not limited to being, a process running on a processor, a processor, an object, an executable, a thread of execution, a program, and/or a computer. By way of illustration, both an application running on a server and the server can be a component. One or more components can reside within a process and/or thread of execution, and a component can be localized on one computer and/or distributed between two or more computers.
As used herein, the term to “infer” or “inference” refer generally to the process of reasoning about or inferring states of the system, environment, and/or user from a set of observations as captured via events and/or data. Inference can be employed to identify a specific context or action, or can generate a probability distribution over states, for example. The inference can be probabilistic-that is, the computation of a probability distribution over states of interest based on a consideration of data and events. Inference can also refer to techniques employed for composing higher-level events from a set of events and/or data. Such inference results in the construction of new events or actions from a set of observed events and/or stored event data, whether or not the events are correlated in close temporal proximity, and whether the events and data come from one or several event and data sources.
Referring initially to the drawings,
As illustrated in
In one aspect, the analyzer component 108 can examine a data item received from the data source component 104. By way of example, the analyzer component 108 can evaluate the data item received in relation to contents (e.g., data items) of device component 106. If upon evaluating the received data item it is determined that the data item is distinct from contents of the device component 106, the transfer component 110 can transfer the data item to the source component 104. In one aspect, the transferred item overwrites an existing data item in the source component 104. In another aspect, the transferred item is added to the contents of the source component 104.
Although the aspect illustrated in
In another aspect, the invention provides for changes to be tracked and passed on to all sources as well as duplicate items to be detected and prevented. In other words, items that have previously been synchronized can be detected whereby duplicative entries can be eliminated.
In addition to tracking data items added to a device/source, the subject invention can include mechanisms for processing changes to data items. Accordingly, edits can be saved to a device and propagated to other sources when synchronized. This can be possible as the invention provides mechanisms to track all changes. In still another aspect, a mechanism for processing deletes can be provided. Conventionally, the protocol sends down a delete for an item if it falls out of filter or if it is physically deleted.
Because of possible data loss with the propagation of out-of-filter deletes across cross-pollinating sources, an aspect of the invention discloses a “hard” delete command that can be added to the synchronization protocol (e.g., AirSync-brand protocol) which will allow for differentiation between a “soft” and “hard” delete. With respect to a “hard” delete, the item can be physically deleted from the store. This “hard” delete can propagate across all cross-pollinating sources in accordance with the invention. On the other hand, a “soft” delete refers to the situation when an item has gone out of filter. Accordingly the invention can remove the item from the device, but does not propagate the delete to any other source.
Another aspect is directed to a mechanism to detect duplicate items upon cross-pollination synchronization. The device can implement a form of property-level comparison which can be used to identify duplicates. Each item on the device can have a hash value that is stored as a custom property on the item. When a device receives an add it can first calculate the hash value for the new item. The device can then search the store for an item with the identical hash value. If the hash value is located, the device will consider the item a duplicate. Accordingly, the invention can associate the item that the server sent down with an item already present on the device.
Still another aspect is directed to a mechanism for handling conflicts for items edited at both data sources. Synchronizing with multiple server versions is the subject of yet another aspect of the invention. For example, suppose a device is synchronizing with a server of version 2.0, and desktop synchronizing with a desktop version 2.5. In this scenario, suppose version 2.0 supports properties ABC, and version 2.5 supports an additional property D. The invention can provide for the device to have the richest set of properties from all sources for which it cross-pollinates. This can be accomplished by writing detected duplicates to the device, since it is not possible to determine whether that duplicate was from a source that supported a higher or lower version of the protocol.
If the source supports a lower version than the other source, the invention writes to the device and does not get any additional info. The information will be written to the other source once on the next synchronization cycle. Effectively, when the aspect writes a change, it only writes changes on properties for which the protocol is aware. In the example, since the item is of a lower version (e.g., 2.0), the system does not know about property D. Therefore, it does not touch it, regardless of whether it exists or not. On the other hand, if the source supports a higher version than the other source, the invention writes to the device and gets the additional properties (e.g., in the example, property D) that was not present previously.
At 202, a data item is received. This data item can be received at a data source and/or device (e.g., handheld device, PDA). At 204, the data item is analyzed to determine if it present on the received device. For example, the data item can be analyzed in accordance with a hash value, time stamp, version, etc. As will be described in greater detail below, rules-based logic can be employed to manage the operation of the analyzer and/or system.
A determination is made at 206 if the data item exists. It is to be appreciated that this determination is based upon the criteria and/or characteristic(s) employed at 204. If the item exists, a stop block is reached as illustrated. If the item does not exist, synchronize pending is set at 208. It will be appreciated that this data item can be synchronized between devices.
Referring now to
With reference now to
Additionally, the rules component 402 can be employed to factor device characteristics (e.g., memory capacity, battery longevity) into decision making logic with respect to cross-pollinating and/or synchronizing. It is to be appreciated that any decision logic can be predefined by the rules component 402. Artificial intelligence (AI) based logic can be employed to predict and/or infer an action to be automatically performed with respect to cross-pollination and/or synchronization in accordance with the invention. These alternative AI-based schemes will be described in greater detail infra with reference to
The compare component 504 can be employed to effect comparing the hash value to hash values contained within a device and/or source. As described supra, the system can utilize rules and/or AI based logic to act upon the result(s) of such a comparison. Although the example of
In operation, when an item is added to a device, a hash can be calculated by the hash component 502. This hash can correspond to any subset of the items properties. When a device receives a data item to add, the device employs the hash component 502 to generate a hash. Subsequently, the compare component 504 can be employed to compare the calculated hash of the new item to a has of the existing items. It is to be understood that this facilitates the detection of duplicate data items.
In accordance with an aspect, two levels of property level matching can be employed in calculating the hash value. The two levels of property level matching in accordance with this aspect are exact data comparison and property existence. Each of these will be described in greater detail below.
With regard to exact data comparison (e.g., primary keyset), a field or set of fields can be defined as the primary properties to be compared to consider the item a duplicate. This field or set of fields can be distinct for each data type (e.g., contacts, tasks). An exemplary secondary keyset can be property existence. In one aspect, this can refer to a larger set of fields than the primary keyset. The set of fields can be employed to verify the existence of data related to the properties. It will be appreciated that this set of fields can assist to determine that if a field is set in one item and is blank in another, the items will not be considered duplicates. This determination can be made even if the primary key matches.
Upon generating and/or synchronizing an item, the hash component 502 can calculate a hash and store the hash on the particular data item. The hash value can be updated upon any modification of the item. Following is an exemplary primary and secondary keyset for Contacts, Calendar, and Tasks, according to one aspect. It is to be appreciated that the list that follows is an exemplary list and other detection properties can be employed without departing from the novel functionality of the invention.
As described herein, a data item can be marked for cross-pollination which can effect the data item to automatically be populated onto all devices/sources in a network. A device can request all data items to be added from the data source in a network. Accordingly, the device transfers to the data source all data items that meet the designated criteria (e.g., add). It will be understood that, because the duplicated adds have been marked, they will not be issued upon the request. According to one aspect, a data item on a device can track three properties, ItemID, ServerID and SyncHash. It will be appreciated that the ServerID values and SyncHash can be stored as custom properties on each Item.
The ItemID can be used to uniquely identify the data item. ServerID can represent the ID that identifies the item at the server (e.g., desktop, PC1, PC2). It is to be appreciated that an item can have multiple Server IDs stored as custom properties in the item. The SyncHash is the sync hash value used to detect duplicates. This value can be calculated/re-calculated upon each change. In accordance with an aspect, the ServerID property can have four states: Sync Pending, Valid ServerID, Pending Delete and Not Syncing. Each of these states are described in greater detail below.
The Sync Pending state describes when an item is on a device and not yet synchronized to the target data source. The item can be created on the data source upon next synchronization cycle. The Valid ServerID state refers to the situation whereby the item ServerID is stored to allow for proper mapping with the data source. Pending Delete is the state when the items ServerID has synchronized in the past to a particular data source but the user has requested that it no longer synchronize to the subject source. On the next synchronization cycle, the item is deleted from the data source and the property is cleared. Finally, Not Syncing refers to the state when the item is not synchronizing with the data source.
Turning now to
The alternative synchronize component 602 of
The sync loop reduction component 612 can be employed to address situations of sync looping of data. As previously described, sync loops can occur during synchronization of data when a receiving entity (e.g., source or device) views the received data as a change to data already present within the receiving entity. As such, in conventional systems, the receiving entity would mark the received data as a new or changed data item thus, perpetuating (e.g., looping) the data item throughout the network. It will be understood that this phenomenon can result in an endless sync loop situation.
To address these conventional situations, a sync loop reduction component 612 can be provided. The sync loop reduction component 612 can be employed together with the analyzer component 108 to detect and halt sync loops. Essentially, the sync loop reduction component 612 can employ the results of the comparing functionality provided by the analyzer component 108 to address and eliminate the undesirable phenomenon of sync looping.
Continued reference to
A classifier is a function that maps an input attribute vector, x=(x1, x2, x3, x4, xn), to a confidence that the input belongs to a class, that is, f(x)=confidence(class). Such classification can employ a probabilistic and/or statistical-based analysis (e.g., factoring into the analysis utilities and costs) to prognose or infer an action that a user desires to be automatically performed. In the case of PIM systems, for example, attributes can be words or phrases or other data-specific attributes derived from the words (e.g., database tables, the presence of key terms, and the classes are categories or areas of interest e.g., levels of priorities.
A support vector machine (SVM) is an example of a classifier that can be employed. The SVM operates by finding a hypersurface in the space of possible inputs, which hypersurface attempts to split the triggering criteria from the non-triggering events. Intuitively, this makes the classification correct for testing data that is near, but not identical to training data. Other directed and undirected model classification approaches include, e.g., naïve Bayes, Bayesian networks, decision trees, neural networks, fuzzy logic models, and probabilistic classification models providing different patterns of independence can be employed. Classification as used herein also is inclusive of statistical regression that is utilized to develop models of priority.
As will be readily appreciated from the subject specification, the invention can employ classifiers that are explicitly trained (e.g., via a generic training data) as well as implicitly trained (e.g., via observing user behavior, receiving extrinsic information). For example, SVM'"'"'s are configured via a learning or training phase within a classifier constructor and feature selection module. Thus, the classifier(s) can be used to automatically learn and perform a number of functions, including but not limited to determining according to a predetermined criteria when a data item is generated, when it is changed (e.g., updated), etc. The criteria can include, for example, the type of data, the importance of the data, and the level of confidence requested for synchronizing and/or cross-pollinating the data.
The AI component 614 can include predict and/or infer if a data item should be synchronized and/or cross-pollinated to a particular device/source. By way of example, the AI component can consider the factors such as memory capacity of a device/source, importance of the substance of the data item, origination location of the data item, etc. to automatically perform an action.
Referring now to
The components described with reference to FIGS. 1 to 7 will be better understood following a review of the methodology of
At 804, a sync hash of the data item can be calculated. A search for the sync hash can be effected at 806. It will be appreciated that this search can be executed upon all or a subset of the contents of the device and/or source. At 808, a determination is made if cross-pollination is desired. As described above, the decision to cross-pollinate can be pre-defined by employing a rules-based logic or inferred by an AI component.
If, at 808, a determination is made that cross-pollination is not desired, a new item is created at 810. Accordingly, synchronization of the new item is set at 812. On the other hand, if at 808, cross-pollination is desired, the determination if the sync hash has been found is made at 814.
If the hash value is not found at 814, the system creates a new item at 810 and sets synchronization pending at 812. If the hash is determined to match an existing hash value, the data item is determined to be a duplicate. Accordingly, at 816, a decision is made if the data item is currently synchronizing with the subject data source. If currently synchronizing with this data source at 816, a new item is created at 810 and synchronization pending is set at 812. If the data item is not currently synchronizing with the subject data source, the data item is determined to be a duplicate at 818. Accordingly, the existing data item can be updated with identification data from the received data item.
The following scenarios are provided to add context to the invention. It is to be understood and appreciated that the scenarios that follow are not intended to limit the scope of the invention in any manner. Rather, the scenarios are provided to exhibit operational cross-pollination and/or synchronization aspects in accordance with the invention. It is to be understood that countless scenarios exist that can arise depending on user preference, number of devices, type of data, etc. These additional aspects are intended to fall within the scope of the invention and claims appended hereto.
FIGS. 9 to 19 illustrate an exemplary cross-pollination and/or synchronization system (e.g., network 900, 1300) in accordance with the invention. As shown in
Continuing with the example of
It will be appreciated that a rules-based logic and/or AI-based reasoning mechanism can be employed to effect such a cross-pollination. In other words, in one example, the system can be designed to cross-pollinate data items of a particular size, date stamp, item type, etc. in accordance with predefined rules and/or AI reasoning techniques.
It is to be appreciated that cross-pollination can be toggled on or off as desired. For example, a user may not want to cross-pollinate personal items from a home source to a work source. This ability to toggle cross-pollination mechanisms affords a user greater control over data items. Additionally, as illustrated in the methodology of
Referring now to another exemplary network 1300. Generally, network 1300 can illustrate a data flow of Contact 2 1302 between multiple devices (e.g., PC1 1304, PC2, 1306, PDA1 1308 and SP1 1310). Initially, suppose Contact 2 is synchronized from PC1 1304 to PDA1 1308 as shown. Additionally, suppose Contact 2 is synchronized to SP1 1310 from PC1 1302 as illustrated in
If cross-pollination is enabled, Contact 2 1302 can be sent to PC2 1306 as illustrated in
Continuing with the example of network 1300,
Referring now to
With continued reference to
Custom synchronization properties 2012 can be maintained in each of the exemplary tables (e.g., 2006, 2008, 2010) as illustrated. As well, modification data (e.g., LastModified variable 2014 can be retained upon generation and/or modification. This variable can be employed by the synchronize component to effect synchronization in accordance with desired procedure. For example, this variable assists in resolving conflicts between devices with respect to a particular data item. A change to any of the tables associated with an item can trigger an update to the LastModified variable 2014.
A Data Source table 2016 can be employed in connection with the sync table 2002. The Data Source table can provide data to track each data source. The DataSourceID can be any unique identifier assigned to a data source. The DataSourceType indicates the type of Data Source. In one aspect, this variable can be used to track the capabilities of a Data Source. The FriendlyName can be a name for each Data Source that is used by applications to identify stores. The NetworkAddress variable represents an address for the Data Source. It is to be understood that this value can be set depending on DataSourceType.
The following table illustrates exemplary Data Source APIs (application program interfaces) that can be employed in aspects of the invention.
Referring now to
Generally, program modules include routines, programs, components, data structures, etc., that perform particular tasks or implement particular abstract data types. Moreover, those skilled in the art will appreciate that the inventive methods can be practiced with other computer system configurations, including single-processor or multiprocessor computer systems, minicomputers, mainframe computers, as well as personal computers, hand-held computing devices, microprocessor-based or programmable consumer electronics, and the like, each of which can be operatively coupled to one or more associated devices.
The illustrated aspects of the invention may also be practiced in distributed computing environments where certain tasks are performed by remote processing devices that are linked through a communications network. In a distributed computing environment, program modules can be located in both local and remote memory storage devices.
A computer typically includes a variety of computer-readable media. Computer-readable media can be any available media that can be accessed by the computer and includes both volatile and nonvolatile media, removable and non-removable media. By way of example, and not limitation, computer-readable media can comprise computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital video disk (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by the computer.
Communication media typically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism, and includes any information delivery media. The term “modulated data signal” means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared and other wireless media. Combinations of the any of the above should also be included within the scope of computer-readable media.
With reference again to
The system bus 2108 can be any of several types of bus structure that may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and a local bus using any of a variety of commercially available bus architectures. The system memory 2106 includes read-only memory (ROM) 2110 and random access memory (RAM) 2112. A basic input/output system (BIOS) is stored in a non-volatile memory 2110 such as ROM, EPROM, EEPROM, which BIOS contains the basic routines that help to transfer information between elements within the computer 2102, such as during start-up. The RAM 2112 can also include a high-speed RAM such as static RAM for caching data.
The computer 2102 further includes an internal hard disk drive (HDD) 2114 (e.g., EIDE, SATA), which internal hard disk drive 2114 may also be configured for external use in a suitable chassis (not shown), a magnetic floppy disk drive (FDD) 2116, (e.g., to read from or write to a removable diskette 2118) and an optical disk drive 2120, (e.g., reading a CD-ROM disk 2122 or, to read from or write to other high capacity optical media such as the DVD). The hard disk drive 2114, magnetic disk drive 2116 and optical disk drive 2120 can be connected to the system bus 2108 by a hard disk drive interface 2124, a magnetic disk drive interface 2126 and an optical drive interface 2128, respectively. The interface 2124 for external drive implementations includes at least one or both of Universal Serial Bus (USB) and IEEE 1394 interface technologies. Other external drive connection technologies are within contemplation of the subject invention.
The drives and their associated computer-readable media provide nonvolatile storage of data, data structures, computer-executable instructions, and so forth. For the computer 2102, the drives and media accommodate the storage of any data in a suitable digital format. Although the description of computer-readable media above refers to a HDD, a removable magnetic diskette, and a removable optical media such as a CD or DVD, it should be appreciated by those skilled in the art that other types of media which are readable by a computer, such as zip drives, magnetic cassettes, flash memory cards, cartridges, and the like, may also be used in the exemplary operating environment, and further, that any such media may contain computer-executable instructions for performing the methods of the invention.
A number of program modules can be stored in the drives and RAM 2112, including an operating system 2130, one or more application programs 2132, other program modules 2134 and program data 2136. All or portions of the operating system, applications, modules, and/or data can also be cached in the RAM 2112. It is appreciated that the invention can be implemented with various commercially available operating systems or combinations of operating systems.
A user can enter commands and information into the computer 2102 through one or more wired/wireless input devices, e.g., a keyboard 2138 and a pointing device, such as a mouse 2140. Other input devices (not shown) may include a microphone, an IR remote control, a joystick, a game pad, a stylus pen, touch screen, or the like. These and other input devices are often connected to the processing unit 2104 through an input device interface 2142 that is coupled to the system bus 2108, but can be connected by other interfaces, such as a parallel port, an IEEE 1394 serial port, a game port, a USB port, an IR interface, etc.
A monitor 2144 or other type of display device is also connected to the system bus 2108 via an interface, such as a video adapter 2146. In addition to the monitor 2144, a computer typically includes other peripheral output devices (not shown), such as speakers, printers, etc.
The computer 2102 may operate in a networked environment using logical connections via wired and/or wireless communications to one or more remote computers, such as a remote computer(s) 2148. The remote computer(s) 2148 can be a workstation, a server computer, a router, a personal computer, portable computer, microprocessor-based entertainment appliance, a peer device or other common network node, and typically includes many or all of the elements described relative to the computer 2102, although, for purposes of brevity, only a memory/storage device 2150 is illustrated. The logical connections depicted include wired/wireless connectivity to a local area network (LAN) 2152 and/or larger networks, e.g., a wide area network (WAN) 2154. Such LAN and WAN networking environments are commonplace in offices and companies, and facilitate enterprise-wide computer networks, such as intranets, all of which may connect to a global communications network, e.g., the Internet.
When used in a LAN networking environment, the computer 2102 is connected to the local network 2152 through a wired and/or wireless communication network interface or adapter 2156. The adaptor 2156 may facilitate wired or wireless communication to the LAN 2152, which may also include a wireless access point disposed thereon for communicating with the wireless adaptor 2156.
When used in a WAN networking environment, the computer 2102 can include a modem 2158, or is connected to a communications server on the WAN 2154, or has other means for establishing communications over the WAN 2154, such as by way of the Internet. The modem 2158, which can be internal or external and a wired or wireless device, is connected to the system bus 2108 via the serial port interface 2142. In a networked environment, program modules depicted relative to the computer 2102, or portions thereof, can be stored in the remote memory/storage device 2150. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computers can be used.
The computer 2102 is operable to communicate with any wireless devices or entities operatively disposed in wireless communication, e.g., a printer, scanner, desktop and/or portable computer, portable data assistant, communications satellite, any piece of equipment or location associated with a wirelessly detectable tag (e.g., a kiosk, news stand, restroom), and telephone. This includes at least Wi-Fi and Bluetooth™ wireless technologies. Thus, the communication can be a predefined structure as with a conventional network or simply an ad hoc communication between at least two devices.
Wi-Fi, or Wireless Fidelity, allows connection to the Internet from a couch at home, a bed in a hotel room, or a conference room at work, without wires. Wi-Fi is a wireless technology similar to that used in a cell phone that enables such devices, e.g., computers, to send and receive data indoors and out; anywhere within the range of a base station. Wi-Fi networks use radio technologies called IEEE 802.11 (a, b, g, etc.) to provide secure, reliable, fast wireless connectivity. A Wi-Fi network can be used to connect computers to each other, to the Internet, and to wired networks (which use IEEE 802.3 or Ethernet). Wi-Fi networks operate in the unlicensed 2.4 and 5 GHz radio bands, at an 11 Mbps (802.11a) or 54 Mbps (802.11b) data rate, for example, or with products that contain both bands (dual band), so the networks can provide real-world performance similar to the basic 10BaseT wired Ethernet networks used in many offices.
Referring now to
The system 2200 also includes one or more server(s) 2204. The server(s) 2204 can also be hardware and/or software (e.g., threads, processes, computing devices). The servers 2204 can house threads to perform transformations by employing the invention, for example. One possible communication between a client 2202 and a server 2204 can be in the form of a data packet adapted to be transmitted between two or more computer processes. The data packet may include a cookie and/or associated contextual information, for example. The system 2200 includes a communication framework 2206 (e.g., a global communication network such as the Internet) that can be employed to facilitate communications between the client(s) 2202 and the server(s) 2204.
Communications can be facilitated via a wired (including optical fiber) and/or wireless technology. The client(s) 2202 are operatively connected to one or more client data store(s) 2208 that can be employed to store information local to the client(s) 2202 (e.g., cookie(s) and/or associated contextual information). Similarly, the server(s) 2204 are operatively connected to one or more server data store(s) 2210 that can be employed to store information local to the servers 2204.
What has been described above includes examples of the invention. It is, of course, not possible to describe every conceivable combination of components or methodologies for purposes of describing the subject invention, but one of ordinary skill in the art may recognize that many further combinations and permutations of the invention are possible. Accordingly, the invention is intended to embrace all such alterations, modifications and variations that fall within the spirit and scope of the appended claims. Furthermore, to the extent that the term “includes” is used in either the detailed description or the claims, such term is intended to be inclusive in a manner similar to the term “comprising” as “comprising” is interpreted when employed as a transitional word in a claim.