Method and apparatus for establishing and maintaining voice communication among a community of interest
AssigneeMitel Networks Corporation
InventorHans Wasmeier
Life of this patent
Estimating the term…
Loading patent…
AssigneeMitel Networks Corporation
InventorHans Wasmeier
Estimating the term…
Apparatus is provided for establishing and maintaining communication among a community of interest, comprising a plurality of communication devices for voice communication between users of the community of interest, each of the communication devices including a display for indicating communication availability of the users, a plurality of device agents for controlling respective ones of the communication devices in establishing the voice communication and updating each the display. A plurality of user agents is provided for maintaining user preferences. The user preferences include a list of the users of the community of interest. A tuple space is provided for exchanging tuples and anti-tuples between the user agents to monitor the communication availability, in response to which respective ones of the device agents update each respective display. A transient voice store is provided for receiving and storing a voice message from a first one of the users to a second one of the users with whom the first user is desirous of communicating and who is indicated on the display of the first user as being available for communication, whereupon the display of the second user is updated to indicate receipt of the voice message, and for playing the voice message to the second user. A communication switch is provided for establishing two-way communication between the users, whereby in response to the second user listening to the voice message and provided that the first user is available for communication a voice path is created in the communication switch between the first user and the second user, and in the event the first user is no longer available for communication the second user stores a voice message for the first user via the transient message store.
Apparatus for establishing and maintaining communication among a group of users defining a community of interest, comprising:
A method for establishing and maintaining communication among a group of users defining a community of interest, comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
From the US filing history. Foreign family members aren’t listed.
Systems providing special services or facilities to subscribers: in private branch exchanges
Programming languages or programming paradigms: parallel programming languages
Called party identification service: notifying the calling party of information on the called or connected party
Systems providing special services or facilities to subscribers: presence services providing information on the willingness to communicate or the…
Term ended 6 Jan 2024 (estimated)
This invention relates generally to communication systems such as PBXs, and more particularly to a method and apparatus for establishing and maintaining voice communication among a community of interest in a communication system.
Typical communication in a workplace is performed for the most part in an ad hoc manner. For example, one person may encounter another person in a hallway and make a passing comment on a topic of mutual interest, or drop by a person's desk to ask a question, etc. As a result of workplace proximity, communities of interest are established and informal communications proceed among members of such communities of interest.
By contrast, normal telephony communication is formal in nature in that a request to establish communications is submitted (i.e. a person dials a telephone number), and the destination party either accepts or rejects that request (i.e. the destination party answers the telephone or lets the telephone ring). As a result of the semi-strict rules by which communications must be established using traditional telephony equipment, ad hoc conversations among members of a community of interest cannot be supported.
A detailed description of the invention is set forth herein below, with reference to the following drawings, wherein:
FIG. 1 shows an exemplary display for indicating to a user the availability of members of a group for the purpose of communication; and
FIG. 2 is a block diagram of a system for establishing and maintaining voice communication among a community of interest, according to the preferred embodiment.
Before discussing the invention is detail, a brief introduction is set forth below of the basic structure and operation of a tuple space.
A tuple space is a set of type/value ordered pairs called ingles. Each ingle consists of a type (e.g. Name) and a value (e.g. John Doe). Thus, a tuple which describes an employee for a company could, for example, be: {:name John Doe :age 37 :employee_number 12345 :start_date 810126 :position T12}
The tuple space enables coordination by allowing queries based on the matching of tuples by anti-tuples. An anti tuple is a tuple that can be used as a query in the tuple space. In form, it is identical to a tuple except that the value of any or all fields may be replaced by a ‘?’ which indicates a ‘don't care’ condition. Tuple spaces are set up to match tuples with anti-tuples which agree in all fields except for the one(s) indicated by the ? query, which acts as a “wild card”. Thus the anti tuple: {:name ? :age 37 :employee_number ? :start_date ? :position T12} would return the tuples for all employees of position T12 who are 37 years old. Operations on the Tuple Space Include: Poke—place a tuple in the tuple space. Duration may be specified for how long the tuple should remain in the space. This may be any period up to indefinite. Peek—query the tuple space with an anti-tuple. This query may be specified to last for any period up to indefinite. Copies of matching tuples are returned through the interface and the tuples remain in the tuple space. Pick—query the tuple space with an anti-tuple. This query may be specified to last for any period up to indefinite. Copies of matching tuples are returned through the interface and the tuples are removed from the tuple space. Cancel—with a specified anti-tuple. All matching anti-tuples are removed from the tuple space. Tuples themselves may be removed directly by an appropriate pick request.