Browse Source

Make update status a little more idiomatic.

This also reduces the line count a smidge.
Chris Rhodes 9 years ago
parent
commit
974d5862a4
1 changed files with 6 additions and 13 deletions
  1. 6 13
      wsapi.go

+ 6 - 13
wsapi.go

@@ -60,12 +60,12 @@ func (s *Session) Handshake() (err error) {
 }
 
 type updateStatusGame struct {
-	Name string `json:"name"`
+	Name *string `json:"name"`
 }
 
 type updateStatusData struct {
-	IdleSince json.Token  `json:"idle_since"`
-	Game      interface{} `json:"game"`
+	IdleSince *int             `json:"idle_since"`
+	Game      updateStatusGame `json:"game"`
 }
 
 type updateStatusOp struct {
@@ -80,17 +80,10 @@ func (s *Session) UpdateStatus(idle int, game string) (err error) {
 
 	var usd updateStatusData
 	if idle > 0 {
-		usd.IdleSince = idle
-	} else {
-		usd.IdleSince = nil
+		usd.IdleSince = &idle
 	}
-
-	var usg updateStatusGame
-	if game == "" {
-		usd.Game = nil
-	} else {
-		usg.Name = game
-		usd.Game = usg
+	if game != "" {
+		usd.Game.Name = &game
 	}
 
 	data := updateStatusOp{3, usd}