IP Library Granted Patent US 6,934,767
Granted Patent B1
US 6,934,767 · App. 09/664,875 · Granted Aug 23, 2005

Automatically expanding abbreviated character substrings

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 6,934,767
App. No.
09/664,875
Granted
Aug 23, 2005
Kind
B1
Abstract

A server machine receives an input string of characters from a client machine, and the string includes at least one abbreviated substring preceded and followed by word delimiters. Each abbreviated substring represents an expanded substring. The server machine automatically finds one of the abbreviated substrings based on the preceding and following word delimiters, determines that it is one of a set of abbreviated substrings, and produces an expanded version of the string of characters with the abbreviated substring replaced by its expanded substring. The case of the beginning character of the expanded substring can be the same as that of the abbreviated substring. The expanded substring can depend on time, such as the current time.

Claims (61)

1. A method of operating a server machine to expand input strings of characters received from client machines that include character input devices, comprising:

storing, in a location accessible to said server machine, one or more mappings between abbreviated substrings and expanded substrings;

receiving, at the server machine, a request to perform a server action including at least one of an email operation, a chat operation, and a calendar operation;

receiving, at the server machine, an unexpanded input string of characters associated with said request from a client machine that includes a character input device, the unexpanded input string including at least one abbreviated substring, each preceded and followed in the unexpanded input string by word delimiters, each abbreviated substring belonging to a set of abbreviated substrings in an applicable mapping of said one or more mappings;

automatically finding one of the abbreviated substrings based on the preceding and following word delimiters;

determining a current time;

determining, based on said applicable mapping and said current time, that the abbreviated substring corresponds to a particular expanded substring of a plurality of substrings by expanding said abbreviated substring to an intermediate expanded substring without regard to said current time and expanding said intermediate expanded substring to said particular expanded substring based on said current time;

producing an expanded input string that is a version of the unexpanded input string with the abbreviated substring replaced by said particular expanded substring; and

performing said server action including incorporating said expanded input string into display data associated with said at least one of an email operation, a chat operation, and a calendar operation.

2. The method of claim 1 in which one of the abbreviated substrings begins with a character and represents an expanded substring that begins with the same character and in which the step of determining that the abbreviated substring corresponds to a particular expanded substring comprises:

determining the case of the beginning character in the abbreviated substring; and

giving the determined case to the beginning character in the particular expanded substring.

3. The method of claim 1 , wherein:

said preceding and following word delimiters include all non-alphanumeric characters to indicate one of said abbreviated substrings.

4. A server machine for expanding input strings of characters received from client machines that include character input devices, the server machine comprising:

a processor; and

connecting circuitry for connecting the processor to a user's client machine that includes a character input device;

the processor operating to:

access, in a location accessible to said server machine, one or more mappings between abbreviated substrings and expanded substrings;

receive, at the server machine, a request to perform a server action including at least one of an email operation, a chat operation, and a calendar operation;

receive, at the server machine, an unexpanded input string of characters associated with said request from a client machine that includes a character input device, the unexpanded input string including at least one abbreviated substring, each preceded and followed in the unexpanded input string by word delimiters, each abbreviated substring belonging to a set of abbreviated substrings in an applicable mapping of said one or more mappings;

automatically find one of the abbreviated substrings based on the preceding and following word delimiters;

determine a current time;

determine, based on said applicable mapping and said current time, that the abbreviated substring corresponds to a particular expanded substring of a plurality of substrings by expanding said abbreviated substring to an intermediate expanded substring without regard to said current time and expanding said intermediate expanded substring to said particular expanded substring based on said current time;

produce an expanded input string that is a version of the unexpanded input string with the abbreviated substring replaced by said particular expanded substring; and

perform said server action including incorporating said expanded input string into display data associated with said at least one of an email operation, a chat operation, and a calendar operation.

5. A method of performing a server action that requires user input, the method comprising the steps of:

storing, at a location accessible to a server machine, one or more mappings between abbreviated substrings and expanded substrings;

receiving, at the server machine, a request to perform said server action, said server action including at least one of an email operation, a chat operation, and a calendar operation;

receiving from a client machine an unexpanded input string that includes an abbreviated substring associated with said request;

determining whether said abbreviated substring is constrained to be identically produced;

if said abbreviated substring is constrained to be identically produced, then performing said server action using said abbreviated substring without expanding said abbreviated substring; and

if said abbreviated substring is not constrained to be identically produced, then performing the steps of

determining a current time;

inspecting a mapping, of said one or more mappings, to determine from a plurality of substrings an expanded substring that corresponds to said abbreviated substring based on said current time by expanding said abbreviated substring to an intermediate expanded substring without regard to said current time and expanding said intermediate expanded substring to said expanded substring based on said current time; and

performing said server action including incorporating said expanded substring into display data associated with said at least one of an email operation, a chat operation, and a calendar operation.

6. The method of claim 5 wherein:

the client machine is operated by a particular user; and

the method further includes the step of determining which mapping of said one or more mappings to inspect based on identity of said particular user.

7. The method of claim 6 wherein the step of determining which mapping to inspect includes the steps of:

identifying which group of a plurality of groups includes said particular user, and identifying a mapping associated with the group that includes said particular user.

8. The method of claim 5 further comprising the step of determining which mapping of said one or more mappings to inspect based on which type of server action is requested by said client machine.

9. The method of claim 5 wherein the step of performing said server action using said expanded substring is performed without sending said expanded substring to said client machine.

10. A computer-readable medium carrying instructions for performing a server action that requires user input, the instructions including instructions for performing the steps of:

storing, at a location accessible to a server machine, one or more mappings between abbreviated substrings and expanded substrings;

receiving, at the server machine, a request to perform a server action including at least one of an email operation, a chat operation, and a calendar operation;

receiving from a client machine an unexpanded input string that includes an abbreviated substring associated with said request;

determining whether said abbreviated substring is constrained to be identically produced;

if said abbreviated substring is constrained to be identically produced, then performing said server action using said abbreviated substring without expanding said abbreviated substring; and

if said abbreviated substring is not constrained to be identically produced, then performing the steps of

determining a current time;

inspecting a mapping, of said one or more mappings, to determine from a plurality of substrings an expanded substring that corresponds to said abbreviated substring based on said current time by expanding said abbreviated substring to an intermediate expanded substring without regard to said current time and expanding said intermediate expanded substring to said expanded substring based on said current time; and

performing said server action including incorporating said expanded substring into display data associated with said at least one of an email operation, a chat operation, and a calendar operation.

11. The computer-readable medium of claim 10 wherein:

the client machine is operated by a particular user; and

the computer-readable medium further includes the step of determining which mapping of said one or more mappings to inspect based on identity of said particular user.

12. The computer-readable medium of claim 11 wherein the step of determining which mapping to inspect includes the steps of:

identifying which group of a plurality of groups includes said particular user, and

identifying a mapping associated with the group that includes said particular user.

13. The computer-readable medium of claim 10 further comprising the step of determining which mapping of said one or more mappings to inspect based on which type of server action is requested by said client machine.

14. The computer-readable medium of claim 10 wherein the step of performing said server action using said expanded substring is performed without sending said expanded substring to said client machine.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Apr 7, 2025
From: SYNCHRONOSS TECHNOLOGIES, INC.
To: CITIZENS BANK, N.A.
Reel/Frame 071224/0279 →
SECURITY INTEREST Recorded Oct 29, 2019
From: SYNCHRONOSS TECHNOLOGIES, INC.
To: CITIZENS BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 050854/0913 →
RELEASE OF SECURITY INTEREST Recorded Nov 14, 2017
From: GOLDMAN SACHS BANK USA
To: SYNCHRONOSS TECHNOLOGIES, INC.
Reel/Frame 044444/0286 →
SECURITY INTEREST Recorded Jan 23, 2017
From: SYNCHRONOSS TECHNOLOGIES, INC., AS GRANTOR
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 041072/0964 →
CORRECTIVE ASSIGNMENT TO CORRECT THE NAME OF THE CONVEYING PARTY PREVIOUSLY RECORDED ON REEL 025573 FRAME 0750. ASSIGNOR(S) HEREBY CONFIRMS THE CONVEYING PARTY NAME IS FUSIONONE, INC. (NOT FUSHIONONE, INC.). Recorded Oct 3, 2011
From: FUSIONONE, INC.
To: SYNCHRONOSS TECHNOLOGIES, INC.
Reel/Frame 027003/0022 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2011
From: FUSHIONONE, INC.
To: SYNCHRONOSS TECHNOLOGIES, INC.
Reel/Frame 025573/0750 →