sofaswitch-svn
Threads by month
- ----- 2026 -----
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
July 2007
- 1 participants
- 48 discussions
31 Jul '07
Author: derek
Date: Tue Jul 31 01:08:40 2007
New Revision: 381
Modified:
sofaswitch/trunk/callflow/src/acceptcall.cpp
Log:
Sort out a typo.
Modified: sofaswitch/trunk/callflow/src/acceptcall.cpp
==============================================================================
--- sofaswitch/trunk/callflow/src/acceptcall.cpp (original)
+++ sofaswitch/trunk/callflow/src/acceptcall.cpp Tue Jul 31 01:08:40 2007
@@ -70,7 +70,7 @@
file.AddLine(" except: ");
file.AddLine(" print \"The evaluation of \", self.mesg, \" failed - no idea what this means\" ");
file.AddLine(" return self.data[a][\"Output\"] ");
- file.AddLine(" self.rhost += \":ANSWERCALL \" + self.myanswer + \"\\0\" ");
+ file.AddLine(" self.rhost += \":ANSWER \" + self.myanswer + \"\\0\" ");
file.AddLine(" self.transport.write(self.rhost) ");
file.AddLine(" return self.data[a][\"Output\"] ");
file.AddLine("");
1
0
Author: derek
Date: Tue Jul 31 00:15:35 2007
New Revision: 380
Modified:
sofaswitch/trunk/voip/udpconnection.cxx
sofaswitch/trunk/voip/udpep.cxx
Log:
Another go at commiting, which contains test on OPAL_VIDEO
Modified: sofaswitch/trunk/voip/udpconnection.cxx
==============================================================================
--- sofaswitch/trunk/voip/udpconnection.cxx (original)
+++ sofaswitch/trunk/voip/udpconnection.cxx Tue Jul 31 00:15:35 2007
@@ -43,7 +43,10 @@
#include <ptlib/videoio.h>
#include <codec/silencedetect.h>
+#if OPAL_VIDEO
#include <codec/vidcodec.h>
+#endif
+
#include <opal/call.h>
#include <opal/patch.h>
#include <opal/manager.h>
@@ -183,9 +186,9 @@
OpalMediaFormatList formats;
formats += OpalPCM16; // Sound card can only do 16 bit PCM
-
+#if OPAL_VIDEO
AddVideoMediaFormats(formats);
-
+#endif
return formats;
}
Modified: sofaswitch/trunk/voip/udpep.cxx
==============================================================================
--- sofaswitch/trunk/voip/udpep.cxx (original)
+++ sofaswitch/trunk/voip/udpep.cxx Tue Jul 31 00:15:35 2007
@@ -37,9 +37,11 @@
#endif
+#if OPAL_VIDEO
#include <ptlib/videoio.h>
-#include <codec/silencedetect.h>
#include <codec/vidcodec.h>
+#endif
+#include <codec/silencedetect.h>
#include <opal/call.h>
#include <opal/patch.h>
#include <opal/manager.h>
@@ -149,7 +151,9 @@
formats += OpalPCM16; // Sound card can only do 16 bit PCM
+#if OPAL_VIDEO
AddVideoMediaFormats(formats);
+#endif
return formats;
}
1
0
Author: derek
Date: Mon Jul 30 23:07:46 2007
New Revision: 379
Modified:
sofaswitch/trunk/voip/udpconnection.cxx
Log:
Fix, so it compiles against the current CVS.
Modified: sofaswitch/trunk/voip/udpconnection.cxx
==============================================================================
--- sofaswitch/trunk/voip/udpconnection.cxx (original)
+++ sofaswitch/trunk/voip/udpconnection.cxx Mon Jul 30 23:07:46 2007
@@ -97,7 +97,7 @@
{
remotePartyName = ownerCall.GetOtherPartyConnection(*this)->GetRemotePartyName();
remotePartyAddress = ownerCall.GetOtherPartyConnection(*this)->GetRemotePartyAddress();
- remoteApplication = ownerCall.GetOtherPartyConnection(*this)->GetRemoteApplication();
+ PString remoteApplication = ownerCall.GetOtherPartyConnection(*this)->GetRemoteApplication();
PTRACE(3, "UdpSs\tSetUpConnection, Remote party name " << remotePartyName << ')');
PTRACE(3, "UdpSs\tSetUpConnection, Remote party address" << remotePartyAddress << ')');
1
0
31 Jul '07
Author: derek
Date: Mon Jul 30 22:29:59 2007
New Revision: 378
Modified:
sofaswitch/trunk/callflow/tests/simpleeventer.src
Log:
Tidyups - so print messages are correct.
Modified: sofaswitch/trunk/callflow/tests/simpleeventer.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/simpleeventer.src (original)
+++ sofaswitch/trunk/callflow/tests/simpleeventer.src Mon Jul 30 22:29:59 2007
@@ -1 +1 @@
-9<B>333<B>158<B>333,158,352,196<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>312<B>219<B>312,219,312,326<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>300<B>324<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>385<B>127<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>1<B>303<B>56<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>11<B>303<B>108<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.newNode<ms><special> <B><Shape>10<B>293<B>162<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have received a new node ", self.newNode<ms><special> <B><Shape>9<B>353<B>128<B>353,128,412,129<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>330<B>252<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>10<B>336<B>196<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print " Finished main stream of execution "<ms><special> <B><Shape>
+9<B>353<B>128<B>353,128,412,129<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>300<B>324<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>10<B>296<B>156<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have received a new node ", self.newNode<ms><special> <B><Shape>10<B>335<B>195<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "timeout - waiting for a voip node"<ms><special> <B><Shape>2<B>391<B>187<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>333<B>158<B>333,158,352,196<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>312<B>219<B>312,219,312,326<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>303<B>108<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.newNode<ms><special> <B><Shape>1<B>303<B>56<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>9<B>312<B>255<B>351,255,312,324<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>397<B>126<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print " Finished main stream of execution "<ms><special> <B><Shape>
1
0
31 Jul '07
Author: derek
Date: Mon Jul 30 22:26:02 2007
New Revision: 377
Modified:
sofaswitch/trunk/callflow/tests/requestnode.src
Log:
Fix this graph.
Modified: sofaswitch/trunk/callflow/tests/requestnode.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/requestnode.src (original)
+++ sofaswitch/trunk/callflow/tests/requestnode.src Mon Jul 30 22:26:02 2007
@@ -1 +1 @@
-1<B>399<B>96<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>10<B>393<B>186<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have a new node on ", self.eventData<ms><special> <B><Shape>20<B>467<B>276<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>409<B>246<B>409,246,479,276<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>451<B>163<B>451,163,559,169<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>461<B>218<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "timer has expired at ", time.asctime()<ms><special> <B><Shape>9<B>431<B>193<B>477,218,431,193<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>401<B>143<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms><ms><special> <B><Shape>2<B>534<B>169<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>
+9<B>451<B>163<B>451,163,559,169<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>467<B>276<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>431<B>193<B>477,218,431,193<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>393<B>186<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have a new node on ", self.voipNode<ms><special> <B><Shape>9<B>409<B>246<B>409,246,479,276<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>534<B>169<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>10<B>461<B>218<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "timer has expired at ", time.asctime()<ms><special> <B><Shape>11<B>401<B>143<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.voipNode<ms><special> <B><Shape>1<B>399<B>96<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>
1
0
31 Jul '07
Author: derek
Date: Mon Jul 30 22:24:04 2007
New Revision: 376
Modified:
sofaswitch/trunk/callflow/tests/recordmessage.src
Log:
Fix graph - use am node, not voip node
Modified: sofaswitch/trunk/callflow/tests/recordmessage.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/recordmessage.src (original)
+++ sofaswitch/trunk/callflow/tests/recordmessage.src Mon Jul 30 22:24:04 2007
@@ -1,2 +1,2 @@
-5<B>605<B>324<B> extra <special>Tool Tip<ms>End the recording..<ms><special>Test (Python code)<ms>self.dtmfData=="9"<ms><special> <B><Shape>9<B>656<B>401<B>656,401,666,535,721,536,721,534<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>265<B>199<B>265,513,265,635,427,639,429,199,533,202,533,262<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>294<B>621<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>17<B>508<B>310<B> extra <special>Tool Tip<ms>Write To File<ms><special>Filename to contain new audio (Python code)<ms>"message.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>10<B>289<B>569<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "DEATH NOW."<ms><special> <B><Shape>5<B>507<B>264<B> extra <special>Tool Tip<ms>Start recording now<ms><special>Test (Python code)<ms>self.dtmfData=="1"<ms><special> <B><Shape>14<B>290<B>536<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>hanguptime<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.hanguptime<ms><special> <B><Shape>2<B>511<B>354<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>1<B>190<B>19<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>9<B>266<B>151<B>272,151,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>609<B>623<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>14<B>254<B>464<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.dtmfData<ms><special> <B><Shape>5<B>628<B>347<B> extra <special>Tool Tip<ms>hear the recording<ms><special>Test (Python code)<ms>self.dtmfData=="2"<ms><special> <B><Shape>2<B>692<B>631<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>15<B>605<B>522<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>16<B>694<B>585<B> extra <special>Tool Tip<ms>Play the message just recorded back<ms><special>Filename to read audio from (Python code)<ms>"message.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>7<B>605<B>474<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node to activate (python code)<ms>self.amNode<ms><special> <B><Shape>15<B>240<B>412<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>self.amNode<ms><special>Second SofaSwitch worker (python)<ms>self.soundNode<ms><special> <B><Shape>17<B>695<B>537<B> extra <special>Tool Tip<ms>Stop writing to the file
-while we play it back<ms><special>Filename to contain new audio (Python code)<ms>" "<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>2<B>687<B>371<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>148<B>324<B>148,324,168,674,579,672,566,479,630,474<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>348<B>557<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>312<B>121<B>312,121,336,128<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>576<B>297<B> extra <special>Tool Tip<ms>Repeat instructions<ms><special>Test (Python code)<ms>self.dtmfData=="3"<ms><special> <B><Shape>9<B>678<B>372<B>678,372,715,373<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>132<B>264<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have not received sound or voip node in time"<ms><special> <B><Shape>2<B>307<B>390<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>555<B>290<B>555,290,600,293<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>148<B>151<B>292,151,148,264<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>291<B>384<B>291,384,332,390<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>300<B>346<B>601,346,581,447,300,483<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>341<B>557<B>341,557,375,557<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>262<B>101<B> extra <special>Tool Tip<ms>Request Node from sound<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>9<B>200<B>121<B>200,121,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>630<B>374<B>630,374,631,473<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>655<B>595<B>655,595,717,631<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>241<B>359<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>(self.amNode != None) and (self.soundNode != None)<ms><special> <B><Shape>2<B>311<B>128<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>16<B>275<B>484<B> extra <special>Tool Tip<ms>Play the instructions<ms><special>Filename to read audio from (Python code)<ms>"../prompts/record.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>12<B>605<B>575<B> extra <special>Tool Tip<ms>timer, which on firing ends this flow<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>"hanguptime"<ms><special> <B><Shape>9<B>148<B>121<B>220,121,148,264<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>190<B>71<B> extra <special>Tool Tip<ms>Request Node from voip<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.voipNode<ms><special> <B><Shape>9<B>238<B>92<B>238,92,285,97<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>
+9<B>630<B>374<B>630,374,631,473<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>241<B>359<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>(self.amNode != None) and (self.soundNode != None)<ms><special> <B><Shape>2<B>348<B>557<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>16<B>694<B>585<B> extra <special>Tool Tip<ms>Play the message just recorded back<ms><special>Filename to read audio from (Python code)<ms>"message.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>20<B>294<B>621<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>5<B>628<B>347<B> extra <special>Tool Tip<ms>hear the recording<ms><special>Test (Python code)<ms>self.dtmfData=="2"<ms><special> <B><Shape>11<B>190<B>71<B> extra <special>Tool Tip<ms>Request Node from voip<ms><special>Request node from (Python code)<ms>"am"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.amNode<ms><special> <B><Shape>9<B>300<B>346<B>601,346,581,447,300,483<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>262<B>101<B> extra <special>Tool Tip<ms>Request Node from sound<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>2<B>687<B>371<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>148<B>121<B>220,121,148,264<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>15<B>240<B>412<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>self.amNode<ms><special>Second SofaSwitch worker (python)<ms>self.soundNode<ms><special> <B><Shape>9<B>238<B>92<B>238,92,285,97<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>656<B>401<B>656,401,666,535,721,536,721,534<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>555<B>290<B>555,290,600,293<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>132<B>264<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have not received sound or am or sound node in time"<ms><special> <B><Shape>9<B>678<B>372<B>678,372,715,373<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>312<B>121<B>312,121,336,128<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>266<B>151<B>272,151,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>291<B>384<B>291,384,332,390<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>609<B>623<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>17<B>508<B>310<B> extra <special>Tool Tip<ms>Write To File<ms><special>Filename to contain new audio (Python code)<ms>"message.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>10<B>289<B>569<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "DEATH NOW."<ms><special> <B><Shape>9<B>200<B>121<B>200,121,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>605<B>324<B> extra <special>Tool Tip<ms>End the recording..<ms><special>Test (Python code)<ms>self.dtmfData=="9"<ms><special> <B><Shape>9<B>655<B>595<B>655,595,717,631<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>254<B>464<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.dtmfData<ms><special> <B><Shape>2<B>692<B>631<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>265<B>199<B>265,513,265,635,427,639,429,199,533,202,533,262<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>341<B>557<B>341,557,375,557<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>290<B>536<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>hanguptime<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.hanguptime<ms><special> <B><Shape>17<B>695<B>537<B> extra <special>Tool Tip<ms>Stop writing to the file
+while we play it back<ms><special>Filename to contain new audio (Python code)<ms>" "<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>16<B>275<B>484<B> extra <special>Tool Tip<ms>Play the instructions<ms><special>Filename to read audio from (Python code)<ms>"../prompts/record.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>2<B>311<B>128<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>148<B>324<B>148,324,168,674,579,672,566,479,630,474<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>12<B>605<B>575<B> extra <special>Tool Tip<ms>timer, which on firing ends this flow<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>"hanguptime"<ms><special> <B><Shape>5<B>576<B>297<B> extra <special>Tool Tip<ms>Repeat instructions<ms><special>Test (Python code)<ms>self.dtmfData=="3"<ms><special> <B><Shape>7<B>605<B>474<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node to activate (python code)<ms>self.amNode<ms><special> <B><Shape>9<B>148<B>151<B>292,151,148,264<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>307<B>390<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>5<B>507<B>264<B> extra <special>Tool Tip<ms>Start recording now<ms><special>Test (Python code)<ms>self.dtmfData=="1"<ms><special> <B><Shape>1<B>190<B>19<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>15<B>605<B>522<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>2<B>511<B>354<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>
1
0
31 Jul '07
Author: derek
Date: Mon Jul 30 22:16:44 2007
New Revision: 375
Modified:
sofaswitch/trunk/callflow/tests/forloop.src
sofaswitch/trunk/callflow/tests/makevoipcall.src
Log:
Tidy up graphs.
Modified: sofaswitch/trunk/callflow/tests/forloop.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/forloop.src (original)
+++ sofaswitch/trunk/callflow/tests/forloop.src Mon Jul 30 22:16:44 2007
@@ -1 +1 @@
-3<B>299<B>62<B> extra <special>Tool Tip<ms>Start For<ms><special>Initialise (Python code)<ms>self.i = 0<ms><special>Test for Termination (Python code)<ms>self.i < 10<ms><special>Increment (Python code)<ms>self.i+=1<ms><special> <B><Shape>1<B>306<B>11<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>4<B>301<B>152<B> extra <special>Tool Tip<ms>End For Loop<ms><special> <B><Shape>10<B>316<B>98<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "loop index is ", self.i<ms><special> <B><Shape>20<B>322<B>199<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>258<B>84<B>296,87,258,84,259,174,299,178<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>
+4<B>301<B>152<B> extra <special>Tool Tip<ms>End For Loop<ms><special> <B><Shape>10<B>316<B>98<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "loop index is ", self.i<ms><special> <B><Shape>20<B>322<B>199<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>299<B>87<B>299,87,301,177<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>1<B>306<B>11<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>3<B>299<B>62<B> extra <special>Tool Tip<ms>Start For<ms><special>Initialise (Python code)<ms>self.i = 0<ms><special>Test for Termination (Python code)<ms>self.i < 10<ms><special>Increment (Python code)<ms>self.i+=1<ms><special> <B><Shape>
Modified: sofaswitch/trunk/callflow/tests/makevoipcall.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/makevoipcall.src (original)
+++ sofaswitch/trunk/callflow/tests/makevoipcall.src Mon Jul 30 22:16:44 2007
@@ -1,3 +1,3 @@
-9<B>166<B>171<B>166,171,166,357<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>203<B>527<B>203,527,248,528<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>141<B>357<B> extra <special>Tool Tip<ms>TEST: have a sound and voip node.<ms><special>Test (Python code)<ms>(self.voipNode != None) and (self.soundNode != None)<ms><special> <B><Shape>9<B>166<B>555<B>166,555<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>274<B>785<B>274,785,319,785<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>244<B>139<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>6<B>141<B>406<B> extra <special>Tool Tip<ms>Make Call to a remote entity<ms><special>Worker node to activate (python code)<ms>self.voipNode<ms><special>Call destination (python code)<ms>self.scriptArgs<ms><special> <B><Shape>7<B>95<B>148<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node for termination (Python code)<ms>self.soundNode<ms><special> <B><Shape>2<B>169<B>614<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>248<B>578<B>248,578,251,677<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>191<B>382<B>191,382,237,383<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>226<B>812<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>12<B>334<B>253<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>2<ms><special>Timer label (Python code)<ms>self.myId + "thistimer"<ms><special>Python variable: Timer expire info<ms><ms><special> <B><Shape>20<B>334<B>302<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>7<B>225<B>722<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node to activate (python code)<ms>self.voipNode<ms><special> <B><Shape>15<B>141<B>457<B> extra <special>Tool Tip<ms>Transfer Media between the voip and sound node<ms><special>First SofaSwitch worker (python)<ms>self.voipNode<ms><special>Second SofaSwitch worker (python)<ms>self.soundNode<ms><special> <B><Shape>15<B>226<B>677<B> extra <special>Tool Tip<ms>Make sound node
-talk to itself<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>12<B>224<B>765<B> extra <special>Tool Tip<ms>Timer which initates a shutdown, after some tidyup
- messages etc have been sent.<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>"endeverything"<ms><special> <B><Shape>14<B>235<B>528<B> extra <special>Tool Tip<ms>Wait for voip call to end<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>Terminating<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.eventData<ms><special> <B><Shape>2<B>360<B>272<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>14<B>153<B>505<B> extra <special>Tool Tip<ms>Wait for DTMF data<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.dtmfData<ms><special> <B><Shape>9<B>206<B>141<B>206,141,272,141<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>156<B>121<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>5<B>140<B>548<B> extra <special>Tool Tip<ms>Test for dtmf data of "9"<ms><special>Test (Python code)<ms>self.dtmfData=="9"<ms><special> <B><Shape>2<B>211<B>382<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>188<B>214<B>188,214,188,251,359,252<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>139<B>116<B>139,116,181,121<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>292<B>782<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>99<B>146<B>99,146,100,353,166,357<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>165<B>598<B>165,598,165,674,251,677<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>1<B>88<B>9<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>11<B>89<B>96<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.voipNode<ms><special> <B><Shape>2<B>258<B>544<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>22<B>97<B>52<B> extra <special>Tool Tip<ms>Register for events from voip node<ms><special>Node to receive events from (Python code)<ms>"voip"<ms><special> <B><Shape>7<B>163<B>164<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node for termination (Python code)<ms>self.voipNode<ms><special> <B><Shape>19<B>168<B>575<B> extra <special>Tool Tip<ms>Send Dtmf to the voip node<ms><special>Worker node to activate (python code)<ms>self.voipNode<ms><special>DTMF to send to worker node (python code)<ms>self.dtmfData<ms><special> <B><Shape>9<B>120<B>198<B>120,198,120,253,359,253<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>
+15<B>141<B>381<B> extra <special>Tool Tip<ms>Transfer Media between the voip and sound node<ms><special>First SofaSwitch worker (python)<ms>self.voipNode<ms><special>Second SofaSwitch worker (python)<ms>self.soundNode<ms><special> <B><Shape>9<B>120<B>198<B>120,198,120,253,359,253<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>89<B>96<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.voipNode<ms><special> <B><Shape>6<B>141<B>330<B> extra <special>Tool Tip<ms>Make Call to a remote entity<ms><special>Worker node to activate (python code)<ms>self.voipNode<ms><special>Call destination (python code)<ms>self.scriptArgs<ms><special> <B><Shape>2<B>360<B>272<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>20<B>336<B>305<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>248<B>502<B>248,502,251,601<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>203<B>451<B>203,451,248,452<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>7<B>95<B>148<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node for termination (Python code)<ms>self.soundNode<ms><special> <B><Shape>9<B>188<B>214<B>188,214,188,251,359,252<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>169<B>538<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>165<B>522<B>165,522,165,598,251,601<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>166<B>171<B>166,171,166,281<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>22<B>97<B>52<B> extra <special>Tool Tip<ms>Register for events from voip node<ms><special>Node to receive events from (Python code)<ms>"voip"<ms><special> <B><Shape>9<B>206<B>141<B>206,141,272,141<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>12<B>224<B>689<B> extra <special>Tool Tip<ms>Timer which initates a shutdown, after some tidyup
+ messages etc have been sent.<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>"endeverything"<ms><special> <B><Shape>2<B>244<B>139<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>12<B>334<B>253<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>2<ms><special>Timer label (Python code)<ms>self.myId + "thistimer"<ms><special>Python variable: Timer expire info<ms><ms><special> <B><Shape>1<B>88<B>9<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>9<B>271<B>711<B>271,711,316,711<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>153<B>429<B> extra <special>Tool Tip<ms>Wait for DTMF data<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.dtmfData<ms><special> <B><Shape>7<B>163<B>164<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node for termination (Python code)<ms>self.voipNode<ms><special> <B><Shape>9<B>166<B>479<B>166,479<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>191<B>306<B>191,306,237,307<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>139<B>116<B>139,116,181,121<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>211<B>306<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>11<B>156<B>121<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>14<B>235<B>452<B> extra <special>Tool Tip<ms>Wait for voip call to end<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>Terminating<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.eventData<ms><special> <B><Shape>9<B>99<B>146<B>99,146,101,269,166,281<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>229<B>740<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>258<B>468<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>2<B>291<B>710<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>7<B>225<B>646<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node to activate (python code)<ms>self.voipNode<ms><special> <B><Shape>15<B>226<B>601<B> extra <special>Tool Tip<ms>Make sound node
+talk to itself<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>19<B>168<B>499<B> extra <special>Tool Tip<ms>Send Dtmf to the voip node<ms><special>Worker node to activate (python code)<ms>self.voipNode<ms><special>DTMF to send to worker node (python code)<ms>self.dtmfData<ms><special> <B><Shape>5<B>141<B>281<B> extra <special>Tool Tip<ms>TEST: have a sound and voip node.<ms><special>Test (Python code)<ms>(self.voipNode != None) and (self.soundNode != None)<ms><special> <B><Shape>5<B>140<B>472<B> extra <special>Tool Tip<ms>Test for dtmf data of "9"<ms><special>Test (Python code)<ms>self.dtmfData=="9"<ms><special> <B><Shape>
1
0
[Sofaswitch-svn] [commit] r374 - in sofaswitch/trunk/callflow: src tests
by SofaSWITCH SVN 31 Jul '07
by SofaSWITCH SVN 31 Jul '07
31 Jul '07
Author: derek
Date: Mon Jul 30 22:10:51 2007
New Revision: 374
Modified:
sofaswitch/trunk/callflow/src/shapelist.cpp
sofaswitch/trunk/callflow/src/timer.cpp
sofaswitch/trunk/callflow/tests/amplaywavfile.src
sofaswitch/trunk/callflow/tests/amtest.src
sofaswitch/trunk/callflow/tests/child.src
sofaswitch/trunk/callflow/tests/dtmf_from_sound.src
Log:
Multiple fixes, to get it to work correctly.
Tidy up tests for network events. Now, accepts all network messages.
Append to the inline documentation.
Modified: sofaswitch/trunk/callflow/src/shapelist.cpp
==============================================================================
--- sofaswitch/trunk/callflow/src/shapelist.cpp (original)
+++ sofaswitch/trunk/callflow/src/shapelist.cpp Mon Jul 30 22:10:51 2007
@@ -369,12 +369,6 @@
file.AddLine(" self.generatedEvents = {} ");
file.AddLine(" self.pendingEvents = {} ");
file.AddLine(" self.currentHandlers= {} ");
- file.AddLine(" self.knownNetworkMessages= [] ");
- file.AddLine(" self.knownNetworkMessages.append(\"REQUESTNEWID\") ");
- file.AddLine(" self.knownNetworkMessages.append(\"RECEIVEDDTMF\") ");
- file.AddLine(" self.knownNetworkMessages.append(\"Terminating\") ");
- file.AddLine(" self.knownNetworkMessages.append(\"QueryAcceptIncoming\") ");
- file.AddLine(" self.knownNetworkMessages.append(\"FinishedFile\") ");
char c= 34;
wxString tString = wxString::Format(" self.quote = \"\\%c\"", c);
file.AddLine(tString.c_str());
@@ -516,8 +510,17 @@
file.AddLine(" ");
file.AddLine(" Note that the dataTuple consists of the ");
file.AddLine(" eSource, eName, eData where e implies event ");
+ file.AddLine(" ");
+ file.AddLine(" For a network event: ");
+ file.AddLine(" eSource is the sofaID of the node who sent the message ");
+ file.AddLine(" eName could be what it is - like FinishedFile ");
+ file.AddLine(" eData (often blank), is the data part of the network message");
+ file.AddLine(" For a Timer event: ");
+ file.AddLine(" eSource ID of the graph entity where the event was generated");
+ file.AddLine(" eName The name of the timer doing the timeout ");
+ file.AddLine(" eData The period of time waited for ");
file.AddLine(" \"\"\" ");
-// file.AddLine(" print \"Network event data tuple is \", dataTuple ");
+ file.AddLine(" #print \"event data tuple is \", dataTuple ");
file.AddLine(" self.generatedEvents[eName] = dataTuple ");
file.AddLine(" reactor.callLater(0, self.processQueue, 0) ");
file.AddLine(" ");
@@ -622,26 +625,22 @@
file.AddLine(" ");
file.AddLine(" def processReceivedMessage(self, thisMessage): ");
file.AddLine(" \"\"\"Handle an ordinary message from the remote sofa server. Break the message up");
- file.AddLine(" turn it into a MyEvent message, and added to the right ");
+ file.AddLine(" turn it into a MyEvent message, and added to the right ");
file.AddLine(" queue. On doing this, spark an event to drive queue processing. ");
- file.AddLine(" Note that this method can only deal with certain predefined ");
- file.AddLine(" types of messages ");
+ file.AddLine(" Note that this method can deal with all network messages. ");
file.AddLine(" \"\"\" ");
file.AddLine(" thisMessage = thisMessage.strip() ");
- file.AddLine(" for msg in self.knownNetworkMessages: ");
- file.AddLine(" if thisMessage.find(msg) >= 0: ");
- file.AddLine(" idxc = thisMessage.find(\":\") ");
- file.AddLine(" eventSource = thisMessage[0:idxc] ");
- file.AddLine(" idxs = thisMessage.find(\" \") ");
- file.AddLine(" if idxs < 0: ");
+ file.AddLine(" idxc = thisMessage.find(\":\") ");
+ file.AddLine(" eventSource = thisMessage[0:idxc] ");
+ file.AddLine(" idxs = thisMessage.find(\" \") ");
+ file.AddLine(" if idxs < 0: ");
file.AddLine(" eventName = thisMessage[(idxc+1):] ");
file.AddLine(" eventData = \"\" ");
- file.AddLine(" else: ");
+ file.AddLine(" else: ");
file.AddLine(" eventName = thisMessage[(idxc+1):] ");
file.AddLine(" eventData = thisMessage[(idxs+1):] ");
- file.AddLine(" eventString = eventSource + eventName ");
- file.AddLine(" eTuple = (eventSource, eventName, eventData) ");
- file.AddLine(" self.networkEventData(eventString, eTuple) ");
+ file.AddLine(" eTuple = (eventSource, eventName, eventData) ");
+ file.AddLine(" self.networkEventData(eventSource+eventName, eTuple) ");
file.AddLine(" ");
file.AddLine(" ");
for (int i = 0; i < DndShape::KnownShapes; i++) {
Modified: sofaswitch/trunk/callflow/src/timer.cpp
==============================================================================
--- sofaswitch/trunk/callflow/src/timer.cpp (original)
+++ sofaswitch/trunk/callflow/src/timer.cpp Mon Jul 30 22:10:51 2007
@@ -104,10 +104,10 @@
file.AddLine(" print \"The timer label of \", self.data[a][\"Timer label\"], \" was unintelligible Python\" ");
file.AddLine(" return self.data[a][\"Output\"] ");
file.AddLine(" if b == 1: ");
- file.AddLine(" #print \"Rx Timeout, now goto handler of \", self.data[a][\"Timeout Handler\"] ");
- file.AddLine(" #print \"Event data is \", self.data[a][\"Event Data\"] ");
- file.AddLine(" #print \"Event name is \", self.data[a][\"Event Name\"] ");
- file.AddLine(" #print \"Event source is \", self.data[a][\"Event Source\"] ");
+ file.AddLine(" #print \"Rx Timeout, now goto handler of \", self.data[a][\"Timeout Handler\"] ");
+ file.AddLine(" #print \"Event data is \", self.data[a][\"Event Data\"] ");
+ file.AddLine(" #print \"Event name is \", self.data[a][\"Event Name\"] ");
+ file.AddLine(" #print \"Event source is \", self.data[a][\"Event Source\"] ");
file.AddLine(" return self.data[a][\"Timeout Handler\"] ");
file.AddLine(" pVbl = self.data[a][\"Event Data\"] + \" = None\" ");
file.AddLine(" exec(pVbl) ");
@@ -121,7 +121,7 @@
file.AddLine(" print \"The timer period of \", self.data[a][\"Timer period\"], \" was unintelligible\" ");
file.AddLine(" return self.data[a][\"Output\"] ");
- file.AddLine(" self.pendingEvents[eName] = (a, eName, \"\") ");
+ file.AddLine(" self.pendingEvents[eName] = (a, eName, str(tPeriod)) ");
file.AddLine(" self.currentHandlers[eName] = a ");
file.AddLine(" #print \"add an expire timer of \", tPeriod, \" seconds\" ");
file.AddLine(" reactor.callLater(tPeriod, self.timerObjectExpired, eName) ");
Modified: sofaswitch/trunk/callflow/tests/amplaywavfile.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/amplaywavfile.src (original)
+++ sofaswitch/trunk/callflow/tests/amplaywavfile.src Mon Jul 30 22:10:51 2007
@@ -1,2 +1,2 @@
-10<B>513<B>259<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "dtmf received of ", self.dtmfData<ms><special> <B><Shape>5<B>770<B>331<B> extra <special>Tool Tip<ms>play leaving sound<ms><special>Test (Python code)<ms>self.dtmfData=="3"<ms><special> <B><Shape>9<B>557<B>337<B>557,337,606,341<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>998<B>400<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "hangup, as dtmf 9 has been received"<ms><special> <B><Shape>9<B>1041<B>383<B>1041,383,1080,385<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>631<B>332<B>631,366,685,332<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>252<B>464<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: data associated<ms>self.dtmfData<ms><special> <B><Shape>2<B>1055<B>385<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>5<B>660<B>332<B> extra <special>Tool Tip<ms>play entering sound<ms><special>Test (Python code)<ms>self.dtmfData=="2"<ms><special> <B><Shape>1<B>190<B>19<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>9<B>199<B>121<B>199,121,214,248<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>544<B>394<B>606,394,602,560,544,561<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>770<B>416<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>17<B>516<B>509<B> extra <special>Tool Tip<ms>Write To File<ms><special>Filename to contain new audio (Python code)<ms>"recorded_audio.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>12<B>990<B>548<B> extra <special>Tool Tip<ms>timer which, when completed
-indicates the program should end<ms><special>Timer period (seconds, Python code)<ms>0.1<ms><special>Timer label (Python code)<ms>self.myId + "thistimer"<ms><special> <B><Shape>9<B>304<B>115<B>304,119,344,115<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>581<B>341<B> extra <special>Tool Tip<ms>Repeat instructions<ms><special>Test (Python code)<ms>self.dtmfData=="4"<ms><special> <B><Shape>7<B>989<B>497<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node to activate (python code)<ms>self.amNode<ms><special> <B><Shape>2<B>657<B>421<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>16<B>659<B>379<B> extra <special>Tool Tip<ms>play entering sound<ms><special>Filename to read audio from (Python code)<ms>"../prompts/entering.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>16<B>505<B>364<B> extra <special>Tool Tip<ms>Play Rogers voice<ms><special>Filename to read audio from (Python code)<ms>"../prompts/sample_message.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>2<B>505<B>398<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>10<B>198<B>248<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Have a new am node on ", self.amNode<ms><special> <B><Shape>5<B>241<B>359<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>(self.amNode != None) and (self.soundNode != None)<ms><special> <B><Shape>20<B>991<B>599<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>15<B>989<B>451<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>9<B>266<B>148<B>266,148,308,270<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>1013<B>571<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>11<B>256<B>98<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>15<B>240<B>412<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>self.amNode<ms><special>Second SofaSwitch worker (python)<ms>self.soundNode<ms><special> <B><Shape>9<B>302<B>486<B>302,486,541,509<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>266<B>329<B>308,329,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>292<B>270<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print " have a sound node of ", self.soundNode<ms><special> <B><Shape>5<B>507<B>312<B> extra <special>Tool Tip<ms>Test Roger voice<ms><special>Test (Python code)<ms>self.dtmfData=="1"<ms><special> <B><Shape>16<B>770<B>378<B> extra <special>Tool Tip<ms>play leaving sound<ms><special>Filename to read audio from (Python code)<ms>"../prompts/leaving.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>16<B>516<B>561<B> extra <special>Tool Tip<ms>initial wav file<ms><special>Filename to read audio from (Python code)<ms>"../prompts/instructions.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>2<B>517<B>610<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>5<B>991<B>358<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>self.dtmfData=="9"<ms><special> <B><Shape>2<B>319<B>116<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>239<B>94<B>239,94,281,96<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>209<B>119<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>214<B>304<B>214,304,262,356<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>291<B>382<B>291,386,334,382,332,395<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>189<B>71<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"am"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.amNode<ms><special> <B><Shape>9<B>264<B>199<B>264,513,264,635,426,639,428,199,532,202,532,262<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>275<B>145<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>821<B>356<B>821,357,977,357,1018,356<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>307<B>394<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>710<B>331<B>710,357,795,331<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>
+9<B>264<B>199<B>264,513,264,635,426,639,428,199,532,202,532,262<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>198<B>248<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Have a new am node on ", self.amNode<ms><special> <B><Shape>5<B>581<B>341<B> extra <special>Tool Tip<ms>Repeat instructions<ms><special>Test (Python code)<ms>self.dtmfData=="4"<ms><special> <B><Shape>11<B>256<B>98<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>9<B>821<B>356<B>821,357,977,357,1018,356<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>770<B>416<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>5<B>241<B>359<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>(self.amNode != None) and (self.soundNode != None)<ms><special> <B><Shape>2<B>319<B>116<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>17<B>516<B>509<B> extra <special>Tool Tip<ms>Write To File<ms><special>Filename to contain new audio (Python code)<ms>"recorded_audio.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>9<B>1041<B>383<B>1041,383,1080,385<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>239<B>94<B>239,94,281,96<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>544<B>394<B>606,394,602,560,544,561<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>557<B>337<B>557,337,606,341<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>991<B>599<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>657<B>421<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>16<B>516<B>561<B> extra <special>Tool Tip<ms>initial wav file<ms><special>Filename to read audio from (Python code)<ms>"../prompts/instructions.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>2<B>1055<B>385<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>15<B>240<B>412<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>self.amNode<ms><special>Second SofaSwitch worker (python)<ms>self.soundNode<ms><special> <B><Shape>20<B>209<B>119<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>291<B>384<B>291,384,331,384<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>16<B>659<B>379<B> extra <special>Tool Tip<ms>play entering sound<ms><special>Filename to read audio from (Python code)<ms>"../prompts/entering.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>9<B>304<B>115<B>304,119,344,115<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>199<B>121<B>199,121,214,248<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>517<B>610<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>266<B>148<B>266,148,308,270<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>16<B>770<B>378<B> extra <special>Tool Tip<ms>play leaving sound<ms><special>Filename to read audio from (Python code)<ms>"../prompts/leaving.wav"<ms><special>answering machine node (Python code)<ms>self.amNode<ms><special> <B><Shape>9<B>631<B>332<B>631,366,685,332<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>1048<B>569<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>12<B>990<B>548<B> extra <special>Tool Tip<ms>timer which, when completed
+indicates the program should end<ms><special>Timer period (seconds, Python code)<ms>0.1<ms><special>Timer label (Python code)<ms>"end diagram"<ms><special> <B><Shape>5<B>991<B>358<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>self.dtmfData=="9"<ms><special> <B><Shape>10<B>513<B>259<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "dtmf received of ", self.dtmfData<ms><special> <B><Shape>16<B>505<B>364<B> extra <special>Tool Tip<ms>Play Rogers voice<ms><special>Filename to read audio from (Python code)<ms>"../prompts/sample_message.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>2<B>304<B>382<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>302<B>486<B>302,486,541,509<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>7<B>989<B>497<B> extra <special>Tool Tip<ms>End Call<ms><special>Worker node to activate (python code)<ms>self.amNode<ms><special> <B><Shape>9<B>1040<B>570<B>1040,570,1073,570<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>252<B>464<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: data associated<ms>self.dtmfData<ms><special> <B><Shape>5<B>770<B>331<B> extra <special>Tool Tip<ms>play leaving sound<ms><special>Test (Python code)<ms>self.dtmfData=="3"<ms><special> <B><Shape>9<B>266<B>329<B>308,329,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>15<B>989<B>451<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>9<B>214<B>308<B>214,308,266,359<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>507<B>312<B> extra <special>Tool Tip<ms>Test Roger voice<ms><special>Test (Python code)<ms>self.dtmfData=="1"<ms><special> <B><Shape>10<B>998<B>400<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "hangup, as dtmf 9 has been received"<ms><special> <B><Shape>9<B>710<B>331<B>710,357,795,331<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>275<B>145<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>5<B>660<B>332<B> extra <special>Tool Tip<ms>play entering sound<ms><special>Test (Python code)<ms>self.dtmfData=="2"<ms><special> <B><Shape>11<B>189<B>71<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"am"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.amNode<ms><special> <B><Shape>10<B>292<B>270<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print " have a sound node of ", self.soundNode<ms><special> <B><Shape>2<B>505<B>398<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>1<B>190<B>19<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>
Modified: sofaswitch/trunk/callflow/tests/amtest.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/amtest.src (original)
+++ sofaswitch/trunk/callflow/tests/amtest.src Mon Jul 30 22:10:51 2007
@@ -1,4 +1,4 @@
-9<B>321<B>161<B>321,162,381,161<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>7<B>262<B>239<B> extra <special>Tool Tip<ms>End the Answering
-machine node.<ms><special>Worker node for termination (python code)<ms>self.amNode<ms><special> <B><Shape>11<B>192<B>116<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"am"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.amNode<ms><special> <B><Shape>12<B>262<B>288<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>"deathtimer"<ms><special> <B><Shape>9<B>312<B>308<B>312,308,312,308,312,308,312,308,312,308,352,310<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>15<B>177<B>229<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>self.amNode<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>15<B>263<B>190<B> extra <special>Tool Tip<ms>Make the sound node
-talk to itself, so the user hears echo.<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>9<B>242<B>141<B>242,141,242,141,242,141<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>242<B>136<B>242,136,288,136<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>177<B>365<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>222<B>166<B>222,166,288,186<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>329<B>310<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>17<B>177<B>276<B> extra <special>Tool Tip<ms>Write To File<ms><special>Filename to contain new audio (Python code)<ms>"recorded_audio.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>14<B>275<B>136<B> extra <special>Tool Tip<ms>wait for incoming DTMF from the sound node.
-On receiving DTMF, end everything<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.eventData<ms><special> <B><Shape>20<B>266<B>340<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>22<B>201<B>72<B> extra <special>Tool Tip<ms>Register for events from sound node<ms><special>Node to receive events from (Python code)<ms>"sound"<ms><special> <B><Shape>16<B>177<B>320<B> extra <special>Tool Tip<ms>initial wav file<ms><special>Filename to read audio from (Python code)<ms>"../prompts/instructions.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>2<B>360<B>161<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>1<B>192<B>26<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>10<B>185<B>167<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Have a new am node on ", self.amNode<ms><special> <B><Shape>
+10<B>185<B>167<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Have a new am node on ", self.amNode<ms><special> <B><Shape>16<B>177<B>320<B> extra <special>Tool Tip<ms>initial wav file<ms><special>Filename to read audio from (Python code)<ms>"../prompts/instructions.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>12<B>262<B>288<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>"deathtimer"<ms><special> <B><Shape>9<B>323<B>158<B>323,159,383,158<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>177<B>365<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>22<B>201<B>72<B> extra <special>Tool Tip<ms>Register for events from sound node<ms><special>Node to receive events from (Python code)<ms>"sound"<ms><special> <B><Shape>17<B>177<B>276<B> extra <special>Tool Tip<ms>Write To File<ms><special>Filename to contain new audio (Python code)<ms>"recorded_audio.wav"<ms><special>answering machine node<ms>self.amNode<ms><special> <B><Shape>9<B>222<B>166<B>222,166,288,186<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>1<B>192<B>26<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>15<B>263<B>190<B> extra <special>Tool Tip<ms>Make the sound node
+talk to itself, so the user hears echo.<ms><special>First SofaSwitch worker (python)<ms>"sound"<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>9<B>242<B>141<B>242,141,242,141,242,141<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>242<B>136<B>242,136,288,136<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>275<B>136<B> extra <special>Tool Tip<ms>wait for incoming DTMF from the sound node.
+On receiving DTMF, end everything<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.eventData<ms><special> <B><Shape>2<B>356<B>156<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>314<B>310<B>314,310,314,310,314,310,314,310,314,310,354,312<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>7<B>262<B>239<B> extra <special>Tool Tip<ms>End the Answering
+machine node.<ms><special>Worker node for termination (python code)<ms>self.amNode<ms><special> <B><Shape>20<B>266<B>340<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>329<B>310<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>15<B>177<B>229<B> extra <special>Tool Tip<ms>Transfer Media<ms><special>First SofaSwitch worker (python)<ms>self.amNode<ms><special>Second SofaSwitch worker (python)<ms>"sound"<ms><special> <B><Shape>11<B>192<B>116<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"am"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.amNode<ms><special> <B><Shape>
Modified: sofaswitch/trunk/callflow/tests/child.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/child.src (original)
+++ sofaswitch/trunk/callflow/tests/child.src Mon Jul 30 22:10:51 2007
@@ -1 +1 @@
-20<B>531<B>142<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>10<B>528<B>93<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "CHILD says::: parent id is ", self.parentId, " child id is ", self.myId, "data from parent is ", self.userData<ms><special> <B><Shape>1<B>518<B>50<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>
+10<B>528<B>93<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "CHILD says::: parent id is ", self.parentId, " child id is ", self.myId, "data from parent is ", self.userData<ms><special> <B><Shape>1<B>518<B>50<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>20<B>533<B>152<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>
Modified: sofaswitch/trunk/callflow/tests/dtmf_from_sound.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/dtmf_from_sound.src (original)
+++ sofaswitch/trunk/callflow/tests/dtmf_from_sound.src Mon Jul 30 22:10:51 2007
@@ -1 +1 @@
-2<B>247<B>153<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>10<B>105<B>307<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "DTMF detected is ", self.dtmfData<ms><special> <B><Shape>1<B>168<B>34<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>20<B>192<B>252<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>200<B>135<B>200,135,205,195<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>189<B>195<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "timer has expired at ", time.asctime(), " ", self.timerData<ms><special> <B><Shape>10<B>164<B>131<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have a new node on ", self.newNode<ms><special> <B><Shape>9<B>148<B>379<B>148,379,203,381,206,422<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>5<B>98<B>354<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>self.dtmfData=="*"<ms><special> <B><Shape>9<B>122<B>191<B>180,191,122,266<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>109<B>266<B> extra <special>Tool Tip<ms>Wait for DTMF from sound, to end everything.<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.dtmfData<ms><special> <B><Shape>10<B>252<B>103<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Have requested a node from sound at ", time.asctime()<ms><special> <B><Shape>11<B>170<B>85<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>20<B>110<B>395<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>183<B>418<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>158<B>288<B>159,288,158,361,211,363,206,422<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>220<B>103<B>220,105,268,103<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>
+9<B>220<B>103<B>220,105,268,103<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>105<B>307<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "DTMF detected is ", self.dtmfData<ms><special> <B><Shape>10<B>252<B>103<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Have requested a node from sound at ", time.asctime()<ms><special> <B><Shape>1<B>168<B>34<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>10<B>189<B>195<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "timer has expired at ", time.asctime(), " ", self.timerData<ms><special> <B><Shape>9<B>158<B>288<B>159,288,158,361,211,363,206,422<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>109<B>266<B> extra <special>Tool Tip<ms>Wait for DTMF from sound, to end everything.<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>DTMF<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: generated data<ms>self.dtmfData<ms><special> <B><Shape>2<B>247<B>153<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>5<B>98<B>354<B> extra <special>Tool Tip<ms>Conditional<ms><special>Test (Python code)<ms>self.dtmfData=="*"<ms><special> <B><Shape>9<B>148<B>379<B>148,379,203,381,206,422<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>164<B>131<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have a new node on ", self.soundNode<ms><special> <B><Shape>20<B>110<B>395<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>9<B>200<B>135<B>200,135,205,195<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>183<B>418<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>9<B>122<B>191<B>180,191,122,266<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>11<B>170<B>85<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"sound"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.soundNode<ms><special> <B><Shape>20<B>192<B>252<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>
1
0
[Sofaswitch-svn] [commit] r373 - in sofaswitch/trunk/callflow: src tests
by SofaSWITCH SVN 31 Jul '07
by SofaSWITCH SVN 31 Jul '07
31 Jul '07
Author: derek
Date: Mon Jul 30 21:31:31 2007
New Revision: 373
Modified:
sofaswitch/trunk/callflow/src/shapelist.cpp
sofaswitch/trunk/callflow/src/timer.cpp
sofaswitch/trunk/callflow/tests/timetest.src
Log:
Work to make timer correct.
Modified: sofaswitch/trunk/callflow/src/shapelist.cpp
==============================================================================
--- sofaswitch/trunk/callflow/src/shapelist.cpp (original)
+++ sofaswitch/trunk/callflow/src/shapelist.cpp Mon Jul 30 21:31:31 2007
@@ -427,14 +427,14 @@
file.AddLine(" break ");
file.AddLine(" self.timeout = reactor.callLater(0, self.startTimerExpired, \"graph\")");
file.AddLine(" ");
- file.AddLine(" def startTimerExpired(self, data): ");
+ file.AddLine(" def startTimerExpired(self, eventLabel): ");
file.AddLine(" \"\"\"Called during program initialisation. This provies a ");
file.AddLine(" way of ensuring execution only happens after two asynchronous");
file.AddLine(" events (connected to server, flow chart initialised) ");
file.AddLine(" \"\"\" ");
- file.AddLine(" if data == \"graph\": ");
+ file.AddLine(" if eventLabel == \"graph\": ");
file.AddLine(" self.graphSet = True ");
- file.AddLine(" if data == \"connected\": ");
+ file.AddLine(" if eventLabel == \"connected\": ");
file.AddLine(" self.connectionIsMade = True ");
file.AddLine(" if self.graphSet and self.connectionIsMade: ");
file.AddLine(" #print \"start processing now \" ");
@@ -449,7 +449,7 @@
file.AddLine(" if self.generatedEvents.has_key(killEvent): ");
file.AddLine(" self.generatedEvents.pop(killEvent) ");
file.AddLine(" ");
- file.AddLine(" def processQueue(self, data): ");
+ file.AddLine(" def processQueue(self, unusedVariable): ");
file.AddLine(" \"\"\"This method is called after an event has been detected ");
file.AddLine(" as happening. It compares the generated events queue with the registered");
file.AddLine(" handlers, and dispatches execution to the relevant handler ");
@@ -459,9 +459,9 @@
file.AddLine(" hanging around. It would give weird output if they were processed at ");
file.AddLine(" some later time when the program adds a handler for this case ");
file.AddLine(" \"\"\" ");
- file.AddLine(" #print \"processQueue\" ");
- file.AddLine(" #print \"current handlers \", self.currentHandlers ");
+ file.AddLine(" #print \"=======================================processQueue\" ");
file.AddLine(" #print \"current events \", self.generatedEvents ");
+ file.AddLine(" #print \"current handlers \", self.currentHandlers ");
file.AddLine(" #print \"pending events \", self.pendingEvents ");
file.AddLine(" for handler in self.currentHandlers.keys(): ");
file.AddLine(" hre = re.compile(handler) ");
@@ -521,7 +521,7 @@
file.AddLine(" self.generatedEvents[eName] = dataTuple ");
file.AddLine(" reactor.callLater(0, self.processQueue, 0) ");
file.AddLine(" ");
- file.AddLine(" def timerObjectExpired(self, data): ");
+ file.AddLine(" def timerObjectExpired(self, timerData): ");
file.AddLine(" \"\"\"Some timer has expired. Move it from the pending list and place ");
file.AddLine(" it in the active list. Then activate processing so that things move ");
file.AddLine(" along ");
@@ -531,8 +531,11 @@
file.AddLine(" deleted (after starting it) the corresponding event in the pending ");
file.AddLine(" list will be absent ");
file.AddLine(" \"\"\" ");
- file.AddLine(" if self.pendingEvents.has_key(data): ");
- file.AddLine(" self.generatedEvents[data] = self.pendingEvents.pop(data)");
+ file.AddLine(" #print \"Timer object expired, data is \", timerData ");
+ file.AddLine(" if self.pendingEvents.has_key(timerData): ");
+ file.AddLine(" #print \"Timer object expired, data is \", self.pendingEvents[timerData] ");
+ file.AddLine(" self.generatedEvents[timerData] = self.pendingEvents.pop(timerData)");
+ file.AddLine(" #print \"Timer object expired, data is \", self.generatedEvents[timerData] ");
file.AddLine(" reactor.callLater(0, self.processQueue, 0) ");
file.AddLine(" ");
file.AddLine(" def startWorkNow(self, notUsed): ");
@@ -588,16 +591,16 @@
file.AddLine(" used though to connect elsewhere. ");
file.AddLine(" \"\"\" ");
file.AddLine(" ");
- file.AddLine(" def dataReceived(self, data): ");
+ file.AddLine(" def dataReceived(self, dataRx): ");
file.AddLine(" \"\"\"A twisted callback which happens each time we receive a message from the sofa ");
file.AddLine(" server. This message could be part of the initialisation process. In which case, ");
file.AddLine(" initialise, and activate the next step of initialise. Or, it is an ordinary ");
file.AddLine(" message that has to be processed ");
file.AddLine(" \"\"\" ");
file.AddLine(" #print \"Received the message \", data ");
- file.AddLine(" while data.find(\" \") >= 0: ");
- file.AddLine(" data = data.replace(\" \", \" \") ");
- file.AddLine(" ssdata = str(data).split(\'\\0\') ");
+ file.AddLine(" while dataRx.find(\" \") >= 0: ");
+ file.AddLine(" dataRx = dataRx.replace(\" \", \" \") ");
+ file.AddLine(" ssdata = str(dataRx).split(\'\\0\') ");
file.AddLine(" for oneMessage in ssdata: ");
file.AddLine(" self.countReceived += 1 ");
file.AddLine(" if self.countReceived == 1: ");
@@ -608,10 +611,10 @@
file.AddLine(" self.transport.write(self.tmsg) ");
file.AddLine(" except: ");
file.AddLine(" self.tmsg = None ");
- file.AddLine(" else: ");
+ file.AddLine(" else: ");
file.AddLine(" self.processReceivedMessage(oneMessage)");
- file.AddLine(" ");
- file.AddLine(" def replyNow(self, data): ");
+ file.AddLine(" ");
+ file.AddLine(" def replyNow(self, unusedData): ");
file.AddLine(" \"\"\" Send a premade message to the remote sofa server. This method has to ");
file.AddLine(" send the message only - and not manipulate it in any way ");
file.AddLine(" \"\"\" ");
Modified: sofaswitch/trunk/callflow/src/timer.cpp
==============================================================================
--- sofaswitch/trunk/callflow/src/timer.cpp (original)
+++ sofaswitch/trunk/callflow/src/timer.cpp Mon Jul 30 21:31:31 2007
@@ -36,7 +36,7 @@
relInputPoints.Add(25, 0);
if (kind == Timer) {
- relOutputPoints.Add(50, 20);
+ relOutputPoints.Add(50, 22);
relOutputPoints.Add(15, 50);
} else
relOutputPoints.Add(25, 50);
@@ -47,10 +47,6 @@
displayData[displayData.size()] =
InformationSection(wxT("Timer label (Python code)"), wxT("self.myId + \"thistimer\""));
- if (kind == Timer) {
- displayData[displayData.size()] =
- InformationSection(wxT("Python variable: Timer expire info"), wxT(""));
- }
AdjustIoPoints();
}
@@ -99,32 +95,38 @@
bool DndShapeTimer::WriteSystemCode(wxTextFile & file)
{
- file.AddLine(" def Timer(self, sTuple): ");
- file.AddLine(" a,b,c = sTuple ");
- file.AddLine(" if b == 0: ");
- file.AddLine(" try: ");
- file.AddLine(" eName = eval(self.data[a][\"Timer label\"]) ");
- file.AddLine(" except: ");
- file.AddLine(" print \"The timer label of \", self.data[a][\"Timer label\"], \" was unintelligible Python\" ");
- file.AddLine(" return self.data[a][\"Output\"] ");
-
- file.AddLine(" try: ");
- file.AddLine(" tPeriod = eval (self.data[a][\"Timer period\"]) ");
- file.AddLine(" except: ");
+ file.AddLine(" def Timer(self, sTuple): ");
+ file.AddLine(" #print \"Start of Timer on a tuple of \", sTuple ");
+ file.AddLine(" a,b,c = sTuple ");
+ file.AddLine(" try: ");
+ file.AddLine(" eName = eval(self.data[a][\"Timer label\"]) ");
+ file.AddLine(" except: ");
+ file.AddLine(" print \"The timer label of \", self.data[a][\"Timer label\"], \" was unintelligible Python\" ");
+ file.AddLine(" return self.data[a][\"Output\"] ");
+ file.AddLine(" if b == 1: ");
+ file.AddLine(" #print \"Rx Timeout, now goto handler of \", self.data[a][\"Timeout Handler\"] ");
+ file.AddLine(" #print \"Event data is \", self.data[a][\"Event Data\"] ");
+ file.AddLine(" #print \"Event name is \", self.data[a][\"Event Name\"] ");
+ file.AddLine(" #print \"Event source is \", self.data[a][\"Event Source\"] ");
+ file.AddLine(" return self.data[a][\"Timeout Handler\"] ");
+ file.AddLine(" pVbl = self.data[a][\"Event Data\"] + \" = None\" ");
+ file.AddLine(" exec(pVbl) ");
+ file.AddLine(" pVbl = self.data[a][\"Event Name\"] + \" = None\" ");
+ file.AddLine(" exec(pVbl) ");
+ file.AddLine(" pVbl = self.data[a][\"Event Source\"] + \" = None\" ");
+ file.AddLine(" exec(pVbl) ");
+ file.AddLine(" try: ");
+ file.AddLine(" tPeriod = eval (self.data[a][\"Timer period\"]) ");
+ file.AddLine(" except: ");
file.AddLine(" print \"The timer period of \", self.data[a][\"Timer period\"], \" was unintelligible\" ");
- file.AddLine(" return self.data[a][\"Output\"] ");
+ file.AddLine(" return self.data[a][\"Output\"] ");
- file.AddLine(" self.pendingEvents[eName] = (a, eName, \"\") ");
- file.AddLine(" reactor.callLater(tPeriod, self.timerObjectExpired, eName) ");
- file.AddLine(" self.currentHandlers[eName] = a ");
-
- file.AddLine(" #self.pendingEvents[eName] = (\"internaltimer\", \"timerexpired\", a) ");
- file.AddLine(" ");
- file.AddLine(" reactor.callLater(self.period, self.timerObjectExpired, eName) ");
- file.AddLine(" return self.data[a][\"Output\"] ");
- file.AddLine(" #Code below describes the handling of the timer expring ");
- file.AddLine(" else: ");
- file.AddLine(" return self.data[a][\"Timeout Handler\"] ");
+ file.AddLine(" self.pendingEvents[eName] = (a, eName, \"\") ");
+ file.AddLine(" self.currentHandlers[eName] = a ");
+ file.AddLine(" #print \"add an expire timer of \", tPeriod, \" seconds\" ");
+ file.AddLine(" reactor.callLater(tPeriod, self.timerObjectExpired, eName) ");
+ file.AddLine(" ");
+ file.AddLine(" return self.data[a][\"Output\"] ");
file.AddLine("");
return true;
@@ -156,7 +158,7 @@
file.AddLine(wxString::Format(" \"self.%s_Name\", ", GetKey().c_str()));
file.AddLine(wxString::Format(" \"Event Data\" : "));
- file.AddLine(wxString::Format(" \"self.%s_Name\", ", GetKey().c_str()));
+ file.AddLine(wxString::Format(" \"self.%s_Data\", ", GetKey().c_str()));
file.AddLine(wxString::Format(" \"Event Source\" : "));
Modified: sofaswitch/trunk/callflow/tests/timetest.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/timetest.src (original)
+++ sofaswitch/trunk/callflow/tests/timetest.src Mon Jul 30 21:31:31 2007
@@ -1 +1 @@
-9<B>153<B>292<B>229,419,153,420,153,292<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>219<B>302<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "t2 ", time.asctime(), " data is ", self.timer2<ms><special> <B><Shape>14<B>347<B>326<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms>self.myId + "thistimer"<ms><special>Event sought (Regular Exp)<ms><ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: data associated<ms>self.timer3<ms><special> <B><Shape>9<B>271<B>275<B>271,277,360,275<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>1<B>28<B>63<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>12<B>333<B>273<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>self.gap<ms><special>Timer label (Python code)<ms>self.myId + "thistimer"<ms><special> <B><Shape>9<B>54<B>157<B>153,177,156,157,105,167,73,282,57,279,54,254<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>342<B>368<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "t10 ", time.asctime(), " data is ", self.timer3<ms><special> <B><Shape>14<B>222<B>256<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>timer2<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: data associated<ms>self.timer2<ms><special> <B><Shape>12<B>29<B>207<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>1.95<ms><special>Timer label (Python code)<ms>"timer1"<ms><special> <B><Shape>10<B>36<B>158<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>self.gap=10<ms><special> <B><Shape>2<B>394<B>380<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>188<B>201<B>188,201,231,202<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>12<B>209<B>203<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>2<ms><special>Timer label (Python code)<ms>"timer2"<ms><special> <B><Shape>10<B>137<B>232<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "t1 ", time.asctime(), " data is ", self.timer1Data<ms><special> <B><Shape>10<B>36<B>110<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Start ", time.asctime()<ms><special> <B><Shape>20<B>346<B>417<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>204<B>419<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>396<B>347<B>419,380,418,348,396,347<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>229<B>362<B>235,362,229,419<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>14<B>140<B>181<B> extra <special>Tool Tip<ms>Eventer<ms><special>Event sought (Python code)<ms><ms><special>Event sought (Regular Exp)<ms>timer1<ms><special>Python variable: source of the event<ms>self.eventSource<ms><special>Python variable: name of the event<ms>self.eventName<ms><special>Python variable: data associated<ms>self.timer1Data<ms><special> <B><Shape>
+10<B>125<B>160<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>self.gap=10<ms><special> <B><Shape>12<B>110<B>311<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>2<ms><special>Timer label (Python code)<ms>"two timer"<ms><special> <B><Shape>1<B>119<B>60<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>12<B>99<B>408<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>10<ms><special>Timer label (Python code)<ms>"third time"<ms><special> <B><Shape>9<B>149<B>429<B>149,430,202,429<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>118<B>252<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "t1 ", time.asctime()<ms><special> <B><Shape>9<B>166<B>233<B>166,233,203,233,202,429<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>12<B>116<B>211<B> extra <special>Tool Tip<ms>Timer<ms><special>Timer period (seconds, Python code)<ms>1<ms><special>Timer label (Python code)<ms>self.myId + "timerOne"<ms><special> <B><Shape>10<B>110<B>351<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "t2 ", time.asctime()<ms><special> <B><Shape>2<B>177<B>429<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>10<B>125<B>112<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "Start ", time.asctime()<ms><special> <B><Shape>9<B>160<B>333<B>160,333,200,333,202,429<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>10<B>96<B>448<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "t10 ", time.asctime()<ms><special> <B><Shape>20<B>101<B>509<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>
1
0
30 Jul '07
Author: derek
Date: Sun Jul 29 21:57:23 2007
New Revision: 372
Modified:
sofaswitch/trunk/callflow/tests/simpleeventer.src
Log:
Changes to bring up to date with current icons.
Modified: sofaswitch/trunk/callflow/tests/simpleeventer.src
==============================================================================
--- sofaswitch/trunk/callflow/tests/simpleeventer.src (original)
+++ sofaswitch/trunk/callflow/tests/simpleeventer.src Sun Jul 29 21:57:23 2007
@@ -1 +1 @@
-11<B>303<B>108<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.newNode<ms><special> <B><Shape>10<B>336<B>196<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print " Finished main stream of execution "<ms><special> <B><Shape>20<B>300<B>324<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>327<B>251<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>333<B>158<B>333,158,352,196<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>312<B>219<B>312,219,312,326<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>387<B>129<B> extra <special>Tool Tip<ms>End Processing<ms><special> <B><Shape>9<B>353<B>128<B>353,128,412,129<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>1<B>303<B>56<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>10<B>293<B>162<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have received a new node ", self.newNode<ms><special> <B><Shape>
+9<B>333<B>158<B>333,158,352,196<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>9<B>312<B>219<B>312,219,312,326<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>20<B>300<B>324<B> extra <special>Tool Tip<ms>Death<ms><special> <B><Shape>2<B>385<B>127<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>1<B>303<B>56<B> extra <special>Tool Tip<ms>Start Processing<ms><special> <B><Shape>11<B>303<B>108<B> extra <special>Tool Tip<ms>Request Node<ms><special>Request node from (Python code)<ms>"voip"<ms><special>Timer period (seconds)<ms>1<ms><special>Info to send to remote node (Python code)<ms><ms><special>Python variable: generated data<ms>self.newNode<ms><special> <B><Shape>10<B>293<B>162<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print "have received a new node ", self.newNode<ms><special> <B><Shape>9<B>353<B>128<B>353,128,412,129<special>Tool Tip<ms>Join blocks shape<ms><special> <B><Shape>2<B>330<B>252<B> extra <special>Tool Tip<ms>Suspend Processing<ms><special> <B><Shape>10<B>336<B>196<B> extra <special>Tool Tip<ms>Python<ms><special>Python Code<ms>print " Finished main stream of execution "<ms><special> <B><Shape>
1
0