IP Library Granted Patent US 7,818,734
Granted Patent B2
US 7,818,734 · App. 11/040,185 · Granted Oct 19, 2010

Methods and systems for transferring data over a network

Assignee: Callwave, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,818,734
App. No.
11/040,185
Granted
Oct 19, 2010
Kind
B2
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 (62)

1. A method of distributing a telecommunications software upgrade to user computer systems having a software application installed thereon, the method comprising:

(a) determining via a telecommunications software distribution computer system that a software upgrade is to be performed relative to the telecommunications software application, wherein the telecommunications software application is installed upon a plurality of user computers and wherein the telecommunications software application is configured to provide telecommunications related services;

(b) determining via the telecommunications software distribution computer system whether the telecommunications software upgrade is to be a forced upgrade or a recommended upgrade for a first user based on a first parameter related to the first user or the software upgrade wherein the first parameter relates to a level of call processing services that the first user subscribes to, the call processing services including at least a call processing service related to a voice call;

(c) determining via the software distribution computer system whether the software upgrade is to be a forced upgrade or a recommended upgrade for a second user based on a second parameter related to the second user or the software upgrade, wherein the second parameter relates to a level of call processing services that the second user subscribes to, the call processing services that the second user subscribes to including at least a call processing service related to a voice call; and

(d) determining via the telecommunications software distribution computer system if a telecommunications software upgrade file is to be downloaded to a first user computer system and a second user computer system using a trickle mode or a burst mode,

wherein the telecommunications software upgrade is performed with respect to the first user based at least in part on determinations made in (a), (b), or (d), and

wherein the telecommunications software upgrade is performed with respect to the second user based at least in part on determinations made in (a), (c), or (d).

2. The method as defined in claim 1 , wherein if the upgrade is a forced upgrade, the software upgrade file is downloaded to, and installed on the first user computer system without requesting permission from the first user to download or install the software upgrade file and without the user computer initiating the upgrade.

3. The method as defined in claim 1 , wherein if the upgrade is a recommended upgrade, the method further comprising:

downloading the upgrade file to the first user computer system without requesting permission from the first user to download the software upgrade file;

requesting permission from the first user to install the upgrade; and

after receiving permission from the first user, causing the installation to be performed.

4. The method as defined in claim 1 , further comprising determining what version of the software application is installed on the first user computer system prior to downloading the software upgrade file to the first user computer system.

5. The method as defined in claim 1 , wherein if the upgrade is a recommended upgrade, the method further comprising:

requesting permission from the first user to install the upgrade;

receiving permission from the first user;

downloading the upgrade file to the first user computer system; and

after receiving permission from the first user, causing the upgrade to be performed.

6. The method as defined in claim 1 , the method further comprising:

reading a start time from computer readable memory; and

based at least in part on the start time, determining when the download to the first user computer is to be performed.

7. The method as defined in claim 1 , wherein the first parameter relates to a security flaw in the software application previously installed on the first user computer.

8. The method as defined in claim 1 , further comprising reading from computer memory a value indicating how many downloads are to be performed in a first period of time.

9. The method as defined in claim 1 , further comprising reading from computer memory a value indicating how many downloads are to be performed in a first period of time.

10. The method as defined in claim 1 , further comprising reading from computer memory:

a trickle mode chunk size; and

a trickle mode sleep duration,

wherein the chunk size and sleep duration are to be used in downloading the software upgrade file.

11. The method as defined in claim 1 , wherein the trickle mode has an associated trickle chunk size used to transfer the upgrade file, and the burst mode is not limited to transferring the upgrade file using the trickle chunk size.

12. The method as defined in claim 1 , further comprising transferring the upgrade file to the first user computer system in trickle mode using a varying chunk size.

13. The method as defined in claim 1 , further comprising deleting a partially downloaded upgrade file.

14. The method as defined in claim 1 , wherein the software application is a call processing client application.

15. The method as defined in claim 1 , further comprising:

initiating the transfer of the upgrade file to the first user computer system in burst mode; and

after initiating the transfer of the upgrade file in burst mode, transferring at least a portion of the upgrade file in trickle mode.

16. The method as defined in claim 1 , further comprising:

initiating the transfer of the upgrade file to the first user computer system in trickle mode; and

after initiating the transfer of the upgrade file in trickle mode, transferring at least a portion of the upgrade file in burst mode.

17. The method as defined in claim 1 , further comprising initiating the transfer of the upgrade file to the first user computer system a predetermined amount of time after the first user has performed a log in by the first user.

18. A method of distributing a telecommunications software upgrade to user computer systems having a software application installed thereon, the method comprising:

(a) determining via a telecommunications software distribution computer system that a software upgrade is to be performed relative to the telecommunications software application, wherein the telecommunications software application is installed upon a plurality of user computers and wherein the telecommunications software application is configured to provide telecommunications related services;

(b) determining if the first user is to receive the software upgrade based on one or more of:

which country the first user computer is located in; or

a phone number associated with the first user;

(c) determining via the telecommunications software distribution computer system whether the telecommunications software upgrade is to be a forced upgrade or a recommended upgrade for a first user based on a first parameter related to the first user or the software upgrade,

wherein the first parameter relates to a level of call processing services that the first user subscribes to;

(d) determining via the software distribution computer system whether the software upgrade is to be a forced upgrade or a recommended upgrade for a second user based on a second parameter related to the second user or the software upgrade,

wherein the second parameter relates to a level of call processing services that the second user subscribes to; and

(e) determining via the telecommunications software distribution computer system if a telecommunications software upgrade file is to be downloaded to a first user computer system and a second user computer system using a trickle mode or a burst mode,

wherein the telecommunications software upgrade is performed with respect to the first user based at least in part on determinations made in (a), (b), (c), or (e), and

wherein the telecommunications software upgrade is performed with respect to the second user based at least in part on determinations made in (a), (c), (d), or (e).

19. A method of distributing a telecommunications software upgrade to user computer systems having a software application installed thereon, the method comprising:

(a) determining via a telecommunications software distribution computer system that a software upgrade is to be performed relative to the telecommunications software application, wherein the telecommunications software application is installed upon a plurality of user computers and wherein the telecommunications software application is configured to provide telecommunications related services;

(b) determining via the telecommunications software distribution computer system whether the telecommunications software upgrade is to be a forced upgrade or a recommended upgrade for a first user based on a first parameter related to the first user or the software upgrade,

wherein the first parameter relates to a level of call processing services that the first user subscribes to, and

wherein if the upgrade is a recommended upgrade, determining if the first user has accepted and/or installed the upgrade;

if the first user has not accepted and/or installed the upgrade, denying the first user access to at least a first telecommunication service;

(c) determining via the software distribution computer system whether the software upgrade is to be a forced upgrade or a recommended upgrade for a second user based on a second parameter related to the second user or the software upgrade,

wherein the second parameter relates to a level of call processing services that the second user subscribes to; and

(d) determining via the telecommunications software distribution computer system if a telecommunications software upgrade file is to be downloaded to a first user computer system and a second user computer system using a trickle mode or a burst mode,

wherein the telecommunications software upgrade is performed with respect to the first user based at least in part on determinations made in (a), (b), or (d), and

wherein the telecommunications software upgrade is performed with respect to the second user based at least in part on determinations made in (a), (c), or (d).

Assignments (7)
SECURITY INTEREST Recorded May 20, 2016
From: CALLWAVE COMMUNICATIONS, LLC
To: TECHNOLOGY INVESTMENT HOLDINGS II, LLC
Reel/Frame 038770/0923 →
RELEASE OF SECURITY INTEREST Recorded Nov 4, 2013
From: TECHNOLOGY INVESTMENT HOLDINGS, LLC
To: CALLWAVE COMMUNICATIONS, LLC
Reel/Frame 031536/0066 →
SECURITY AGREEMENT Recorded Nov 8, 2012
From: CALLWAVE COMMUNICATIONS, LLC
To: TECHNOLOGY INVESTMENT HOLDINGS, LLC
Reel/Frame 029275/0393 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2012
From: FUZEBOX SOFTWARE CORPORATION
To: CALLWAVE TELECOM, INC.
Reel/Frame 028794/0285 →
CHANGE OF NAME Recorded Aug 15, 2012
From: CALLWAVE, INC.
To: FUZEBOX SOFTWARE CORPORATION
Reel/Frame 028794/0252 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2012
From: CALLWAVE TELECOM, INC.
To: CALLWAVE COMMUNICATIONS, LLC
Reel/Frame 028794/0296 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 18, 2005
From: GIANNINI, DAVID; HERRIMAN, SCOTT; TOGNAZZINI, DONNIE
To: CALLWAVE, INC.
Reel/Frame 016253/0035 →
Continuity (1)
Related Publication 20060168574A1 · Jul 27, 2006