Skip to content

Latest commit

 

History

History
106 lines (93 loc) · 4.99 KB

Documentation.md

File metadata and controls

106 lines (93 loc) · 4.99 KB

Kahoot.js Documentation

Classes

Kahoot

Kahoot client that can interact with quizzes.

Events
on('ready') and on('join') - Emitted when the client joins the game.
on('quizStart', Quiz) and on('quiz', Quiz) - Emitted when the quiz starts for the client. Passes a Quiz class.
on('question', Question) - Emitted when the client receives a new question. This is NOT the same as the questionStart event, which is emitted after the question has started. Passes a Question class.
on('questionStart', Question) - Emitted when a question starts. Passes a Question class.
on('questionSubmit', QuestionSubmitEvent) - Emitted when your answer has been submitted. Passes a QuestionSubmitEvent class.
on('questionEnd', QuestionEndEvent) - Emitted when a question ends. Passes a QuestionEndEvent class.
on('finish', QuizFinishEvent) - Emitted when the quiz ends. Passes a QuizFinishEvent class.
on('finishText', FinishTextEvent) - Emitted when the quiz finish text is sent. Passes a FinishTextEvent class.
on('quizEnd') and on('disconnect') - Emitted when the quiz closes, and the client is disconnected.

Methods
join(sessionID, playerName)
Parameters:
sessionID (number) - The Kahoot session ID to join.
playerName (string) - The name of the user.
Returns: Promise
answerQuestion(id)
Parameters:
id (number) - The ID of the question to answer. (0 is the first answer, 1 is the second answer, etc.)
Returns: Promise
leave()
Returns: Promise

Properties
sendingAnswer (boolean) - Whether or not the client is currently sending an answer.
token (String) - The client token of the user.
sessionID (Number) - The session ID of the quiz.
name (String) - The user's name.
quiz (Quiz) - The current quiz of the client.
nemesis (Nemesis) - The client's nemesis. (Will be null if the client does not have a nemesis.)
nemeses (Nemesis Array) - An array of all the client's past nemeses.

Quiz

Properties
client (Kahoot) - The client the quiz is attached.
name (String) - The name of the quiz.
type (String) - The quiz type.
currentQuestion (Question) - The current question the quiz is on.
questions (Question Array) - An array of every single question in the quiz. New questions get added as they come in.

Question

Methods
answer(number)
Parameters:
number (Number) - The question number to answer. (0 is the first answer, 1 is the second answer, etc.)

Properties
client (Kahoot) - The client attached to the question.
quiz (Quiz) - The quiz that the question for.
index (Number) - The index of the question.
timeLeft (Number) - The time left in the question.
type (String) - The question type.
usesStoryBlocks (Boolean) - Whether or not the question uses 'Story Blocks'.
ended (Boolean) - Whether or not the question has ended.
number (Number) - The number of the question.

QuestionEndEvent

Properties
client (Kahoot) - The client attached to the event.
quiz (Quiz) - The quiz that the event is attached to.
question (Question) - The question that the event is attached to.
correctAnswers (String Array) - A list of the correct answers.
correctAnswer (String) - The correct answer. (if there are multiple correct answers, this will be the first in the array.)
text (String) - The text sent by Kahoot after a question has finished.
correct (Boolean) - Whether or not the client got the question right.
nemesis (Nemesis) - The client's nemesis. (Will be null if the client does not have a nemesis.)

QuestionSubmitEvent

Properties
message (String) - The message sent by Kahoot after you sent in an answer.
client (Kahoot) - The client attached to the event.
quiz (Quiz) - The quiz attached to the event.
question (Question) - The question attached to the event.

Nemesis

Properties
name (String) - The name of the nemesis user.
id (Number / String) - The client ID of the user
score (Number) - The score of the nemesis user.
isKicked (Boolean) - Whether or not the nemesis user is kicked or not.
exists (Boolean) - Whether or not the nemesis exists (All other values will be undefined if this is false)

FinishTextEvent

Properties
firstMessage (String) - The first finishing message sent by Kahoot.
secondMessage (String) - The second message sent by Kahoot. (this property will be undefined if a second message was not sent.)
messages (String Array) - An array of the messages sent.
metal (String) - The medal recieved after the quiz.

QuizFinishEvent

Properties
client (Kahoot) - The client attached to the event.
quiz (Quiz) - The quiz attached to the event.
players (Number) - The number of players on the quiz.
quizID (String) - The ID of the quiz.
rank (Number) - The client's ranking on the quiz.
correct (Number) - The number of questions that were scored correct.
incorrect (Number) - The number of questions that were scored incorrect.