]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
add server example for python thanks anm
authorBrian West <brian@freeswitch.org>
Fri, 20 Feb 2009 22:35:05 +0000 (22:35 +0000)
committerBrian West <brian@freeswitch.org>
Fri, 20 Feb 2009 22:35:05 +0000 (22:35 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12205 d0543943-73ff-0310-b7d9-9358b9ac24b2

libs/esl/python/server.py [new file with mode: 0644]

diff --git a/libs/esl/python/server.py b/libs/esl/python/server.py
new file mode 100644 (file)
index 0000000..7867c99
--- /dev/null
@@ -0,0 +1,66 @@
+#!/usr/bin/env python
+
+import SocketServer
+import pickle
+from ESL import *
+
+#eslSetLogLevel(7)
+
+class ESLRequestHandler(SocketServer.BaseRequestHandler ):
+       def setup(self):
+               print self.client_address, 'connected!'
+
+               fd = self.request.fileno()
+               print fd
+
+               con = ESLconnection(fd)
+               print "Connected: " 
+               print  con.connected()
+               if con.connected():
+
+                       info = con.getInfo()
+
+                       uuid = info.getHeader("unique-id")
+                       print uuid
+                       con.execute("answer", "", uuid)
+                       con.execute("playback", "/ram/swimp.raw", uuid);
+               
+#server host is a tuple ('host', port)
+server = SocketServer.ThreadingTCPServer(('', 8040), ESLRequestHandler)
+server.serve_forever()
+
+
+
+
+#require ESL;
+#use IO::Socket::INET;
+#
+#my $ip = "127.0.0.1";
+#my $sock = new IO::Socket::INET ( LocalHost => $ip,  LocalPort => '8040',  Proto => 'tcp',  Listen => 1,  Reuse => 1 );
+#die "Could not create socket: $!\n" unless $sock;
+#
+#for(;;) {
+#  my $new_sock = $sock->accept();
+#  my $pid = fork();
+#  if ($pid) {
+#    close($new_sock);
+#    next;
+#  }
+#
+#  my $host = $new_sock->sockhost();
+#  my $fd = fileno($new_sock);
+#  
+#  my $con = new ESL::ESLconnection($fd);
+#  my $info = $con->getInfo();
+#
+#  print $info->serialize();
+#
+#  my $uuid = $info->getHeader("unique-id");
+#
+#  $con->execute("answer", "", $uuid);
+#  $con->execute("playback", "/ram/swimp.raw", $uuid);
+#
+#  close($new_sock);
+#}
+
+