Drill your vocabulary list in Telegram
Sends /quiz a word from your Google Sheet and marks your /answer against what the sheet says.
Apps it connects
Authenticate each one once and the workflow is ready to run.
What it does
The integration steps this workflow runs, in the order it first runs them.
- 1
TelegramNew message trigger - 2
TelegramSend message - 3
Google SheetsRead rows - 4
OpenAIQuery model
How it works
Everything the template sets up, and what to fill in before the first run.
Keep your vocabulary in a Google Sheet - one row per word, a Term column and an Answer column - and drill yourself on it from Telegram. Send /quiz and the bot picks a word from the sheet at random and asks it. Send /answer ephemeral = lasting a very short time and it marks your answer against what your sheet says.
Your sheet is the source of truth about what is correct, and nothing can overrule it. An answer that matches the Answer column is marked correct there and then, before any model is involved. Only an answer that does not match word for word is sent on, and only ever with one question - does this mean the same thing? - so the check can turn a near miss into a pass but can never mark a matching answer wrong. If that check fails, or comes back as anything other than a yes or a no, you are told the sheet's answer and the attempt is left unmarked rather than failed. If the same word appears on several rows, matching any one of those answers is correct.
Because there is no memory between messages, /answer has to name the word you are answering - the message /quiz sends you is already written out in that shape, ready to copy. Your answer may itself contain an = sign; only the first one separates the word from the answer.
The tab needs a heading row with columns named Term and Answer. The workflow always reads those two names and cannot be pointed at differently named ones, and a row missing either is skipped rather than asked. Matching a word ignores letter case.
To set it up, paste the chat's ID onto the trigger step. Leave it blank and the trigger fires for every message your bot receives in every chat it has been added to - it does not stay quiet, it processes all of them - so use a private chat and fill it in. Then paste your sheet's address into 'vocabSheetUrl', put the tab's name in 'sheetName', and leave 'maxWordsRead' unless your list is longer than 500 rows. Messages that are not /quiz or /answer are ignored without a reply.
Start from a workflow that already works.
Add "Drill your vocabulary list in Telegram" to your workspace, connect its apps, and make it yours. No credit card required.
Free plan available · No credit card required
