import requests
import yaml


def runLoop( config ):
	"""
	Runs indefinitely. On user input (card swipe), will gather the card number,
	send it to the server configured, and if it has been authorized, open the
	relay with a GPIO call.
	"""
	while True:
		swipe = input()

		cardNumber = swipe
		print( 'The last input was ' + cardNumber )

		try:
			res = queryServer( cardNumber, config )
		except requests.exceptions.Timeout:
			print( "Server timeout!" )
			continue

		if res['isAuthorized']:
			# open the relay here
			pass


def queryServer( cardNumber, config ):
	url = 'http://' + str( config['serverAddress'] ) + ':' + str( config['serverPort'] )

	req = requests.get( url, {
		'cardNumber': cardNumber,
		'machineID': config['machineID'],
		'machineType': config['machineType']
	}, timeout=config['timeout'] )

	return req.json()


if __name__ == '__main__':
	# read and return a yaml file (called 'config.yaml' by default) and give it
	# back as a dictionary
	with open( 'config.yaml' ) as f:
		config = yaml.load( f )

	# run the main loop
	runLoop( config )

import requests
import yaml


def runLoop( config ):
	"""
	Runs indefinitely. On user input (card swipe), will gather the card number,
	send it to the server configured, and if it has been authorized, open the
	relay with a GPIO call.
	"""
	while True:
		swipe = input()

		cardNumber = swipe
		print( 'The last input was ' + cardNumber )

		try:
			res = requestAuthorization( cardNumber, config )
		except requests.exceptions.Timeout:
			print( "Server timeout!" )
			continue

		if res['isAuthorized']:
			# open the relay here
			pass


def requestAuthorization( cardNumber, config ):
	url = 'http://' + str( config['serverAddress'] ) + ':' + str( config['serverPort'] )
	path = '/users/checkAuthorization'

	req = requests.get( url + path, {
		'cardNumber': cardNumber,
		'machineID': config['machineID'],
		'machineType': config['machineType']
	}, timeout=config['timeout'] )

	return req.json()


if __name__ == '__main__':
	# read and return a yaml file (called 'config.yaml' by default) and give it
	# back as a dictionary
	with open( 'config.yaml' ) as f:
		config = yaml.load( f )

	# run the main loop
	runLoop( config )

Rename funciton to match corresponding HTTP request
Rename funciton to match corresponding HTTP request


  import requests
  import yaml
  
  
  def runLoop( config ):
  	"""
  	Runs indefinitely. On user input (card swipe), will gather the card number,
  	send it to the server configured, and if it has been authorized, open the
  	relay with a GPIO call.
  	"""
  	while True:
  		swipe = input()
  
  		cardNumber = swipe
  		print( 'The last input was ' + cardNumber )
  
  		try:
- 			res = queryServer( cardNumber, config )
+ 			res = requestAuthorization( cardNumber, config )
  		except requests.exceptions.Timeout:
  			print( "Server timeout!" )
  			continue
  
  		if res['isAuthorized']:
  			# open the relay here
  			pass
  
  
- def queryServer( cardNumber, config ):
+ def requestAuthorization( cardNumber, config ):
  	url = 'http://' + str( config['serverAddress'] ) + ':' + str( config['serverPort'] )
+ 	path = '/users/checkAuthorization'
  
- 	req = requests.get( url, {
+ 	req = requests.get( url + path, {
  		'cardNumber': cardNumber,
  		'machineID': config['machineID'],
  		'machineType': config['machineType']
  	}, timeout=config['timeout'] )
  
  	return req.json()
  
  
  if __name__ == '__main__':
  	# read and return a yaml file (called 'config.yaml' by default) and give it
  	# back as a dictionary
  	with open( 'config.yaml' ) as f:
  		config = yaml.load( f )
  
  	# run the main loop
  	runLoop( config )
  
Rename funciton to match corresponding HTTP request
## Code Before:
import requests
import yaml


def runLoop( config ):
	"""
	Runs indefinitely. On user input (card swipe), will gather the card number,
	send it to the server configured, and if it has been authorized, open the
	relay with a GPIO call.
	"""
	while True:
		swipe = input()

		cardNumber = swipe
		print( 'The last input was ' + cardNumber )

		try:
			res = queryServer( cardNumber, config )
		except requests.exceptions.Timeout:
			print( "Server timeout!" )
			continue

		if res['isAuthorized']:
			# open the relay here
			pass


def queryServer( cardNumber, config ):
	url = 'http://' + str( config['serverAddress'] ) + ':' + str( config['serverPort'] )

	req = requests.get( url, {
		'cardNumber': cardNumber,
		'machineID': config['machineID'],
		'machineType': config['machineType']
	}, timeout=config['timeout'] )

	return req.json()


if __name__ == '__main__':
	# read and return a yaml file (called 'config.yaml' by default) and give it
	# back as a dictionary
	with open( 'config.yaml' ) as f:
		config = yaml.load( f )

	# run the main loop
	runLoop( config )

## Instruction:
Rename funciton to match corresponding HTTP request
## Code After:
import requests
import yaml


def runLoop( config ):
	"""
	Runs indefinitely. On user input (card swipe), will gather the card number,
	send it to the server configured, and if it has been authorized, open the
	relay with a GPIO call.
	"""
	while True:
		swipe = input()

		cardNumber = swipe
		print( 'The last input was ' + cardNumber )

		try:
			res = requestAuthorization( cardNumber, config )
		except requests.exceptions.Timeout:
			print( "Server timeout!" )
			continue

		if res['isAuthorized']:
			# open the relay here
			pass


def requestAuthorization( cardNumber, config ):
	url = 'http://' + str( config['serverAddress'] ) + ':' + str( config['serverPort'] )
	path = '/users/checkAuthorization'

	req = requests.get( url + path, {
		'cardNumber': cardNumber,
		'machineID': config['machineID'],
		'machineType': config['machineType']
	}, timeout=config['timeout'] )

	return req.json()


if __name__ == '__main__':
	# read and return a yaml file (called 'config.yaml' by default) and give it
	# back as a dictionary
	with open( 'config.yaml' ) as f:
		config = yaml.load( f )

	# run the main loop
	runLoop( config )
