Skip to content

Commit

Permalink
Handle steam api empty responses. Fixes #211
Browse files Browse the repository at this point in the history
  • Loading branch information
bugdone committed Aug 5, 2018
1 parent aaeca8f commit 6926e66
Showing 1 changed file with 13 additions and 8 deletions.
21 changes: 13 additions & 8 deletions src/hsbox/steamapi.clj
Original file line number Diff line number Diff line change
Expand Up @@ -24,14 +24,19 @@
(log-fail summaries)
; Sleep 2s after two steam api calls
(Thread/sleep 2000)
(->>
(concat (-> bans :body :players) (-> summaries :body :response :players))
(reduce #(let [steamid (Long/parseLong (get %2 :steamid (get %2 :SteamId)))]
(assoc % steamid (select-keys
(merge (get % steamid) %2)
[:avatar :avatarfull :personaname :NumberOfVACBans :DaysSinceLastBan :NumberOfGameBans])))
{})
(db/update-steamids))))))
(let [info (concat (-> bans :body :players) (-> summaries :body :response :players))]
; bans empty response: {:players []}
; summaries empty response: {:players [{}]}
(if (or (empty? info) (and (= (count info) 1) (empty? (first info))))
{}
(->>
(concat (-> bans :body :players) (-> summaries :body :response :players))
(reduce #(let [steamid (Long/parseLong (get %2 :steamid (get %2 :SteamId)))]
(assoc % steamid (select-keys
(merge (get % steamid) %2)
[:avatar :avatarfull :personaname :NumberOfVACBans :DaysSinceLastBan :NumberOfGameBans])))
{})
(db/update-steamids))))))))

(defn get-steamids-info-cached
"Returns a map with the cached steamid info from the database (any steamids
Expand Down

0 comments on commit 6926e66

Please sign in to comment.