def receive_queue_message(self, queue_name, peek_lock=True, timeout=60): queue = self.get_queue(queue_name) if queue: try: return queue.messages.pop(0) except IndexError: return Message()
def SendNotification(EMail, PList, dt1, strlink): config = CipherConfig.load('parameters.yaml') Bus_settings = config['Notification']['AzureMessageBus'] MessageBody_settings = config['Notification']['MessageBody'] if Bus_settings['SharedAccessKeyValue'] != None and \ Bus_settings['ServiceNamespace'] != None: Address_list = [EMail] ServiceNameSpace = Bus_settings['ServiceNamespace'] sbs = ServiceBusService(ServiceNameSpace, shared_access_key_name = Bus_settings['SharedAccessKeyName'], shared_access_key_value = Bus_settings['SharedAccessKeyValue'] ) message = { 'EmailType' : 0, 'Subject' : 'Status on ' + dt1, 'FromAddress' : MessageBody_settings['FromAddress'], 'ReplyTo' : '', 'FromName' : MessageBody_settings['FromName'] + ' ' + CipherConfig.Country + '-' + CipherConfig.Environment, 'ToAddresses' : Address_list, 'Message' : 'Processes completed with Alert(s) in the last hour\n\n' + PList + strlink, 'CcAddresses': [], 'BccAddresses': [], 'Metadata': { "TaskName": "This is a test message"} } json = CipherData.toJson(message) msg = Message(json) sbs.send_queue_message(Bus_settings['QueueName'], msg) return
def sendWindBeringData(msg): try: bus_service = ServiceBusService( service_namespace='kanmessagebus', shared_access_key_name='client', shared_access_key_value='dNj7Z+fOvV49WNETUL0Guj3KVVdZude/fqzmj95GHKo=') mesage = Message(msg) bus_service.send_topic_message("wind_bearing", mesage) except Exception as e: if hasattr(e, 'message'): print(e.message) else: print(e)
def sendWeatherData(msg): try: bus_service = ServiceBusService( service_namespace='kanmessagebus', shared_access_key_name='weather', shared_access_key_value='tweaVJ8+++wUl3f568/E9vgAH21FK2SpcPBXn5F8Kts=') mesage = Message(msg) bus_service.send_topic_message("weather_station", mesage) except Exception as e: if hasattr(e, 'message'): print(e.message) else: print(e)
def process_request(queue_name): """ Endpoint to publish messages to Azure service bus :param queue_name: name of queue to publish messages to :return: """ input_data = request.get_json() bus_service = ServiceBusService( service_namespace=SERVICE_NAMESPACE, shared_access_key_name=request.headers.get('sas-token-name'), shared_access_key_value=request.headers.get('sas-token')) for index, input_entity in enumerate(input_data): data: str = json.dumps(input_entity[PAYLOAD_KEY] if PAYLOAD_KEY else input_entity).encode("utf-8") msg = Message(data) try: bus_service.send_queue_message(queue_name, msg) logging.info("Entity %s sent successfully", input_entity["_id"]) except Exception as e: logging.error(e) abort(500) return Response()
def remoteControlStop(self, bot_id): msg = Message('0 0'.encode('utf-8')) self.bus_service.send_topic_message((self.topic_vel + bot_id), msg)
def remoteControl(self, bot_id, cmd_dirn): msg = Message(self.cmd_values[cmd_dirn].encode('utf-8')) self.bus_service.send_topic_message((self.topic_vel + bot_id), msg)
def receive_queue_message(self, queue_name, peek_lock=True, timeout=60): queue = self.get_queue(queue_name) if queue and len(queue.messages): return queue.messages.pop(0) return Message()