<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:Courier New, courier, monaco, monospace, sans-serif;font-size:10pt"><DIV>When I use the Python function sys.exit() in the hangup callback function, it immediately causes the FreeSwitch application to stop running. But I need to somehow stop the Python script from running in this situation.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Here is a simple example:</DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT color=#0000bf>&nbsp;&nbsp;&nbsp;&nbsp; def hangup_hook(session, what):<BR>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; print("info","Hangup hook for&nbsp; %s!!\n\n" % what)<BR>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; sys.exit()</FONT></DIV>
<DIV><FONT color=#0000bf>&nbsp;&nbsp;&nbsp;&nbsp; </FONT></DIV>
<DIV><FONT color=#0000bf>&nbsp;&nbsp;&nbsp;&nbsp; def handler(session, args):<BR>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; session.answer()<BR>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; session.setHangupHook(hangup_hook)<BR>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp; while(1):<BR>&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; session.streamFile(PROMPTS_DIR + "ThanksForCalling.wav")<BR></FONT></DIV>
<DIV>The above script simply plays "Thanks for calling" over and over. If I hang-up, FreeSwitch dies. If I remove the sys.exit(), it will return from hangup_hook and continue trying to play the prompt forever.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Thanks for your help.</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></div></body></html>