diff --git a/conf/app.conf b/conf/app.conf index 49c08c9..772c8d4 100644 --- a/conf/app.conf +++ b/conf/app.conf @@ -18,6 +18,7 @@ SessionCookieLifeTime = 3600 JID = test@kingpenguin.tk PWD = test +SERVER = 51.254.205.203 PORT = 5222 TIMER_PING = 60 XMPP_DEBUG = true diff --git a/xmpp/xmpp.go b/xmpp/xmpp.go index 9aafc1d..e2fe88e 100644 --- a/xmpp/xmpp.go +++ b/xmpp/xmpp.go @@ -35,6 +35,7 @@ var ( JidStr = beego.AppConfig.String("JID") passwdStr = beego.AppConfig.String("PWD") + server = beego.AppConfig.String("SERVER") serverPort = beego.AppConfig.String("PORT") jid xmpp.JID @@ -68,10 +69,25 @@ func Run() { // Create stream and configure it as a component connection. log.Info("XMPP Run()") + streamConfig := &xmpp.StreamConfig{LogStanzas: Debug} jid = must(xmpp.ParseJID(JidStr)).(xmpp.JID) - addrs, err := xmpp.HomeServerAddrs(jid) + var addrs []string + var err error = nil + if server != "" { + log.Info("Host in config") + addr := server + if serverPort != "" { + addr += ":" + serverPort + } else { + addr += ":5222" + } + addrs = append(addrs, addr) + } else { + log.Info("SRV lookup") + addrs, err = xmpp.HomeServerAddrs(jid) + } if err == nil && len(addrs) > 0 { - stream = must(xmpp.NewStream(addrs[0], &xmpp.StreamConfig{LogStanzas: Debug})).(*xmpp.Stream) + stream = must(xmpp.NewStream(addrs[0], streamConfig)).(*xmpp.Stream) client = must(xmpp.NewClientXMPP(stream, jid, passwdStr, &xmpp.ClientConfig{InsecureSkipVerify: true})).(*xmpp.XMPP) mainXMPP()