             [cheshire.core                  :refer [generate-string]]
             [ring.middleware.keyword-params :refer [wrap-keyword-params]]
             [ring.middleware.params         :refer [wrap-params]]
-            [clojure.core.async             :refer [put! close! chan <!!]]
+            [clojure.core.async             :refer [put! close! chan <!! alts!! timeout pub sub]]
             [ring.middleware.json           :as json]
             [compojure.route                :as route]
             [org.spootnik.fleet.api         :as api]

            (engine/request engine
                            (api/prepare scenario profile matchargs args)
                            ch)
            {:status 200
             :headers headers
             :body resp}))

                        :while msg
                        :when msg]
                  (history/update script_name msg)
                  (put! resp (format "data: %s\n\n" (generate-string msg)))
                  (put! publisher (merge {:topic :events} msg)))
                (catch Exception e
                  (error e "cannot handle incoming message"))
                (finally
