suspend inline fun producerEvent( topicName: String, id: UUID, status: Status, message: Any, bootstrapServers: String, idempotence: Boolean, acks: Acks, retries: Int, compression: Compression, linger: Int, batchSize: BatchSize ) { val producer = producer( bootstrapServers, idempotence, acks, retries, compression, linger, batchSize) val record = ProducerRecord(topicName, valueToTree(id), valueToTree(Event(id, status, message))) producer.dispatch(record) }