import stomp import time import SullyGnomeRobot import RestAPIClient print("## ") print("## starting > JMS consumer (yankee-sully-channels-monthly)") print("## ") class MyListener(stomp.ConnectionListener): def on_message(headers, message): print("** new message! **") print("message / ", message) print("messagebody / ", message.body) print("checking the value does or doesnt exist in db") alreadyExistsSuccess = RestAPIClient.searchURLSuccesses(message.body) print("alreadyExistsSuccess / ", alreadyExistsSuccess) if alreadyExistsSuccess.lower().strip() == "true": print("this record exists (successes). returning. doing nothing") return print("didn't exist in success. check in errors now.") alreadyExistsFailure = RestAPIClient.searchURLFailures(message.body) print("alreadyExistsFailure / ", alreadyExistsFailure) if alreadyExistsFailure.lower().strip() == "true": print("this record exists (failures). returning. doing nothing") return print("didn't exist in success or errors. will process now") try: SullyGnomeRobot.download(message.body) except Exception as e: print(f"exception / something went wrong when the sully gnome robot was downloading: {e}") RestAPIClient.addDownloadFailure(message.body) def on_error(headers, message): print('received an error "%s"' % message) RestAPIClient.addDownloadFailure(message.body) print("## ") print("## starting > JMS consumer (yankee-sully-channels-monthly)") print("## ") conn = stomp.Connection([('osiris.yankee.embanet.online', 61613)]) conn.set_listener('', MyListener()) conn.connect('admin', 'password', wait=True) conn.subscribe('/queue/yankee-sully-channels-monthly', id=1, ack='auto', headers={'activemq.prefetchSize': 10}) print("## ") print("## notification > connected to JMS server (yankee-sully-channels-monthly) 3333") print("## ") while True: pass time.sleep(1) conn.disconnect()