import pika import json import time import random def generate_event(): events = [ {"event": "order_placed", "order_id": random.randint(100, 999), "product_name": random.choice(["iPhone 14 Pro", "Samsung Galaxy S23 Ultra", "MacBook Pro"]), "customer_id": random.randint(1000, 9999)}, {"event": "product_viewed", "product_id": random.randint(1000, 9999), "product_name": random.choice(["iPhone 14 Pro", "Samsung Galaxy S23 Ultra", "MacBook Pro"])}, {"event": "user_registered", "user_id": random.randint(10000, 99999), "username": f"user_{random.randint(1, 100)}"} ] return json.dumps(random.choice(events)) connection = pika.BlockingConnection(pika.ConnectionParameters(host='localhost')) channel = connection.channel() channel.exchange_declare(exchange='online_store_events', exchange_type='fanout') while True: message = generate_event() channel.basic_publish(exchange='online_store_events', routing_key='', body=message) print(f"Sent message: {message}") time.sleep(1) connection.close()