An API for Akinator based in NodeJS.
npm i aki-api
[
'en',
'ar',
'cn',
'de',
'es',
'fr',
'il',
'it',
'jp',
'kr',
'nl',
'pl',
'pt',
'ru',
'tr',
'id'
]
const { Aki } = require('aki-api');
const run = async () => {
const region = 'en';
const childMode = false;
const proxy = undefined;
const aki = new Aki({ region, childMode, proxy });
await aki.start();
console.log('question:', aki.question);
console.log('answers: ', aki.answers);
}
run().catch(console.error);
question: Is your character real?
answers: [
"Yes",
"No",
"Don't know",
"Probably",
"Probably not"
]
const { regions } = require('aki-api');
console.log(regions);
const { Aki } = require('aki-api');
const run = async () => {
const region = 'en';
const aki = new Aki({ region });
await aki.start();
const myAnswer = 0; // yes = 0
await aki.step(myAnswer);
console.log('question:', aki.question);
console.log('answers:', aki.answers);
console.log('progress:', aki.progress);
}
run().catch(console.error);
const { Aki } = require('aki-api');
const run = async () => {
const region = 'en';
const aki = new Aki({ region });
const guessOrResponse = await aki.answer(); // check if it is a guess by akinator or another question
// if you do not like the answer...
await aki.continue();
}
run().catch(console.error);
The child mode prevents showing explicit questions.
const { Aki } = require('aki-api');
const run = async () => {
const region = 'en';
const childMode = true;
const aki = new Aki({ region, childMode });
}
run().catch(console.error);
const { Aki } = require('aki-api');
const run = async () => {
const region = 'en';
const aki = new Aki({ region });
await aki.start();
const myAnswer = 1; // no = 1
await aki.step(myAnswer);
await aki.back();
console.log('question:', aki.question);
console.log('answers:', aki.answers);
}
run().catch(console.error);