Split this code out.
[zanchey/dispense2.git] / sql-edition / servers / VendServer.py
index 57a2682..3f806bc 100755 (executable)
@@ -1,44 +1,18 @@
 #!/usr/bin/python
 
 #!/usr/bin/python
 
-import sys, os, string, socket, time
+import sys, os, string, socket, time, re
 from popen2 import popen2
 from pyPgSQL import PgSQL
 from LATClient import LATClient
 from popen2 import popen2
 from pyPgSQL import PgSQL
 from LATClient import LATClient
-
-class VendingMachine:
-       def __init__(self, rfh, wfh):
-               self.rfh = rfh
-               self.wfh = wfh
-               self.wfh.write('\n')
-               self.await_prompt()
-
-       def await_prompt(self):
-               self.wfh.flush()
-               state = 0
-               s = ''
-               while state != 3:
-                   s = self.rfh.read(1)
-                   if s == '': raise Exception
-                   if s == '\n' and state == 0: state = 1
-                   if s == '#' and state == 1: state = 2
-                   if s == ' ' and state == 2: state = 3
-
-       def get_response(self):
-               self.wfh.flush()
-               s = ''
-               while s == '':
-                   s = self.rfh.readline()
-                   if s == '': return None
-                   s = s.strip('\r\n')
-               return s
-
-       def ping(self):
-               self.wfh.write('PING\n')
-               return self.get_response()
+from VendingMachine import VendingMachine
 
 if __name__ == '__main__':
        # Open vending machine via LAT
        latclient = LATClient(service = 'VEND', password = 'dmscptd')
        (rfh, wfh) = latclient.get_fh()
        v = VendingMachine(rfh, wfh)
 
 if __name__ == '__main__':
        # Open vending machine via LAT
        latclient = LATClient(service = 'VEND', password = 'dmscptd')
        (rfh, wfh) = latclient.get_fh()
        v = VendingMachine(rfh, wfh)
-       print v.ping()
+       print 'PING is', v.ping()
+       print 'BEEP is', v.beep()
+       print 'VEND 11 is', v.vend('11')
+       print 'SILENCE is', v.silence()
+       print 'DISPLAY is', v.display('GOOD NIGHT')

UCC git Repository :: git.ucc.asn.au