36 lines
1.1 KiB
Clojure
36 lines
1.1 KiB
Clojure
(ns sliva.socket
|
|
(:require [chord.client :refer [ws-ch]]
|
|
[cljs.core.async :refer [<! >! put! close!]]
|
|
[sliva.data :refer [vtic]])
|
|
(:require-macros [cljs.core.async.macros :refer [go go-loop]]))
|
|
|
|
;; Zacetek ;;
|
|
;;(aset js/document "onreadystatechange"
|
|
;; (fn []
|
|
;; (if (= (.-readyState js/document) "complete")
|
|
;; (do
|
|
;; (start-render)
|
|
;; (render)
|
|
;; (websocket-init)))))
|
|
|
|
(defn websocket-init []
|
|
(console.log "init webscoket")
|
|
(go (let [{:keys [ws-channel error]} (<! (ws-ch "ws://localhost:3449/ws"))]
|
|
(if-not error
|
|
(do
|
|
(reset! vtic ws-channel)
|
|
(>! ws-channel "Hello server")
|
|
|
|
;; (go-loop []
|
|
;; (let [{:keys [message]} (<! ws-channel)]
|
|
;; (console.log "got msg" message)
|
|
;; (socket-handler message)
|
|
;; (recur))))
|
|
)
|
|
(js/console.log "Fejl websocket: " (pr-str error))))))
|
|
|
|
(defn click-test []
|
|
(.addEventListener js/window "click" (fn []
|
|
(go []
|
|
(>! @vtic "ping")))))
|