'Put message onto queue.'

def _put(self, queue, message, **kwargs):

    q_url = self._new_queue(queue)
    kwargs = {u'QueueUrl': q_url, u'MessageBody': AsyncMessage().encode(dumps(message))}
    if queue.endswith(u'.fifo'):
        if (u'MessageGroupId' in message[u'properties']):
            kwargs[u'MessageGroupId'] = message[u'properties'][u'MessageGroupId']
        else:
            kwargs[u'MessageGroupId'] = u'default'
        if (u'MessageDeduplicationId' in message[u'properties']):
            kwargs[u'MessageDeduplicationId'] = message[u'properties'][u'MessageDeduplicationId']
        else:
            kwargs[u'MessageDeduplicationId'] = str(uuid.uuid4())
    self.sqs.send_message(**kwargs)
