Cómo usar un SourceQueue de Akka Streams con PlayFramework

Me gustaría usar un SourceQueue para insertar elementos dinámicamente en una fuente de Akka Stream. El controlador de Play necesita una fuente para poder transmitir un resultado usando elchuncked método.
Como Play usa su propio Akka Stream Sink debajo del capó, no puedo materializar la cola de la fuente usando un Sink porque la fuente se consumiría antes de que elchunked método (excepto si uso el siguiente truco).

Puedo hacer que funcione si pre-materializo la cola de origen usando un editor de secuencias reactivas, pero es una especie de 'truco sucio':

def sourceQueueAction = Action{

    val (queue, pub) = Source.queue[String](10, OverflowStrategy.fail).toMat(Sink.asPublisher(false))(Keep.both).run()

    //stupid example to push elements dynamically
    val tick = Source.tick(0 second, 1 second, "tick")
    tick.runForeach(t => queue.offer(t))

    Ok.chunked(Source.fromPublisher(pub))
  }

¿Hay una manera más simple de usar Akka Streams SourceQueue con PlayFramework?

Gracias

Respuestas a la pregunta(2)

Su respuesta a la pregunta