#Producer
import pika
import sys

connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))
channel = connection.channel()
message = ' '.join(sys.argv[1:]) or "Hello World" 
channel.basic_publish(exchange='',
                      routing_key='hello',
                      body=message)

#task queue will not be lost when rabbitMQ Server is offline
channel.basic_publish(exchange='',
                      routing_key="task_queue",
                      body=message,
                      properties=pika.BasicProperties(delivery_mode = 2, # make message persistent
                      ))

print(" [x] Sent %r" % message)

connection.close()
