Como usar um SourceQueue do Akka Streams com o PlayFramework

Eu gostaria de usar um SourceQueue para enviar elementos dinamicamente para uma fonte do Akka Stream. O controlador Play precisa de uma fonte para transmitir um resultado usando ochuncked método.
Como o Play usa seu próprio Akka Stream Sink sob o capô, não consigo materializar a fila de origem usando um Sink, porque a fonte seria consumida antes de ser usada pelochunked método (exceto se eu usar o seguinte hack).

Sou capaz de fazê-lo funcionar se pré-materializar a fila de origem usando um editor de fluxos reativos, mas é uma espécie de 'invasão suja':

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))
  }

Existe uma maneira mais simples de usar um SourceQueue do Akka Streams com o PlayFramework?

obrigado

questionAnswers(2)

yourAnswerToTheQuestion