-
-
-# # Open vending machine via LAT
- if options.use_lat:
- latclient = LATClient(service = ServiceName, password = ServicePassword)
- (rfh, wfh) = latclient.get_fh()
- else:
- #(rfh, wfh) = popen2('../../virtualvend/vvend.py')
- import socket
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM, 0)
- sock.connect((options.host, options.port))
- rfh = sock.makefile('r')
- wfh = sock.makefile('w')
-
- run_forever(rfh, wfh)
+ ServerName = cp.get('DecServer', 'Name')
+ ConnectPassword = cp.get('DecServer', 'ConnectPassword')
+ PrivPassword = cp.get('DecServer', 'PrivPassword')
+
+ while True:
+ try:
+ rfh, wfh = connect_to_vend(options, DBServer, DBName, DBUser, DBPassword, ServiceName, ServicePassword, ServerName, ConnectPassword, PrivPassword)
+ except (LATClientException, socket.error):
+ (exc_type, exc_value, exc_traceback) = sys.exc_info()
+ print "Connection error ("+str(exc_type)+"):"
+ print_tb(exc_traceback)
+ del exc_traceback
+ print "Trying again in 5 seconds."
+ sleep(5)
+ continue
+ try:
+ run_forever(rfh, wfh)
+ except VendingException:
+ print "Connection died, trying again..."
+