![JAR search and dependency download from the Maven repository](/logo.png)
com.ibasco.agql.examples.SteamWebApiQueryEx Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of agql-lib-examples Show documentation
Show all versions of agql-lib-examples Show documentation
Contains example codes demonstrating the basic usage of the client interfaces
The newest version!
/*
* MIT License
*
* Copyright (c) 2016 Asynchronous Game Query Library
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
package com.ibasco.agql.examples;
import com.ibasco.agql.examples.base.BaseWebApiAuthExample;
import com.ibasco.agql.protocols.valve.steam.webapi.SteamWebApiClient;
import com.ibasco.agql.protocols.valve.steam.webapi.enums.VanityUrlType;
import com.ibasco.agql.protocols.valve.steam.webapi.interfaces.*;
import com.ibasco.agql.protocols.valve.steam.webapi.pojos.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.io.IOException;
import java.net.InetAddress;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.function.Consumer;
@SuppressWarnings("all")
public class SteamWebApiQueryEx extends BaseWebApiAuthExample {
private static final Logger log = LoggerFactory.getLogger(SteamWebApiQueryEx.class);
private SteamWebApiClient apiClient;
public static void main(String[] args) throws Exception {
SteamWebApiQueryEx app = new SteamWebApiQueryEx();
app.run();
}
@Override
public void run() throws Exception {
String authToken = getToken("steam");
apiClient = new SteamWebApiClient(authToken);
SteamApps steamApps = new SteamApps(apiClient);
SteamNews steamNews = new SteamNews(apiClient);
SteamUserStats steamUserStats = new SteamUserStats(apiClient);
SteamPlayerService playerService = new SteamPlayerService(apiClient);
SteamUser steamUser = new SteamUser(apiClient);
SteamEconomy steamEconomy = new SteamEconomy(apiClient);
SteamStorefront storeFront = new SteamStorefront(apiClient);
SteamEconItems steamEconItems = new SteamEconItems(apiClient);
steamApps.getAppList().exceptionally(throwable -> {
log.error("Error Occured", throwable);
return new ArrayList<>();
}).thenAccept(SteamWebApiQueryEx::displayResult).join();
steamApps.getServersAtAddress(InetAddress.getByName("103.28.55.237"))
.exceptionally(throwable -> {
log.error("Error occured", throwable);
return new ArrayList<>();
})
.thenAccept(steamServers -> {
steamServers.parallelStream().forEachOrdered(steamServer -> log.info("Server: {}", steamServer.getAddr()));
}).join();
steamApps.getServerUpdateStatus(2146, 550).thenAccept(new Consumer() {
@Override
public void accept(ServerUpdateStatus serverUpdateStatus) {
log.info("Success: {}, Message: {}, Required Version: {}", serverUpdateStatus.isSuccess(), serverUpdateStatus.getMessage(), serverUpdateStatus.getRequiredVersion());
}
}).join();
//Steam News
steamNews.getNewsForApp(550).thenAccept(new Consumer>() {
@Override
public void accept(List steamNewsItems) {
steamNewsItems.forEach(new Consumer() {
@Override
public void accept(SteamNewsItem steamNewsItem) {
log.info("News Item: {}", steamNewsItem.getTitle());
}
});
}
}).join();
//Steam User Stats
steamUserStats.getGlobalAchievementPercentagesForApp(550).thenAccept(new Consumer>() {
@Override
public void accept(List steamGameAchievements) {
steamGameAchievements.forEach(new Consumer() {
@Override
public void accept(SteamGameAchievement steamGameAchievement) {
log.info("Achievement: {}, {}", steamGameAchievement.getName(), steamGameAchievement.getPercentage());
}
});
}
}).join();
steamUserStats.getSchemaForGame(550).thenAccept(steamGameStatsSchemaInfo -> {
log.info("Achievement Schemas : {}", steamGameStatsSchemaInfo.getAchievementSchemaList().size());
log.info("Stats Schemas : {}", steamGameStatsSchemaInfo.getStatsSchemaList().size());
steamGameStatsSchemaInfo.getAchievementSchemaList().forEach(new Consumer() {
@Override
public void accept(SteamGameAchievementSchema steamGameAchievementSchema) {
log.info("ach - {}", steamGameAchievementSchema.getName());
}
});
steamGameStatsSchemaInfo.getStatsSchemaList().forEach(new Consumer() {
@Override
public void accept(SteamGameStatsSchema steamGameStatsSchema) {
log.info("stats - {}", steamGameStatsSchema.getName());
}
});
}).join();
steamUserStats.getNumberOfCurrentPlayers(550).thenAccept(new Consumer() {
@Override
public void accept(Integer integer) {
log.info("Total Players : {}", integer);
}
}).join();
steamUserStats.getPlayerAchievements(76561198010872093L, 550).thenAccept(new Consumer>() {
@Override
public void accept(List steamPlayerAchievements) {
log.info("Player Achievements: {}", steamPlayerAchievements.size());
steamPlayerAchievements.forEach(new Consumer() {
@Override
public void accept(SteamPlayerAchievement steamPlayerAchievement) {
log.info("- {} = {}", steamPlayerAchievement.getName(), steamPlayerAchievement.getAchieved());
}
});
}
}).join();
steamUserStats.getUserStatsForGame(76561198010872093L, 550).thenAccept(new Consumer() {
@Override
public void accept(SteamPlayerStats playerStats) {
log.info("Player Stats:");
log.info("- Achievements: {}", playerStats.getAchievements().size());
log.info("- Stats: {}", playerStats.getStats().size());
}
}).join();
//Player Service
playerService.getRecentlyPlayedGames(76561198010872093L, 500).thenAccept(new Consumer>() {
@Override
public void accept(List steamPlayerRecentPlayeds) {
steamPlayerRecentPlayeds.forEach(new Consumer() {
@Override
public void accept(SteamPlayerRecentPlayed steamPlayerRecentPlayed) {
log.info("Recently Played: {} = {}", steamPlayerRecentPlayed.getName(), steamPlayerRecentPlayed.getTotalPlaytime());
}
});
}
}).join();
playerService.getBadges(76561198010872093L).thenAccept(new Consumer() {
@Override
public void accept(SteamPlayerBadgeInfo steamPlayerBadgeInfo) {
log.info("Total Player Badges: {}", steamPlayerBadgeInfo.getPlayerBadges().size());
steamPlayerBadgeInfo.getPlayerBadges().forEach(new Consumer() {
@Override
public void accept(SteamPlayerBadge steamPlayerBadge) {
log.info("- {}", steamPlayerBadge.getBadgeId());
}
});
}
}).join();
playerService.getCommunityBadgeProgress(76561198010872093L, 1).thenAccept(new Consumer>() {
@Override
public void accept(List steamQuestStatuses) {
log.info("Total Steam Quests: {}", steamQuestStatuses.size());
steamQuestStatuses.forEach(new Consumer() {
@Override
public void accept(SteamQuestStatus steamQuestStatus) {
log.info("Quest = {}, Status = {}", steamQuestStatus.getQuestId(), steamQuestStatus.isCompleted());
}
});
}
}).join();
playerService.getSteamLevel(76561198010872093L).thenAccept(new Consumer() {
@Override
public void accept(Integer integer) {
log.info("Steam Level : {}", integer);
}
}).join();
playerService.getSteamGameLenderId(76561198010872093L, 550).thenAccept(new Consumer() {
@Override
public void accept(String s) {
log.info("Lender Id: {}", s);
}
}).join();
//Steam User
steamUser.getFriendList(76561198010872093L, "friend").thenAccept(new Consumer>() {
@Override
public void accept(List steamFriends) {
steamFriends.forEach(new Consumer() {
@Override
public void accept(SteamFriend steamFriend) {
log.info("Friend: {}", steamFriend.getSteamId());
}
});
}
}).join();
steamUser.getPlayerBans(76561198010872093L).thenAccept(new Consumer>() {
@Override
public void accept(List steamBanStatuses) {
steamBanStatuses.forEach(new Consumer() {
@Override
public void accept(SteamBanStatus steamBanStatus) {
log.info("Ban status for {} = {}, Economy Ban: {}", steamBanStatus.getSteamIdAsLong(), steamBanStatus.isVacBanned(), steamBanStatus.getEconomyBan());
}
});
}
}).join();
steamUser.getPlayerProfiles(76561198010872093L).thenAccept(new Consumer>() {
@Override
public void accept(List steamPlayerProfiles) {
steamPlayerProfiles.forEach(p -> log.info("{}", p));
}
}).join();
steamUser.getUserGroupList(76561198010872093L).thenAccept(steamGroupIds -> {
steamGroupIds.forEach(new Consumer() {
@Override
public void accept(SteamGroupId steamGroupId) {
log.info("Steam Group Id: {}", steamGroupId.getGroupId());
}
});
}).join();
steamUser.getSteamIdFromVanityUrl("zenmast3r", VanityUrlType.DEFAULT).thenAccept(new Consumer() {
@Override
public void accept(Long aLong) {
log.info("Got Steam Id From Vanity url: {}", aLong);
}
}).join();
//Steam Economy
steamEconomy.getAssetPrices(730).thenAccept(new Consumer>() {
@Override
public void accept(List steamAssetPriceInfos) {
log.info("Retrieved Steam Asset Price Info for CSGO");
steamAssetPriceInfos.forEach(new Consumer() {
@Override
public void accept(SteamAssetPriceInfo steamAssetPriceInfo) {
log.info(" {}", steamAssetPriceInfo);
}
});
}
}).join();
steamEconomy.getAssetClassInfo(730, "en", 186150629L, 506856209L, 506856210L, 903185406L,
613589849L, 613589850L, 613589851L, 613589852L, 613589853L, 613589854L, 613589855L).thenAccept(new Consumer
© 2015 - 2025 Weber Informatics LLC | Privacy Policy