IP Library Granted Patent US 8,910,140
Granted Patent B1
US 8,910,140 · App. 14/315,634 · Granted Dec 9, 2014

Methods and systems for transferring data over a network

Inventors: David Giannini (Santa Barbara, CA); Scott Herriman (Santa Barbara, CA); Donnie Tognazzini (Santa Barbara, CA); Colin D. Kelley (Santa Barbara, CA)
Assignee: Callwave Communications, LLC
G06F8/65G06F8/68G06F8/67
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,910,140
App. No.
14/315,634
Granted
Dec 9, 2014
Kind
B1
Abstract

A method of distributing a software upgrade to user computer systems having a software application installed thereon is disclosed. A determination is made as whether the software upgrade is to be a forced upgrade or a recommended upgrade for a first user based on a parameter related to the first user or the software upgrade. A determination is made as to whether a software upgrade file is to be downloaded to a user computer using a trickle mode or a burst mode.

Claims (51)

1. A method of distributing a software update, the method comprising:

providing a software program for a mobile computing device associated with a user;

detecting a first online presence of the mobile computing device having the software program installed thereon;

at least partly in response to the detection of an online presence of the mobile computing device, initiating a software program update download for the software program at a first download rate,

wherein a software program update download rate to the mobile computing device is based at least in part on a network access mechanism of the mobile computing device, and

the software program update download rate is determined prior to the initiation of the software program update download;

pausing the software program update download of the software program at least partly in response to a first event;

detecting a second online presence of the mobile computing device, wherein the detection of the second online presence of the mobile computing device occurs after the detection of the first online presence of the mobile computing device; and

in response to the detection of the second online presence of the mobile computing device, resume the software program update download of the software program.

2. A system, comprising:

a data store configured to store computer-executable instructions, including a software program; and

a hardware processor in communication with the data store, the hardware processor, configured to execute the computer-executable instructions, including the software program, to at least:

provide a software program for a mobile computing device associated with a user;

detect a first online presence of the mobile computing device having the software program installed thereon;

at least partly in response to the detection of the first online presence of the mobile computing device, initiate a software program update download for the software program at a first download rate,

wherein a software program update download rate to the mobile computing device is based at least in part on a level of system performance of the mobile computing device, and

the software program update download rate is determined prior to the initiation of the software program update download;

pause the software program update download of the software program at least partly in response to a first event;

detect a second online presence of the mobile computing device, wherein the detection of the second online presence of the mobile computing device occurs after the detection of the first online presence of the mobile computing device; and

in response to the detection of the second online presence of the mobile computing device, resume the software program update download of the software program.

3. The system as defined in claim 2 , wherein the hardware processor is configured to execute the computer-executable instructions to cause, at least in part, an installation of the software program update to be performed in response to a user confirmation of an update notice displayed via the software program.

4. The system as defined in claim 2 , wherein the user is not notified that the software program update download is occurring.

5. The system as defined in claim 2 , wherein the hardware processor is configured to execute the computer-executable instructions to determine what version of the software program is installed on the mobile computing device of the user prior to downloading the software program update to the mobile computer device of the user.

6. The system as defined in claim 2 , wherein the hardware processor is configured to execute the computer-executable instructions to:

read a start time period from computer readable memory; and

subsequent to the detection of the first online presence of the mobile computing device, delay the software program update initiation to a time corresponding to the start time period.

7. The system as defined in claim 2 , wherein the software program comprises a photo editing application.

8. The system as defined in claim 2 , wherein the second online presence detection comprises a plurality of online presence detections and the resumption of the software program update downloads of the software program comprises a plurality of resumptions until the software program update download completes.

9. The system as defined in claim 2 , wherein the provided software program contains a security flaw repaired in the software program update.

10. The system as defined in claim 2 , wherein the provided software program update contains a media update.

11. The system as defined in claim 2 , wherein the software program comprises a call processing application.

12. A system, comprising:

a data store configured to store computer-executable instructions, including a software program; and

a hardware processor in communication with the data store, the hardware processor, configured to execute the computer-executable instructions, including the software program, to at least:

provide a software program for a mobile computing device associated with a user;

detect a first online presence of the mobile computing device having the software program installed thereon;

at least partly in response to the detection of the first online presence of the mobile computing device, initiate a software program update download for the software program at a first download rate,

wherein a software program update download rate to the mobile computing device is based at least in part on a network access mechanism of the mobile computing device, and

the software program update download rate is determined prior to the initiation of the software program update download;

pause the software program update download of the software program at least partly in response to a first event;

detect a second online presence of the mobile computing device, wherein the detection of the second online presence of the mobile computing device occurs after the detection of the first online presence of the mobile computing device; and

in response to the detection of the second online presence of the mobile computing device, resume the software program update download of the software program.

13. The system as defined in claim 12 , wherein the user is not notified that the software program update download is occurring.

14. The system as defined in claim 12 , wherein the hardware processor is configured to execute the computer-executable instructions to cause, at least in part, an installation of the software program update to be performed in response to a user confirmation of an update notice displayed via the software program.

15. The system as defined in claim 12 , wherein the hardware processor is configured to execute the computer-executable instructions to determine what version of the software program is installed on the mobile computing device of the user prior to downloading the software program update to the mobile computer device of the user.

16. The system as defined in claim 12 , wherein the hardware processor is configured to execute the computer-executable instructions to:

read a start time period from computer readable memory; and

subsequent to the detection of the first online presence of the mobile computing device, delay the software program update initiation to a time corresponding to the start time period.

17. The system as defined in claim 12 , wherein the second online presence detection comprises a plurality of online presence detections and the resumption of the software program update downloads of the software program comprises a plurality of resumptions until the software program update download completes.

18. The system as defined in claim 12 , wherein the provided software program contains a security flaw repaired in the software program update.

19. The system as defined in claim 12 , wherein the provided software program update contains a media update.

Assignments (1)
SECURITY INTEREST Recorded May 20, 2016
From: CALLWAVE COMMUNICATIONS, LLC
To: TECHNOLOGY INVESTMENT HOLDINGS II, LLC
Reel/Frame 038770/0923 →
Continuity (3)
Continuation 13615039 · Sep 13, 2012
Continuation 12901999 · Oct 11, 2010
Continuation 11040185 · Jan 21, 2005