in messages/message_manager.py [0:0]
def get_messages(self, **kwargs):
person_name = kwargs.get('PersonName', '')
message_type = kwargs.get('MessageType', 'Message')
wait_time_seconds = kwargs.get('WaitTimeSeconds', 0)
max_number_of_messages = kwargs.get('MaxNumberOfMessages', 10)
self.sqs_msgs = []
self.log.debug("Checking messages in the queue, person={}, type={}"
.format(person_name, message_type))
messages = {}
queue = None
if message_type == "Message":
queue = self.queue
else:
queue = self.bot_queue
messages = queue.receive_messages(
MessageAttributeNames=['NoMoreOccurrences',
'ExpirationDateTimeInUtc',
'PersonName',
'Voice',
'BotNames',
'RequiredBots',
'IceBreaker',
'UUID'],
WaitTimeSeconds=wait_time_seconds,
MaxNumberOfMessages=max_number_of_messages)
self.log.debug(len(messages))
if len(messages) > 0:
self.log.debug('Received {}:'.format(len(messages)))
msgs = []
for m in messages:
qm = QueuedMessage(QueuedMessage=m)
if person_name and not qm.person_name == person_name:
self.log.debug('Skipping message for {}, looking for {}'
.format(qm.person_name, person_name))
continue
if qm.person_name not in self.messages:
self.log.debug("First message for " + qm.person_name)
self.messages[qm.person_name] = []
self.messages[qm.person_name].append(qm)
self.sqs_msgs.append(m)
msgs.append(qm)
scheduler = Scheduler()
scheduler.update_queue_status(qm.uuid_key,
qm.person_name,
False)
return msgs