# Daily Interview Question Bot > n8n mein roz subah ek topic par AI se interview question banao aur Telegram par bhejo: workflow + 7 topic prompts Free guide by bloopcommits (@bloopcommits) · https://bloopcommits.pages.dev/daily/ Interview prep kal se shuru karoge, par wo 'kal' kab aayega? Is guide mein ek chhota n8n workflow hai: roz subah n8n hafte ke din ke hisaab se ek topic chunta hai (HR, Python, SQL, Excel ...), Gemini us topic par ek fresher level interview question aur teen line ka hint likhta hai, aur sab kuch ek hi Telegram message mein tumhare phone par aa jaata hai. Roz ek sawaal, bina kuch dhoondhe. > **Ye workflow kya karta hai** > > - Schedule Trigger roz subah ek tay time par workflow shuru karta hai (starter mein eight baje, tum kuch bhi rakh sakte ho). > - Edit Fields (Pick Topic) aaj ke weekday se ek topic chunta hai: Monday HR, Tuesday Python, Wednesday SQL, Thursday Excel, Friday Aptitude, Saturday Projects, Sunday Stats. Ye list hamari design hai, apni marzi se badlo. > - Basic LLM Chain (Make Question) Gemini model ke saath ek sawaal aur teen line ka hint banata hai: 'Q:' aur 'Hint:' format mein. > - Telegram Send Message us text ko ek hi message mein tumhari chat mein bhejta hai: 'Aaj ka sawaal (topic):' aur uske neeche Q aur Hint. ![n8n ke official preview mein poora workflow: Every Morning > Pick Topic > Make Question > Gemini Model > Send Question](https://bloopcommits.pages.dev/daily/workflow.png) _Poora workflow, n8n ke official preview mein (workflow hamara, screen n8n ka)._ Reel mein jo Tuesday / Python ka example, sawaal (Python mein list aur tuple mein kya fark hai?) aur Telegram message card dikha, wo banaya hua example hai: asli run ka output nahi. Hamne ye workflow kisi account par chalaya nahi hai: ye starter workflow hai, n8n ke official preview mein dikhaya gaya. Prompt ka text bhi hamara apna design hai (n8n docs se nahi). Isliye credentials khud jodo, ek test se check karo, phir publish karo. ## Node by node (n8n ke official docs ke hisaab se) | Node (canvas par naam) | n8n node | Kya karta hai | Tumhe kya set karna hai | | --- | --- | --- | --- | | Every Morning | Schedule Trigger | Workflow ko tay time par shuru karta hai. Days interval mein 'Days Between Triggers' = kitne din baad dobara, 'Trigger at Hour' aur 'Trigger at Minute' = kis time. Docs: workflow save aur publish karna zaroori hai. | Trigger Interval: Days. Days Between Triggers: 1. Trigger at Hour: 8 (ya apna time). Trigger at Minute: 0. | | Pick Topic | Edit Fields (Set), Manual Mapping | Docs: Manual Mapping mein fields ke naam aur value khud set karte ho, value expression bhi ho sakti hai. Yahan ek field 'topic' hai. | Field: topic (String). Value: ek expression jo saat topics ki list mein se aaj ke weekday wala topic uthata hai. Topics badalne ho to expression ki list badlo. | | Make Question | Basic LLM Chain | Docs: 'Define below' mein Prompt (User Message) mein text ya expression likhte ho. Chain ko ek chat model chahiye: neeche Gemini Model uske Model port se juda hai. Chain ka jawab 'text' field mein aata hai. | Source for Prompt: Define below. Prompt: hamara prompt ({{ $json.topic }} wala, neeche code mein dekho). | | Gemini Model | Google Gemini Chat Model | Google ke Gemini chat models ko chain ke saath use karne ka sub-node. Docs: Model ki list tumhare account ke hisaab se Gemini API se aati hai. | Credential: Google Gemini(PaLM) API key. Model: dropdown se chuno (hum koi model ka naam nahi bol rahe: list badalti rehti hai). | | Send Question | Telegram, Send Message | Docs: Chat ID aur Text (max 4096 characters) set karte ho. 'Append n8n Attribution' default mein on hota hai, starter mein off hai. | Credential: Telegram Access Token. Chat ID: apna chat ya @channelusername. Text: hamara expression (starter mein bhara hai). | ## Kya chahiye - n8n: apne server par self-host (Community Edition) ya n8n Cloud (free trial). Kharche ka section neeche hai. Schedule roz chalne ke liye n8n subah chalu hona chahiye. - Telegram bot ka Access Token: Telegram par BotFather se chat shuru karo, /newbot likho, bot ka naam aur username do (username 'bot' par khatam hona chahiye), aur BotFather jo token de use copy karo. - Chat ID: wo chat jahan sawaal aana hai (neeche 'Chat ID kaise nikaalein'). - Gemini API key: Google AI Studio ke API Key page se (neeche steps). ## Gemini API key jodna (n8n docs ke hisaab se) 1. n8n ke docs ke hisaab se Google AI Studio ke API Key page par jao (aistudio.google.com/apikey) aur 'Create API Key' dabao. Naya project banao ya purana chuno. 2. Jo API key bane use copy karo. 3. n8n mein Gemini Model node kholo, credential 'Google Gemini(PaLM) API' banao aur key wahan paste karo. Host wahi rehne do jo default hai. 4. Model dropdown se apne account ke hisaab se model chuno. Limits aur models badalte rehte hain, to jo list dikhe usi mein se chuno. ## Chat ID kaise nikaalein (n8n docs ke hisaab se) n8n ke Telegram docs 'Get the Chat ID' mein ye tareeke dete hain: 1. Telegram Trigger node: apne workflow mein Telegram Trigger lagao. Docs ke hisaab se ye Chat ID wapas deta hai. Bot ko ek message bhejo aur trigger ke output mein chat ka id dekho. 2. Web browser: Telegram ko browser mein kholo aur group chat kholo. Docs: group ka Chat ID us series of digits mein hai jo letter 'g' ke baad aati hai. 3. RawDataBot: Telegram ke @RawDataBot ko group mein invite karo. Docs: add karte hi wo ek JSON deta hai jisme 'chat' object hota hai, usme id milega. 4. Channel ke liye Chat ID ki jagah @channelusername bhi chalta hai (docs ke hisaab se). ## Step by step 1. n8n kholo (Cloud trial ya apna self-host) aur ek naya workflow banao. 2. Neeche wala starter workflow Import from File se laao, ya JSON copy karke canvas par paste karo. 3. Gemini Model node mein Google Gemini(PaLM) credential banao aur Model chuno. 4. Send Question mein Telegram credential chuno aur apna Chat ID bharo. 5. Every Morning mein apna time rakho (starter mein eight baje). 6. Workflow ko ek baar test run karo. Make Question ka output dekho: 'Q:' aur 'Hint:' theek se aaye? Telegram par message aaya? 7. Sab theek lage to workflow save karo aur publish karo. Docs: Schedule Trigger wale workflow ko save aur publish karna zaroori hai. [Workflow file download karo](https://bloopcommits.pages.dev/daily/bloopcommits-daily-workflow.json) - .json file · n8n mein Import from File · download na ho to neeche Copy dabao **starter workflow: n8n mein Import from File / paste karo, Chat ID khud bharo, credentials khud jodo, ek test se check karo** ``` { "name": "Daily Interview Question Starter", "nodes": [ {"id": "1", "name": "Every Morning", "type": "n8n-nodes-base.scheduleTrigger", "typeVersion": 1.2, "position": [0, 0], "parameters": {"rule": {"interval": [{"field": "days", "daysInterval": 1, "triggerAtHour": 8, "triggerAtMinute": 0}]}}}, {"id": "2", "name": "Pick Topic", "type": "n8n-nodes-base.set", "typeVersion": 3.4, "position": [300, 0], "parameters": {"assignments": {"assignments": [ {"id": "a1", "name": "topic", "type": "string", "value": "={{ ['HR', 'Python', 'SQL', 'Excel', 'Aptitude', 'Projects', 'Stats'][$today.weekday - 1] }}"}]}, "options": {}}}, {"id": "3", "name": "Make Question", "type": "@n8n/n8n-nodes-langchain.chainLlm", "typeVersion": 1.6, "position": [600, 0], "parameters": {"promptType": "define", "text": "=You write ONE fresher-level interview question in simple Hinglish (Roman script).\nTopic: {{ $json.topic }}\nFormat:\nQ: \nHint: <3 short lines that point to the answer, no full answer>\nNever invent facts; if the topic needs a fact, keep the question conceptual."}}, {"id": "4", "name": "Gemini Model", "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini", "typeVersion": 1, "position": [620, 260], "parameters": {"options": {}}}, {"id": "5", "name": "Send Question", "type": "n8n-nodes-base.telegram", "typeVersion": 1.2, "position": [980, 0], "parameters": {"chatId": "", "text": "=Aaj ka sawaal ({{ $('Pick Topic').item.json.topic }}):\n{{ $json.text }}", "additionalFields": {"appendAttribution": false}}} ], "connections": { "Every Morning": {"main": [[{"node": "Pick Topic", "type": "main", "index": 0}]]}, "Pick Topic": {"main": [[{"node": "Make Question", "type": "main", "index": 0}]]}, "Make Question": {"main": [[{"node": "Send Question", "type": "main", "index": 0}]]}, "Gemini Model": {"ai_languageModel": [[{"node": "Make Question", "type": "ai_languageModel", "index": 0}]]} } } ``` Is JSON mein credentials nahi hain. Chat ID khali hai: tumhe khud bharna hai. Pick Topic ka expression, Make Question ka prompt aur Send Question ka text hamara apna design hai (n8n docs se nahi), aur humne ise kisi account par chalaya nahi: pehle test se dekh lo ki sawaal waisa hi banta hai jaisa tum chahte ho. > **Banaya hua example: message kaisa dikhega** > > - Aaj ka sawaal (Python): > - Q: Python mein list aur tuple mein kya fark hai? > - Hint: > - - Ek mein badlav ho sakta hai, doosre mein nahi. > - - Socho, kaunsa data kabhi badalna nahi chahiye? > - - Dono ko likhne ka tareeka bhi alag hai. > - (Ye banaya hua example hai, asli run ka output nahi. Tumhara sawaal alag hoga.) ## Hafte ke din ka chakkar (weekday) Pick Topic ka expression $today.weekday - 1 use karta hai. n8n docs ke hisaab se $today ek Luxon object hai jo abhi ke time ko din tak rounded down karta hai. Luxon ke apne docs ke hisaab se weekday ka matlab: 1 = Monday aur 7 = Sunday. Isliye weekday - 1 se Monday list ka pehla item (HR), Tuesday doosra (Python) ... Sunday saatwa (Stats) hota hai. Starter mein list: HR, Python, SQL, Excel, Aptitude, Projects, Stats. Luxon n8n ka timezone use karta hai: docs ke hisaab se pehle workflow ka timezone (agar set hai), warna n8n instance ka. Self-hosted par default America/New York hota hai. Apna timezone nahi lagaya to 'aaj ka weekday' aur Schedule ka time dono tumhare hisaab se nahi honge. 1. Workflow ke Settings mein 'Timezone' apna chuno. 2. Ya poore instance ka timezone badlo (Cloud par admin dashboard mein, self-hosted par GENERIC_TIMEZONE environment variable se). ## 7 topic prompts (ek optional upgrade, humne chalaya nahi) Starter mein ek hi prompt hai jo topic ka naam lekar sawaal banata hai. Agar har din ka sawaal topic ke andar aur focused chahiye, to har weekday ke liye ek 'Focus' line jodo. Ye saat lines hi saat topic prompts hain (hamari design, English mein likhi hain; prompt ke baaki hisse ki tarah sawaal simple Roman Hindi mein maanga gaya hai, humne ise chalaya nahi). | Din | Topic | Focus line (prompt ke liye) | | --- | --- | --- | | MON | HR | Focus: HR round basics (self introduction, strengths and weaknesses, teamwork, a mistake you learned from). | | TUE | Python | Focus: basic Python concepts (data types, loops, functions, lists and tuples). | | WED | SQL | Focus: basic SQL (SELECT, WHERE, GROUP BY, JOIN). | | THU | Excel | Focus: everyday Excel (lookups, pivot tables, cell references, cleaning data). | | FRI | Aptitude | Focus: simple aptitude (percentage, ratio, time and work); the question must be solvable in two minutes. | | SAT | Projects | Focus: how an interviewer questions a fresher about their own project (why this idea, what went wrong, what you would improve). | | SUN | Stats | Focus: basic statistics (mean, median, standard deviation, correlation). | 1. Pick Topic mein ek aur field jodo: naam 'focus', type String, value neeche wala expression (isme saat lines hi weekday ke hisaab se chalti hain). 2. Make Question ke Prompt mein 'Topic:' line ke neeche ek nayi line jodo: Focus: {{ $json.focus }} 3. Ek test run karo aur dekho ki sawaal topic ke andar hi hai. Prompt ka poora text neeche dusre code box mein hai. **IDEA (hamari design, chalaya nahi): Pick Topic ke 'focus' field ka expression, saat lines weekday ke hisaab se (Monday pehli)** ``` ={{ ['HR round basics (self introduction, strengths and weaknesses, teamwork, a mistake you learned from)', 'basic Python concepts (data types, loops, functions, lists and tuples)', 'basic SQL (SELECT, WHERE, GROUP BY, JOIN)', 'everyday Excel (lookups, pivot tables, cell references, cleaning data)', 'simple aptitude (percentage, ratio, time and work); the question must be solvable in two minutes', 'how an interviewer questions a fresher about their own project (why this idea, what went wrong, what you would improve)', 'basic statistics (mean, median, standard deviation, correlation)'][$today.weekday - 1] }} ``` **IDEA (hamari design, chalaya nahi): Make Question ka prompt, 'Focus' line ke saath** ``` =You write ONE fresher-level interview question in simple Hinglish (Roman script). Topic: {{ $json.topic }} Focus: {{ $json.focus }} Format: Q: Hint: <3 short lines that point to the answer, no full answer> Never invent facts; if the topic needs a fact, keep the question conceptual. ``` ## AI ka hint galat ho sakta hai Google ke Gemini API terms kehte hain: 'The Services include experimental technology and may sometimes provide inaccurate or offensive content' aur 'Use discretion before relying on, publishing, or otherwise using content provided by the Services.' Yani AI ka hint ek ishara hai, final jawab nahi. Isliye: 1. Pehle khud jawab likho ya socho, phir hint padho. 2. Hint se jawab milao: jo cheez pakki lage use ek asli source se check karo, jaise official docs ya textbook. Example: Python ke official docs mein likha hai 'Lists are mutable sequences' aur 'Tuples are immutable sequences', yani list badal sakti hai, tuple nahi. 3. Jahan hint aur source alag ho, source maano. Prompt mein hamne 'Never invent facts' likha hai, lekin ye guarantee nahi hai. ## Free Gemini quota aur privacy Google ke Gemini API terms ke hisaab se: 'When you use Unpaid Services, including, for example, Google AI Studio and the unpaid quota on Gemini API, Google uses the content you submit to the Services and any generated responses to provide, improve, and develop Google products and services.' Terms ye bhi kehte hain: 'Do not submit sensitive, confidential, or personal information to the Unpaid Services.' Aur human reviewers API input aur output padh sakte hain. - Hamare starter ke prompt mein sirf topic ka ek shabd jaata hai (Python, SQL ...). Phir bhi prompt badalte waqt apna resume, phone number ya koi private baat us mein mat daalo. - Terms badalte rehte hain: paid aur unpaid ka fark Google ke official page par dekho (neeche links mein). - Bot token, API key aur Chat ID kisi ko share mat karo. ## Bina AI wala option (ek idea, humne banaya nahi) Agar AI ke galat hint ka darr hai, to ek bina-AI version bhi ban sakta hai: Google Sheets mein apne sawaal likho, n8n roz unmein se ek chune (jaise random ya weekday ke hisaab se) aur wahi Telegram par bheje. Is mein AI nahi hota, to hint galat hone ka sawaal hi nahi. Ye sirf ek idea hai: humne ise banaya ya chalaya nahi, node ke exact naam aur settings n8n docs mein dekh kar khud banao. ## Aam galtiyan - Workflow publish nahi kiya. Schedule Trigger ke docs: save aur publish zaroori hai, warna schedule par kuch nahi chalega. - n8n band hai. Docs ke hisaab se instance band ho to us time ka run miss ho jaata hai, aur default 'Don't Run Missed Executions' mein wo baad mein nahi chalta. Yani us subah ka sawaal chhoot jaata hai. - Gemini Model mein Model chuna nahi, ya API key galat hai: Make Question error dega. Test run mein dekho. - Chat ID khali ya galat: Telegram node message nahi bhej payega. - Timezone apna nahi lagaya: weekday aur time tumhare din se alag ho sakta hai. - AI ke text mein <, > ya & jaise characters aaye: Telegram ka default Parse Mode HTML hai, aur Telegram ke Bot API docs ke hisaab se HTML mode mein aise characters ko entities mein badalna padta hai. Message na jaye to ye check karo (humne ise chalaya nahi, isliye pakka nahi keh sakte). ## Kharcha (plans badalte rehte hain, official page dekho) | Option | Official pages ke hisaab se | | --- | --- | | Self-host (Community Edition) | Free Community edition, almost complete feature set. Infrastructure tum khud provide aur manage karte ho: n8n subah chalta rakhna tumhari zimmedari. | | n8n Cloud | n8n khud host karta hai. Free trial milta hai, phir paid plans. Plans aur prices n8n.io/pricing par dekho. | | Gemini API key | Google AI Studio se key banti hai. Unpaid quota ke terms upar 'Free Gemini quota aur privacy' mein hain. Limits badalti rehti hain: Google ka official page dekho. | > **Yaad rakho** > > - Schedule Trigger -> Edit Fields (weekday ka topic) -> Basic LLM Chain + Gemini Model -> Telegram Send Message. > - Starter workflow hai: credentials khud jodo, ek test se check karo, phir publish karo. > - AI ka hint galat ho sakta hai: pehle khud socho, phir asli source se check karo. > - Free Gemini quota par private baat mat daalo. Ye advice hai, guarantee nahi. ## Official links - [n8n docs: Schedule Trigger](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/) - [n8n docs: Edit Fields (Set)](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/) - [n8n docs: Basic LLM Chain](https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.chainllm/) - [n8n docs: Google Gemini Chat Model](https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatgooglegemini/) - [n8n docs: Google Gemini(PaLM) credentials](https://docs.n8n.io/integrations/builtin/credentials/googleai/) - [n8n docs: Telegram, Send Message](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.telegram/message-operations/) - [n8n docs: Telegram credentials (BotFather)](https://docs.n8n.io/integrations/builtin/credentials/telegram/) - [n8n docs: Telegram common issues (Chat ID)](https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.telegram/common-issues/) - [n8n docs: dates and times ($today, timezone)](https://docs.n8n.io/build/work-with-data/handle-special-data-types/work-with-dates-and-times/) - [Luxon docs: DateTime weekday](https://moment.github.io/luxon/api-docs/index.html) - [Google Gemini API terms (unpaid services)](https://ai.google.dev/gemini-api/terms) - [Python docs: lists and tuples](https://docs.python.org/3/library/stdtypes.html) - [n8n: how to use n8n (Community Edition, Cloud)](https://docs.n8n.io/choose-how-to-use-n8n/) - [n8n: pricing](https://n8n.io/pricing/) --- More free guides: https://bloopcommits.pages.dev/