stomp.go 548 B

12345678910111213141516171819202122232425
  1. package stomp
  2. import (
  3. "encoding/json"
  4. "log"
  5. "battlecamp-go-server/flag"
  6. "github.com/go-stomp/stomp"
  7. )
  8. var stompConnection *stomp.Conn
  9. func getStompConnection() *stomp.Conn {
  10. if stompConnection == nil {
  11. stompConnection, _ = stomp.Dial("tcp", *flag.StompUrl)
  12. }
  13. return stompConnection
  14. }
  15. func SendJson(topic string, v interface{}) {
  16. b, _ := json.Marshal(v)
  17. log.Printf("Sending stomp to topic %v\n", topic)
  18. getStompConnection().Send("/topic/go-battlecamp."+topic, "application/json;charset=utf-8", b, stomp.SendOpt.NoContentLength)
  19. }