2020-11-02 14:46:07 +00:00
|
|
|
/*
|
|
|
|
to use this example, create an .env file
|
|
|
|
in the project root with the following values:
|
|
|
|
|
|
|
|
F95_USERNAME = YOUR_USERNAME
|
|
|
|
F95_PASSWORD = YOUR_PASSWORD
|
|
|
|
*/
|
|
|
|
|
2020-10-31 15:00:26 +00:00
|
|
|
"use strict";
|
2020-09-29 15:11:43 +00:00
|
|
|
|
2020-11-01 08:54:59 +00:00
|
|
|
// Public modules from npm
|
2021-02-15 21:26:18 +00:00
|
|
|
import dotenv from "dotenv";
|
2020-11-01 08:54:59 +00:00
|
|
|
|
2020-10-31 15:00:26 +00:00
|
|
|
// Modules from file
|
2021-02-15 21:26:18 +00:00
|
|
|
import { login, getUserData, getLatestUpdates, getGameData} from "./index";
|
2020-11-01 08:54:59 +00:00
|
|
|
|
|
|
|
// Configure the .env reader
|
|
|
|
dotenv.config();
|
2020-09-29 15:11:43 +00:00
|
|
|
|
2020-11-02 09:21:36 +00:00
|
|
|
main();
|
2020-11-01 20:56:12 +00:00
|
|
|
|
2020-11-02 09:21:36 +00:00
|
|
|
async function main() {
|
|
|
|
// Local variables
|
|
|
|
const gameList = [
|
2020-11-09 16:53:29 +00:00
|
|
|
"Four Elements Trainer",
|
2020-11-02 09:21:36 +00:00
|
|
|
"corrupted kingdoms",
|
2020-11-09 16:53:29 +00:00
|
|
|
"summertime saga"
|
2020-11-02 09:21:36 +00:00
|
|
|
];
|
2020-11-01 08:54:59 +00:00
|
|
|
|
2020-11-02 09:21:36 +00:00
|
|
|
// Log in the platform
|
2020-11-01 13:56:07 +00:00
|
|
|
console.log("Authenticating...");
|
2021-02-15 21:26:18 +00:00
|
|
|
const result = await login(process.env.F95_USERNAME, process.env.F95_PASSWORD);
|
2020-11-30 09:40:35 +00:00
|
|
|
console.log(`Authentication result: ${result.message}\n`);
|
2020-11-01 08:54:59 +00:00
|
|
|
|
2020-11-02 09:21:36 +00:00
|
|
|
// Get user data
|
|
|
|
console.log("Fetching user data...");
|
2021-02-15 21:26:18 +00:00
|
|
|
const userdata = await getUserData();
|
2020-11-30 09:40:35 +00:00
|
|
|
console.log(`${userdata.username} follows ${userdata.watchedGameThreads.length} threads\n`);
|
2020-11-02 09:21:36 +00:00
|
|
|
|
2020-11-30 09:40:35 +00:00
|
|
|
// Get latest game update
|
2021-02-15 21:26:18 +00:00
|
|
|
const latestUpdates = await getLatestUpdates({
|
2020-11-30 09:40:35 +00:00
|
|
|
tags: ["3d game"]
|
|
|
|
}, 1);
|
|
|
|
console.log(`"${latestUpdates[0].name}" was the last "3d game" tagged game to be updated\n`);
|
|
|
|
|
|
|
|
// Get game data
|
2020-11-02 09:21:36 +00:00
|
|
|
for(const gamename of gameList) {
|
|
|
|
console.log(`Searching '${gamename}'...`);
|
2021-02-15 21:26:18 +00:00
|
|
|
const found = await getGameData(gamename, false);
|
2020-11-02 09:21:36 +00:00
|
|
|
|
|
|
|
// If no game is found
|
|
|
|
if (found.length === 0) {
|
|
|
|
console.log(`No data found for '${gamename}'`);
|
|
|
|
continue;
|
|
|
|
}
|
2020-10-31 15:00:26 +00:00
|
|
|
|
2020-11-02 09:21:36 +00:00
|
|
|
// Extract first game
|
|
|
|
const gamedata = found[0];
|
2020-11-30 09:40:35 +00:00
|
|
|
console.log(`Found: ${gamedata.name} (${gamedata.version}) by ${gamedata.author}\n`);
|
2020-10-29 21:14:40 +00:00
|
|
|
}
|
2020-10-03 14:42:29 +00:00
|
|
|
}
|