US 7,496,924 B2
Dispatching messages among registered software modules in telecommunications system including telephony internet server coupled between packet network and PBX
Robert Callaghan, Coral Springs, Fla. (US); Markku Korpi, Starmberg (Germany); Jeff Cripe, Lake Worth, Fla. (US); Mark Grosberg, Boca Raton, Fla. (US); Kristin Butcher, Boynton Bch., Fla. (US); Leroy Gilbert, Wellington, Fla. (US); Wyatt Howe, Boca Raton, Fla. (US); Kenton Cross, Boca Raton, Fla. (US); and Geert Fieremans, Ghent (Belgium)
Assigned to Siemens Communications, Inc., Boca Raton, Fla. (US)
Filed on Dec. 19, 2000, as Appl. No. 9/742,696.
Claims priority of provisional application 60/192275, filed on Mar. 27, 2000.
Prior Publication US 2002/0021774 A1, Feb. 21, 2002
Int. Cl. G06F 15/16 (2006.01); G06F 15/173 (2006.01); G06F 15/177 (2006.01)
U.S. Cl. 719—313  [709/203; 718/105; 718/107] 15 Claims
OG exemplary drawing
 
1. A system comprising:
a telephony Internet server coupling a packet network to a private branch exchange, external communications from said private branch exchange passing through said telephony Internet server;
a software dispatcher in said telephony Internet server, said software dispatcher maintaining a list of all messages in said system and dynamically adding packet network software system application features to said private branch exchange;
a plurality of dispatcher clients, each identifying to said software dispatcher particular messages for receipt; and
said software dispatcher managing listed messages in a pool of threads and sending messages to said plurality of dispatcher clients synchronously and asynchronously, said software dispatcher balancing system workload between said pool of threads, wherein said software dispatcher saves asynchronous messages for later transmission in logical message queues in one or more message threads, sent said messages being sent as flexible message parameters comprising name, type, and value fields and, wherein said value field further comprises another flexible message parameter.