1
0
Fork 0

Compare commits

...

5 Commits

Author SHA1 Message Date
louiz’ 1013266a09 Do not send an empty line at the start of each steam message
We shouldn’t try to include the “Subject” part of the message: it’s always
empty, because this is only sent by MUC servers to signal the room’s
topic. This is not used in one-to-one conversations.

fix #20
2016-08-12 11:33:17 +02:00
Chteufleur 699c7cb5c5 Send Ad-Hoc command depending if user is already registered. 2016-08-11 19:56:03 +02:00
Chteufleur 149c5f9117 Fix nil pointer on database.GetLine() 2016-08-11 19:49:21 +02:00
chteufleur a6281fe093 Merge branch 'master' of louiz/go-xmpp4steam into master 2016-08-11 12:04:59 +02:00
chteufleur 30ab74c5a0 Merge branch 'master' of louiz/go-xmpp4steam into master 2016-08-11 11:50:39 +02:00
3 changed files with 32 additions and 21 deletions

View File

@ -132,7 +132,7 @@ func RemoveLine(jid string) bool {
func GetLine(jid string) *DatabaseLine {
ret := getLine(jid)
if ret.SteamLogin == "" {
if ret == nil || ret.SteamLogin == "" {
log.Printf("%sLine empty", LogDebug)
return nil
}

View File

@ -124,7 +124,7 @@ func (g *GatewayInfo) ReceivedXMPP_Presence(presence *xmpp.Presence) {
func (g *GatewayInfo) ReceivedXMPP_Message(message *xmpp.Message) {
steamID := strings.SplitN(message.To, "@", 2)[0]
g.SendSteamMessage(steamID, message.Subject+"\n"+message.Body)
g.SendSteamMessage(steamID, message.Body)
}
func (g *GatewayInfo) XMPP_Disconnect() {

View File

@ -25,17 +25,24 @@ func execDiscoCommand(iq *xmpp.Iq) {
reply := iq.Response(xmpp.IQTypeResult)
discoItem := &xmpp.DiscoItems{Node: xmpp.NodeAdHocCommand}
jidBare := strings.SplitN(iq.From, "/", 2)[0]
dbUser := database.GetLine(jidBare)
// Add available commands
discoI := &xmpp.DiscoItem{JID: jid.Domain, Node: CommandAuthcode, Name: "Add Steam Auth Code"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandGetIdentifiants, Name: "Steam registration"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandDisconnectSteam, Name: "Force Steam deconnexion"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandRemoveRegistration, Name: "Remove registration"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandToggleDebugMode, Name: "Toggle debug mode"}
discoItem.Item = append(discoItem.Item, *discoI)
if dbUser == nil {
discoI := &xmpp.DiscoItem{JID: jid.Domain, Node: CommandGetIdentifiants, Name: "Steam registration"}
discoItem.Item = append(discoItem.Item, *discoI)
} else {
// Add only if user is registered
discoI := &xmpp.DiscoItem{JID: jid.Domain, Node: CommandAuthcode, Name: "Add Steam Auth Code"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandDisconnectSteam, Name: "Force Steam deconnexion"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandRemoveRegistration, Name: "Remove registration"}
discoItem.Item = append(discoItem.Item, *discoI)
discoI = &xmpp.DiscoItem{JID: jid.Domain, Node: CommandToggleDebugMode, Name: "Toggle debug mode"}
discoItem.Item = append(discoItem.Item, *discoI)
}
reply.PayloadEncode(discoItem)
comp.Out <- reply
@ -108,18 +115,22 @@ func execCommandAdHoc(iq *xmpp.Iq) {
jidBare := strings.SplitN(iq.From, "/", 2)[0]
dbUser := database.GetLine(jidBare)
dbUser.Debug = !dbUser.Debug
g := MapGatewayInfo[jidBare]
ok := dbUser.UpdateLine()
if ok && g != nil {
g.DebugMessage = dbUser.Debug
if dbUser.Debug {
note.Value = "Debug activated."
if dbUser != nil {
dbUser.Debug = !dbUser.Debug
g := MapGatewayInfo[jidBare]
ok := dbUser.UpdateLine()
if ok && g != nil {
g.DebugMessage = dbUser.Debug
if dbUser.Debug {
note.Value = "Debug activated."
} else {
note.Value = "Debug desactivated."
}
} else {
note.Value = "Debug desactivated."
note.Value = "Failed to update your profile. :("
}
} else {
note.Value = "Failed to update your profile. :("
note.Value = "Your not registered."
}
cmd.Note = *note