Author: derek Date: Fri Sep 22 00:03:35 2006 New Revision: 113 Added: sofaswitch/trunk/callflow/docs/executionflow.dxy sofaswitch/trunk/callflow/docs/simpleevent.png (contents, props changed) Log: Add files to svn. Added: sofaswitch/trunk/callflow/docs/executionflow.dxy ============================================================================== --- (empty file) +++ sofaswitch/trunk/callflow/docs/executionflow.dxy Fri Sep 22 00:03:35 2006 @@ -0,0 +1,53 @@ +/*! \page pageExecutionFlow Flow of execution through python code + +\section secOverview Oversight + +The flow of execution is to follow the graph on the screen. Thus, when +given a graph like + +\image html1 forloop.png + +it will enter the forloop, and go around and around until the termination +condition is met. + +While processing each of the nodes in the supplied graph, it is ignoring +all timer events. Execution continues until it falls of the end of the graph, +or passes through an Eventer type structure and goes nowhere. Consider the +following graph + +\image html2 simpleevent.png + +Execution starts at the top, moves to the next node which sends off a request +to obtain a new worker node. Then, the eventer box is entered, where we +register to receive any event that contains the word "NEW" (we are searching +for all events advising of a new node). At which point, execution continues to +the right, and goes into the lower "execute python code" box, which prints a +message. Finally, execution moves into the bottom most box, and stops. + +At this point, we rely upon the twisted module in python to call methods +indicating that things have happened (e.g. a timer, data received from network +etc). On receipt of a message about a new node, the box on the star output of +the eventer is processed. In this case, python code is executed which reports +the id of the voip node created. Execution then moves to the end, and stops. + +Should there be a new event (which we have previously registered for with an +Eventer box) execution will return there. Consequently, in the above example, +every time a new node is created, execution will always move back to the left +most execute python box. + +Note that network events, timer events, other events, are only processed when +execution has stopped. + + + + + + + + + + + + + +*/ \ No newline at end of file Added: sofaswitch/trunk/callflow/docs/simpleevent.png ============================================================================== Binary file. No diff available.
participants (1)
-
SofaSWITCH SVN