摘要:
An application server generates and maintains a server-side data record, also referred to as a “brownie”, that includes application state information and user attribute information for multiple users within a single session controlled by a web-based browser. The brownie includes a session identifier that uniquely identifies the session, and a subsession identifier that uniquely identifies each corresponding user of the application session. As each new user is added to the session, for example by initiating a call to the new user, the application server stores the subsession identifier and corresponding application state information for the new user in the same brownie. In response to receiving a second web page request from the browser that includes the session identifier, the application server initiates a new web application instance, and recovers the brownie from the memory based on the session identifier included in the second page request.
摘要:
An application server includes an asynchronous event manager configured for selectively terminating an instance executing a messaging session, based on detecting a message from a gateway server that the incoming call is a call having a type that differs from the prescribed type intended for the messaging session. The asynchronous event manager terminates the instance by setting global variables accessible by the instance that specify that the call is rejected (i.e., the connection between the gateway and the instance executing the messaging session is terminated) due to the incoming call being of a different type than intended for that messaging session, for example the call being a fax call instead of a voice call. The instance executing the messaging session checks the global variables prior to committing to execution of critical operations that affect stored subscriber messaging data, for example before sending a recorded message for storage, or changing a state of a stored message from a new message to a stored message or deleted message. If the global variables indicate that the messaging session should be terminated, the instance rolls back the necessary data structures by deleting any necessary data (e.g., log entries, application state information, recorded messages, etc.), and terminates the instance.
摘要:
An application server executes voice-enabled web applications by runtime execution of extensible markup language (XML) documents that define the voice-enabled web application to be executed. The application server includes a hypertext markup language (HTML) conversion module configured for translating information present during runtime execution of an XML document into an HTML document. The system converts the XML document into an HTML document in a manner that is reversible, where all the information from the original XML document is preserved such that the HTML document can be converted back to the original XML document. In addition, the system supplies HTML-compliant formatting information to specifically identify formatting specifications for XML tags having implied formatting characteristics during runtime execution of the XML document. Moreover, the system generates HTML-compliant reference tags for each XML tag that refers to another XML object, based on the context of the XML tag during the runtime execution of the XML document. Hence, the generated HTML document includes all information used during runtime execution of the XML document, enabling the use of web analysis tools to analyze XML-defined applications by analyzing the HTML document for the structure of the XML document relative to other XML documents used to define the XML-defined application.