o Schroeder, Paul [05/29/08 19:03]:
> Hello,
>
> i want to activate a pythonfunction via xml-rpc from a phpsite, how can i do
> this?
you can either modify xmlrpc2di module to expose functions from ivr
scripts, or you can simply use python xmlrpc server and start it as
extra thread when the script is compiled using ivr.createThread, like this
from SimpleXMLRPCServer import *
class MyServer(SimpleXMLRPCServer):
...
def _dispatch(self, method, params):
try:
func = getattr(self, 'export_' + method)
except AttributeError:
raise Exception('method "%s" is not supported'
% method)
else:
return func(*params)
###### exported functions:
def export_ping(self):
return [1]
server = MyServer((listen_addr, listen_port))
class run_obj:
def run(self):
debug("running server...")
server.serve_forever()
t = run_obj()
ivr.createThread(t)
the funny thing is that you can call properties from the server when
your call is running, e.g.:
class IvrDialog(IvrDialogBase):
...
def onSessionStart(self, hdrs):
...
server.some_func(self.dialog.callid)
hth
Stefan
>
> paul
> _______________________________________________
> Semsdev mailing list
> [email protected]
> http://lists.iptel.org/mailman/listinfo/semsdev
--
Stefan Sayer
VoIP Services
[EMAIL PROTECTED]
www.iptego.com
iptego GmbH
Am Borsigturm 40
13507 Berlin
Germany
Amtsgericht Charlottenburg, HRB 101010
Geschaeftsfuehrer: Alexander Hoffmann
_______________________________________________
Semsdev mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/semsdev