diff --git a/main.go b/main.go index 812c53f..3522f5f 100644 --- a/main.go +++ b/main.go @@ -24,6 +24,8 @@ var ( ) func init() { + xmpp.Version = "0.1.0" + err := cfg.Load(configurationFilePath, mapConfig) if err != nil { log.Fatal("Failed to load configuration file.", err) @@ -39,8 +41,6 @@ func init() { steam.Username = mapConfig["steam_login"] steam.Password = mapConfig["steam_password"] steam.AuthCode = mapConfig["steam_auth_code"] - - xmpp.Version = "0.1.0" } func main() { @@ -132,6 +132,10 @@ func gatewaySteamXmppAction() { xmpp.SendPresenceFrom(xmpp.Status_offline, xmpp.Type_unavailable, sid+"@"+xmpp.JidStr) delete(SetSteamId, sid) } + + case steam.ActionFatalError: + time.Sleep(2 * time.Second) + go steam.Run() } } } diff --git a/servers.addr b/servers.addr index 43e3985..793b3a1 100644 --- a/servers.addr +++ b/servers.addr @@ -1 +1 @@ -{"Addresses":[{"IP":"162.254.196.42","Port":27020},{"IP":"162.254.196.42","Port":27017},{"IP":"162.254.196.41","Port":27020},{"IP":"162.254.196.40","Port":27017},{"IP":"162.254.196.43","Port":27018},{"IP":"162.254.196.42","Port":27019},{"IP":"162.254.196.41","Port":27018},{"IP":"162.254.196.40","Port":27021},{"IP":"162.254.196.40","Port":27019},{"IP":"162.254.196.43","Port":27017},{"IP":"162.254.196.42","Port":27021},{"IP":"162.254.196.40","Port":27020},{"IP":"162.254.196.41","Port":27021},{"IP":"146.66.152.11","Port":27020},{"IP":"146.66.152.11","Port":27018},{"IP":"162.254.196.41","Port":27019},{"IP":"162.254.196.43","Port":27020},{"IP":"162.254.197.41","Port":27018},{"IP":"162.254.196.43","Port":27019},{"IP":"162.254.197.42","Port":27019},{"IP":"162.254.197.41","Port":27021},{"IP":"146.66.152.10","Port":27020},{"IP":"162.254.196.41","Port":27017},{"IP":"162.254.196.42","Port":27018},{"IP":"146.66.152.10","Port":27018},{"IP":"162.254.196.40","Port":27018},{"IP":"162.254.197.41","Port":27020},{"IP":"146.66.152.10","Port":27019},{"IP":"162.254.197.42","Port":27018},{"IP":"162.254.196.43","Port":27021},{"IP":"162.254.197.40","Port":27021},{"IP":"162.254.197.40","Port":27020},{"IP":"162.254.197.40","Port":27017},{"IP":"162.254.197.40","Port":27018},{"IP":"162.254.197.40","Port":27019},{"IP":"162.254.197.42","Port":27021},{"IP":"162.254.197.41","Port":27019},{"IP":"146.66.152.10","Port":27017},{"IP":"146.66.152.11","Port":27017},{"IP":"146.66.152.11","Port":27019},{"IP":"162.254.197.42","Port":27017},{"IP":"162.254.197.42","Port":27020},{"IP":"162.254.197.41","Port":27017},{"IP":"185.25.182.10","Port":27019},{"IP":"146.66.155.8","Port":27019},{"IP":"185.25.182.10","Port":27020},{"IP":"146.66.155.8","Port":27020},{"IP":"185.25.182.10","Port":27017},{"IP":"185.25.180.14","Port":27020},{"IP":"146.66.155.8","Port":27018},{"IP":"146.66.155.8","Port":27017},{"IP":"185.25.182.10","Port":27018},{"IP":"185.25.180.15","Port":27020},{"IP":"155.133.242.9","Port":27018},{"IP":"185.25.180.14","Port":27017},{"IP":"155.133.242.9","Port":27019},{"IP":"155.133.242.8","Port":27018},{"IP":"155.133.242.8","Port":27017},{"IP":"155.133.242.8","Port":27020},{"IP":"185.25.180.15","Port":27019},{"IP":"155.133.242.8","Port":27019},{"IP":"185.25.180.14","Port":27018},{"IP":"155.133.242.9","Port":27020},{"IP":"185.25.180.15","Port":27018},{"IP":"185.25.180.15","Port":27017},{"IP":"185.25.180.14","Port":27019},{"IP":"155.133.242.9","Port":27017},{"IP":"208.78.164.14","Port":27018},{"IP":"208.78.164.13","Port":27017},{"IP":"208.78.164.13","Port":27019},{"IP":"208.78.164.11","Port":27018},{"IP":"208.78.164.10","Port":27018},{"IP":"208.78.164.14","Port":27019},{"IP":"208.78.164.13","Port":27018},{"IP":"208.78.164.10","Port":27019},{"IP":"208.78.164.9","Port":27018},{"IP":"208.78.164.12","Port":27017},{"IP":"208.78.164.12","Port":27018},{"IP":"208.78.164.9","Port":27017},{"IP":"208.78.164.11","Port":27017}]} \ No newline at end of file +{"Addresses":[{"IP":"162.254.196.40","Port":27020},{"IP":"162.254.196.43","Port":27021},{"IP":"162.254.196.40","Port":27019},{"IP":"162.254.196.40","Port":27017},{"IP":"146.66.152.10","Port":27017},{"IP":"162.254.196.40","Port":27021},{"IP":"162.254.196.40","Port":27018},{"IP":"162.254.196.41","Port":27018},{"IP":"162.254.196.43","Port":27018},{"IP":"162.254.196.41","Port":27020},{"IP":"162.254.196.41","Port":27021},{"IP":"162.254.196.42","Port":27017},{"IP":"162.254.196.41","Port":27017},{"IP":"162.254.196.42","Port":27021},{"IP":"162.254.197.42","Port":27017},{"IP":"146.66.152.11","Port":27020},{"IP":"162.254.196.43","Port":27019},{"IP":"162.254.196.42","Port":27018},{"IP":"162.254.196.42","Port":27019},{"IP":"162.254.196.41","Port":27019},{"IP":"162.254.197.41","Port":27021},{"IP":"162.254.197.41","Port":27020},{"IP":"162.254.197.40","Port":27019},{"IP":"162.254.197.40","Port":27021},{"IP":"162.254.197.42","Port":27018},{"IP":"162.254.197.41","Port":27019},{"IP":"146.66.152.11","Port":27018},{"IP":"146.66.152.10","Port":27018},{"IP":"162.254.196.43","Port":27017},{"IP":"162.254.196.43","Port":27020},{"IP":"146.66.152.10","Port":27020},{"IP":"162.254.197.42","Port":27021},{"IP":"162.254.197.42","Port":27019},{"IP":"162.254.197.41","Port":27017},{"IP":"162.254.197.42","Port":27020},{"IP":"162.254.196.42","Port":27020},{"IP":"162.254.197.40","Port":27017},{"IP":"162.254.197.40","Port":27018},{"IP":"146.66.152.10","Port":27019},{"IP":"146.66.152.11","Port":27017},{"IP":"146.66.152.11","Port":27019},{"IP":"162.254.197.41","Port":27018},{"IP":"162.254.197.40","Port":27020},{"IP":"185.25.180.14","Port":27019},{"IP":"146.66.155.8","Port":27018},{"IP":"185.25.180.15","Port":27020},{"IP":"185.25.180.15","Port":27018},{"IP":"155.133.242.8","Port":27018},{"IP":"155.133.242.8","Port":27019},{"IP":"155.133.242.9","Port":27020},{"IP":"185.25.182.10","Port":27018},{"IP":"185.25.182.10","Port":27017},{"IP":"185.25.180.14","Port":27018},{"IP":"185.25.180.15","Port":27017},{"IP":"155.133.242.8","Port":27017},{"IP":"185.25.180.14","Port":27017},{"IP":"146.66.155.8","Port":27017},{"IP":"185.25.182.10","Port":27019},{"IP":"185.25.182.10","Port":27020},{"IP":"155.133.242.9","Port":27019},{"IP":"185.25.180.15","Port":27019},{"IP":"185.25.180.14","Port":27020},{"IP":"146.66.155.8","Port":27019},{"IP":"146.66.155.8","Port":27020},{"IP":"155.133.242.9","Port":27017},{"IP":"155.133.242.8","Port":27020},{"IP":"155.133.242.9","Port":27018},{"IP":"208.78.164.9","Port":27019},{"IP":"208.78.164.11","Port":27018},{"IP":"208.78.164.9","Port":27017},{"IP":"208.78.164.12","Port":27019},{"IP":"208.78.164.13","Port":27017},{"IP":"208.78.164.14","Port":27017},{"IP":"208.78.164.12","Port":27017},{"IP":"208.78.164.12","Port":27018},{"IP":"208.78.164.9","Port":27018},{"IP":"208.78.164.14","Port":27019},{"IP":"208.78.164.13","Port":27018},{"IP":"208.78.164.10","Port":27019},{"IP":"208.78.164.10","Port":27018}]} \ No newline at end of file diff --git a/steam/steam.go b/steam/steam.go index d388fce..4d43fe9 100644 --- a/steam/steam.go +++ b/steam/steam.go @@ -27,6 +27,7 @@ const ( ActionConnected = "steam_connected" ActionDisconnected = "steam_disconnected" + ActionFatalError = "steam_fatal_error" LogInfo = "\t[STEAM INFO]\t" LogError = "\t[STEAM ERROR]\t" @@ -71,12 +72,7 @@ func mainSteam() { case steam.FatalErrorEvent: log.Printf("%sFatalError: ", LogError, e) - ChanAction <- ActionDisconnected - // Re run Steam - go func() { - time.Sleep(2 * time.Second) - Run() - }() + ChanAction <- ActionFatalError return case error: @@ -112,7 +108,6 @@ func setLoginInfos() { myLoginInfo.Username = Username myLoginInfo.Password = Password - // TODO think again if err == nil { myLoginInfo.SentryFileHash = sentryHash log.Printf("%sAuthentification by SentryFileHash", LogDebug) @@ -129,6 +124,11 @@ func IsConnected() bool { } func Connect() { + if IsConnected() { + log.Printf("%sTry to connect, but already connected", LogDebug) + return + } + b, err := ioutil.ReadFile(serverAddrs) if err == nil { var toList steam.ClientCMListEvent @@ -147,8 +147,6 @@ func Connect() { func Disconnect() { log.Printf("%sSteam disconnect", LogInfo) - // TODO XMPP notification ofline from all steam friend - go client.Disconnect() } @@ -164,52 +162,3 @@ func SendMessage(steamId, message string) { func SendPresence(status steamlang.EPersonaState) { client.Social.SetPersonaState(status) } - -//------------------------------------------------------------------------------ -// First authentification error -//------------------------------------------------------------------------------ -// 2015/10/17 15:15:29 Steam connected -// SteamID: STEAM_0:0:0 -// 2015/10/17 15:15:30 Steam connected -// FatalErrorEvent -// Login error: EResult_AccountLogonDenied -// &{} -//------------------------------------------------------------------------------ -// Authentificated -//------------------------------------------------------------------------------ -// &{1593367805 SsEgwfLu7Spol4jEzA0} -// &{} -// &{EClientPersonaStateFlag_GameDataBlob | EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_LastSeen | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_QueryPort | EClientPersonaStateFlag_SourceID | EClientPersonaStateFlag_Status STEAM_0:0:6208314 EPersonaState_Online 0 0 0 0 0 65535 STEAM_0:0:0 [] Chteufleur eb267fc00a974dbd2ae7e3c3de06130729cdfcbd 1445087561 1445088090 0 1 1 false 0} -// &{EClientPersonaStateFlag_GameDataBlob | EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_LastSeen | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_QueryPort | EClientPersonaStateFlag_SourceID | EClientPersonaStateFlag_Status STEAM_0:1:23476646 EPersonaState_Online 0 274190 274190 Broforce 0 0 0 STEAM_0:0:0 [] moumoutte 1cebd6410e6ceb02af60d42a34ca355c5b3b41e6 1445034635 1445034642 0 1 1 false 0} -// &{EClientPersonaStateFlag_GameDataBlob | EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_LastSeen | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_QueryPort | EClientPersonaStateFlag_SourceID | EClientPersonaStateFlag_Status STEAM_0:1:22486691 EPersonaState_Online 0 0 0 0 0 65535 STEAM_0:0:0 [] Pimouss 9ed44c8628c419cb9cb184014889063de4146e38 1445078411 1445086045 0 1 1 false 0} -// &{EClientPersonaStateFlag_GameDataBlob | EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_LastSeen | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_QueryPort | EClientPersonaStateFlag_SourceID | EClientPersonaStateFlag_Status STEAM_0:1:20592317 EPersonaState_Online 0 0 0 0 0 65535 STEAM_0:0:0 [] Francis LALAN 9fe3eb4c1b2abf6768df2d41c6343dc69ec27e83 1445042279 1445072749 0 1 1 false 0} -// &{103582791434277245 0 EAccountFlags_PersonaNameSet | EAccountFlags_Unbannable Steam Trading Cards Group 2ce81e0b8f1c748f86d1ca4230a7f45dd0b906b1 1448289 367203 23 124404 [] []} -// &{EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:6208314 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Chteufleur eb267fc00a974dbd2ae7e3c3de06130729cdfcbd 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:6208314 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Chteufleur eb267fc00a974dbd2ae7e3c3de06130729cdfcbd 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:52837827 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] beutard 0000000000000000000000000000000000000000 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID 103582791434277245 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Steam Trading Cards Group 2ce81e0b8f1c748f86d1ca4230a7f45dd0b906b1 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:20592317 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Francis LALAN 9fe3eb4c1b2abf6768df2d41c6343dc69ec27e83 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:23476646 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] moumoutte 1cebd6410e6ceb02af60d42a34ca355c5b3b41e6 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:94714518 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] mimiptitsourie fa0f46837771ec60665889c285f9496d353a50e6 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:18218832 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Milamber 3cfcc21ea34862a3ee9634d36c91391cf73b4af9 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:61725424 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] azer9911 c160d49f7a842f408051bbada040b7d154bbcaf5 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:17516002 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Earenfly 52d70ad89eab9bf4f64f25509ac80a8081b0c0d6 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:20054215 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Wurrzounet 257038af8628ded724c8c8af072c678aadf3c72c 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:45567500 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] johann.gautier.fr bcc9b911486843390af223b8e7cb6d931e9b7e75 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:22486691 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Pimouss 9ed44c8628c419cb9cb184014889063de4146e38 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:45984569 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Sl@ny aa4bf32f5fc568c7949bf88c3c569c452edfcdf6 0 0 0 0 0 false 0} -// &{EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:1:19128186 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] pouzetalexis 0000000000000000000000000000000000000000 0 0 0 0 0 false 0} -// &{Chteufleur SE [] [] 38 false EAccountFlags_EmailValidated | EAccountFlags_HWIDSet | EAccountFlags_LogonExtraSecurity | EAccountFlags_PasswordSet | EAccountFlags_PersonaNameSet | EAccountFlags_Steam2MigrationComplete 0 } -// &{EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_SourceID STEAM_0:0:6208314 EPersonaState_Offline 0 0 0 0 0 0 STEAM_0:0:0 [] Chteufleur eb267fc00a974dbd2ae7e3c3de06130729cdfcbd 0 0 0 0 0 false 0} -// -// -// -// -// -// &{STEAM_0:0:0 STEAM_0:1:22486691 EChatEntryType_Typing} -// &{STEAM_0:0:0 STEAM_0:1:22486691 bouh EChatEntryType_ChatMsg} -// &{EClientPersonaStateFlag_GameDataBlob | EClientPersonaStateFlag_GameExtraInfo | EClientPersonaStateFlag_LastSeen | EClientPersonaStateFlag_PlayerName | EClientPersonaStateFlag_Presence | EClientPersonaStateFlag_QueryPort | EClientPersonaStateFlag_SourceID | EClientPersonaStateFlag_Status STEAM_0:1:23476646 EPersonaState_Away 0 274190 274190 Broforce 0 0 0 STEAM_0:0:0 [] moumoutte 1cebd6410e6ceb02af60d42a34ca355c5b3b41e6 1445034635 1445034642 0 1 1 false 0} -//------------------------------------------------------------------------------ -// Servers list -//------------------------------------------------------------------------------ -// 2015/10/18 11:43:49 [STEAM DEBUG] %!(EXTRA *steam.ClientCMListEvent=&{[185.25.180.14:27019 155.133.242.8:27019 185.25.180.15:27019 155.133.242.9:27017 185.25.180.15:27017 185.25.180.14:27018 155.133.242.9:27020 185.25.180.14:27017 185.25.180.15:27018 155.133.242.9:27019 155.133.242.8:27018 162.254.197.41:27020 162.254.197.41:27021 162.254.197.41:27017 162.254.197.42:27018 162.254.197.40:27019 185.25.180.14:27020 185.25.180.15:27020 162.254.197.42:27020 162.254.197.41:27018 155.133.242.9:27018 162.254.197.42:27017 162.254.197.42:27021 155.133.242.8:27020 162.254.197.42:27019 162.254.197.40:27017 162.254.197.40:27021 162.254.197.40:27020 155.133.242.8:27017 162.254.197.41:27019 162.254.197.40:27018 162.254.196.42:27019 162.254.196.42:27021 162.254.196.40:27017 162.254.196.42:27017 162.254.196.43:27021 162.254.196.41:27019 162.254.196.43:27017 162.254.196.41:27020 162.254.196.41:27021 162.254.196.43:27020 162.254.196.42:27018 162.254.196.41:27018 162.254.196.43:27019 162.254.196.42:27020 162.254.196.40:27018 162.254.196.40:27021 162.254.196.40:27020 162.254.196.43:27018 162.254.196.40:27019 162.254.196.41:27017 146.66.152.10:27019 146.66.152.11:27018 146.66.152.10:27018 146.66.152.11:27019 146.66.152.11:27017 146.66.152.10:27017 146.66.152.10:27020 146.66.152.11:27020 185.25.182.10:27019 185.25.182.10:27020 146.66.155.8:27019 185.25.182.10:27017 185.25.182.10:27018 146.66.155.8:27017 146.66.155.8:27020 146.66.155.8:27018 208.78.164.13:27018 208.78.164.10:27018 208.78.164.12:27018 208.78.164.10:27019 208.78.164.12:27019 208.78.164.9:27019 208.78.164.11:27019 208.78.164.14:27018 208.78.164.13:27019 208.78.164.11:27018 208.78.164.9:27018 208.78.164.13:27017 208.78.164.10:27017]}) diff --git a/xmpp/xmpp.go b/xmpp/xmpp.go index 3a0fe74..88cfb94 100644 --- a/xmpp/xmpp.go +++ b/xmpp/xmpp.go @@ -54,7 +54,7 @@ func Run() { stream = must(xmpp.NewStream(Addr, &xmpp.StreamConfig{LogStanzas: true})).(*xmpp.Stream) comp = must(xmpp.NewComponentXMPP(stream, jid, Secret)).(*xmpp.XMPP) - SendPresence(Status_online, Type_available) + // SendPresence(Status_online, Type_available) mainXMPP() } @@ -63,12 +63,13 @@ func mainXMPP() { for x := range comp.In { switch v := x.(type) { case *xmpp.Presence: - if strings.SplitN(v.From, "/", 2)[0] == PreferedJID && v.To == JidStr { + if strings.SplitN(v.From, "/", 2)[0] == PreferedJID && v.To == JidStr && v.Type != "probe" { if v.Type == Type_unavailable { + log.Printf("%sPresence reçut unavailable", LogDebug) Disconnect() ChanAction <- ActionDeconnexion } else { - // SendPresence(v.Show, v.Type) + log.Printf("%sPresence reçut", LogDebug) CurrentStatus = v.Show ChanAction <- ActionConnexion }