Python Workflow Automation क्या है?
Table of Contents
Toggleआज लगभग हर Business अपने दैनिक कार्यों को Workflow Automation की सहायता से तेज़, सुरक्षित और Error-Free बना रहा है। पहले जिन कार्यों को पूरा करने में घंटों लगते थे, वही कार्य आज कुछ सेकंड में पूरे हो जाते हैं। इस ब्लॉग सीरीज़ में हम Python, FastAPI, Tally Forms, Webhooks और ngrok का उपयोग करके एक Professional Workflow Automation System बनाना सीखेंगे। यह Tutorial पूरी तरह Beginner Friendly है और प्रत्येक Concept को आसान हिन्दी में समझाया जाएगा।
- Student Form भरता है।
- Staff Data Copy करता है।
- Excel Update करता है।
- WordPress में User Create करता है।
- Email और WhatsApp अलग-अलग भेजता है।
Automated Process
- Student Form Submit करता है।
- Python Webhook Data Receive करता है।
- Database स्वतः Update होती है।
- WordPress User अपने आप Create होता है।
- Email और WhatsApp तुरंत भेजे जाते हैं।
इस ब्लॉग सीरीज़ में आप क्या सीखेंगे?
इस Series में हम केवल Theory नहीं पढ़ेंगे, बल्कि एक Real-World Business Automation Project बनाएँगे। प्रत्येक Chapter पिछले Chapter से जुड़ा होगा, इसलिए यदि आप Beginner हैं तो भी बिना किसी कठिनाई के पूरा Workflow समझ पाएँगे।
Trigger → Webhook → Python → Database → WordPress → LearnPress → Email → WhatsApp
Workflow क्या होता है?
यदि आप किसी भी Business, Website, Mobile App या Software को ध्यान से देखें, तो पाएँगे कि हर कार्य एक निश्चित क्रम (Sequence) में होता है। इसी क्रम को Workflow कहा जाता है। सरल शब्दों में, Workflow वह प्रक्रिया (Process) है जिसमें एक कार्य पूरा होने के बाद अगला कार्य स्वतः शुरू होता है और अंत में एक निर्धारित परिणाम (Output) प्राप्त होता है।
- Student Form भरता है।
- Form Submit करता है।
- Python Data Receive करता है।
- Database में Record Save होता है।
- WordPress User Create होता है।
- LearnPress में Enrollment होती है।
- Email और WhatsApp भेजे जाते हैं।
Workflow का सबसे आसान उदाहरण
नीचे दिया गया Diagram इस पूरे Project का आधार है। आने वाले सभी Chapters इसी Workflow को धीरे-धीरे Professional Automation System में बदलेंगे।
⬇️ Tally Form
⬇️ Webhook Trigger
⬇️ Python Receive Data
⬇️ Database Save
⬇️ Create WordPress User
⬇️ LearnPress Enrollment
⬇️ Send Email & WhatsApp
याद रखें: Workflow का अर्थ केवल Data को एक स्थान से दूसरे स्थान तक भेजना नहीं है, बल्कि सही समय पर सही कार्य को स्वतः पूरा करना है। अगले Section में हम समझेंगे कि API क्या होती है और Workflow में इसकी क्या भूमिका होती है।
हमारा पहला Project: Tally Form से Python Webhook तक
अब तक हमने Workflow की Concept समझी। अब समय है यह देखने का कि हमने वास्तव में क्या बनाया। इस Project में हमारा उद्देश्य केवल एक Form बनाना नहीं था, बल्कि यह सीखना था कि जब कोई User Form Submit करे, तो उसका Data तुरंत Python तक कैसे पहुँचे। इसके लिए हमने Tally Form, FastAPI, Webhook और ngrok का उपयोग किया।
- Tally Forms – Online Form बनाने के लिए
- WordPress – Form को Website पर Embed करने के लिए
- Python – Workflow को Handle करने के लिए
- FastAPI – Web Server बनाने के लिए
- ngrok – Local Server को Internet पर उपलब्ध कराने के लिए
- Webhook – Form Submit होते ही Python को सूचना भेजने के लिए
⬇️
Tally Form Submission होती है।
⬇️
Webhook Trigger होता है।
⬇️
Python Data Receive करता है।
⬇️
Console में पूरा JSON दिखाई देता है।
इस Project से आपने क्या सीखा?
✔ Workflow कैसे शुरू होता है।
✔ Tally Form से Data कैसे आता है।
✔ Webhook क्या करता है।
✔ Python Request कैसे Receive करता है।
✔ FastAPI का पहला Server कैसे बनाया जाता है।
✔ ngrok Local Server को Public कैसे बनाता है।
हमने Tally Forms क्यों चुना?
जब हमने इस Workflow Automation Project की शुरुआत की, तब सबसे पहला प्रश्न था कि Form Builder कौन-सा उपयोग किया जाए। Internet पर Google Forms, WPForms, Elementor Forms, Typeform, Jotform और कई अन्य विकल्प उपलब्ध हैं। लेकिन इस Project के लिए हमने Tally Forms चुना क्योंकि यह Modern Workflow Automation के लिए सबसे उपयुक्त विकल्पों में से एक है।
Tally Forms हमारे Project के लिए क्यों उपयुक्त रहा?
हमारा उद्देश्य केवल Form बनाना नहीं था, बल्कि एक ऐसा Real-Time Workflow Automation System तैयार करना था जिसमें Form Submit होते ही Python सक्रिय हो जाए। इसी कारण हमने Tally Forms चुना, क्योंकि यह Webhook Integration, WordPress Embedding और JSON Data Support जैसी सुविधाएँ प्रदान करता है, जो किसी भी Professional Automation Project के लिए आवश्यक हैं।
<iframe
data-tally-src="https://tally.so/embed/eq6Kee?alignLeft=1&hideTitle=1&transparentBackground=1&dynamicHeight=1"
loading="lazy"
width="100%"
height="650"
frameborder="0"
marginheight="0"
marginwidth="0"
title="Vista Academy Student Admission Form">
</iframe>
<script>
var d=document,
w="https://tally.so/widgets/embed.js",
v=function(){
if(typeof Tally!=="undefined"){
Tally.loadEmbeds();
}else{
d.querySelectorAll('iframe[data-tally-src]:not([src])')
.forEach(function(e){
e.src=e.dataset.tallySrc;
});
}
};
if(typeof Tally!=="undefined"){
v();
}else if(!d.querySelector('script[src="'+w+'"]')){
var s=d.createElement("script");
s.src=w;
s.onload=v;
d.body.appendChild(s);
}
</script>
यह Tally Form को आपकी WordPress Website के अंदर दिखाता है। User को दूसरी Website पर जाने की आवश्यकता नहीं होती।
2. data-tally-src
यह आपके Tally Form का URL है। हमारे Project में Form ID eq6Kee है।
3. loading=”lazy”
यह Form को तभी Load करता है जब User उस Section तक पहुँचता है। इससे Website की Speed बेहतर रहती है।
4. width=”100%”
Form अपने Container की पूरी चौड़ाई में दिखाई देता है।
5. dynamicHeight=1
यदि Form में अधिक Fields हों, तो उसकी Height स्वतः बढ़ जाती है। Scroll की समस्या नहीं होती।
6. embed.js
यह JavaScript File Tally द्वारा उपलब्ध कराई जाती है। इसी की सहायता से Form Responsive बनता है और Dynamic Height जैसी सुविधाएँ काम करती हैं।
📌 इस Step का परिणाम
जब हमने इस Code को Elementor के HTML Widget में Paste किया, तो हमारा Student Admission Form सीधे WordPress Website पर दिखाई देने लगा। अब Student Website छोड़े बिना Form भर सकता है। अगले Step में हम इसी Form को Python Webhook से जोड़ेंगे ताकि Form Submit होते ही पूरा Workflow शुरू हो जाए।
FastAPI क्या है? हमने FastAPI क्यों चुना?
अब तक हमारा Student Admission Form तैयार हो चुका है और WordPress Website पर सफलतापूर्वक दिखाई दे रहा है। लेकिन केवल Form बनाना पर्याप्त नहीं है। हमें ऐसा Python Application चाहिए जो Internet से आने वाले Form Data को Receive कर सके। इसी उद्देश्य के लिए हमने FastAPI Framework का उपयोग किया।
- बहुत तेज़ Performance
- Webhook Integration आसान
- Automatic API Documentation
- Modern Python Syntax
- JSON Data को आसानी से Handle करता है
- Future AI एवं Automation Projects के लिए बेहतर विकल्प
FastAPI हमारे Workflow में कहाँ काम करता है?
नीचे दिए गए Workflow को ध्यान से देखें। FastAPI पूरी Automation का Reception Desk है। हर Request सबसे पहले इसी तक पहुँचती है।
⬇️
Tally Forms
⬇️
Webhook
⬇️
FastAPI
⬇️
Python Function
⬇️
Database / Email / WhatsApp
अब जब हमें समझ आ गया कि FastAPI क्या है और यह हमारे Project में क्या कार्य करता है, तो अगले Section में हम अपना पहला Python Server बनाएँगे और समझेंगे कि FastAPI Installation तथा Project Setup कैसे किया जाता है।
Anaconda Install करना और Python Environment तैयार करना
Workflow Automation Project शुरू करने से पहले हमें अपने Computer पर Python Development Environment तैयार करना होगा। यद्यपि Python को सीधे उसकी Official Website से Install किया जा सकता है, लेकिन इस Project में हमने Anaconda Distribution का उपयोग किया क्योंकि इसमें Python के साथ कई उपयोगी Tools पहले से उपलब्ध होते हैं।
- Python पहले से Install होता है।
- Conda Package Manager मिलता है।
- Virtual Environment आसानी से बनाए जा सकते हैं।
- Future Data Analytics Projects के लिए उपयुक्त।
- Libraries को Manage करना आसान।
https://www.anaconda.com/download
Installation Complete ✅
अब आपके Computer पर Python Development Environment तैयार है। अगले Section में हम Anaconda Prompt खोलेंगे, नया Environment बनाएँगे तथा FastAPI और Uvicorn Install करेंगे।
✔ Python Distribution क्या होती है।
✔ हमने Python.org की जगह Anaconda क्यों चुना।
✔ Official Website से Download कैसे करें।
✔ Installation के बाद Anaconda Prompt कहाँ मिलता है।
Anaconda में Python Environment और FastAPI Setup
अब तक हमने Tally Form को WordPress Website में Embed कर दिया है और यह भी समझ लिया कि FastAPI हमारे Workflow में क्या भूमिका निभाता है। अब समय है अपना पहला Python Development Environment तैयार करने का, जहाँ हम अपना Workflow Automation Project बनाएँगे। इस Tutorial में हमने Anaconda Prompt का उपयोग किया क्योंकि यह Python Projects को व्यवस्थित (Organized) रखने का सबसे आसान तरीका है।
conda create -n workflow python=3.12
conda activate workflow
pip install fastapi uvicorn
mkdir workflow
cd workflow
अब हमारा Development Environment तैयार है
इन चार Commands के बाद हमारा Python Environment पूरी तरह तैयार हो गया। अब हम अपना पहला FastAPI Application बनाएँगे जो Internet से आने वाले Form Data को Receive करेगा।
✔ उसे Activate किया।
✔ FastAPI Install किया।
✔ Uvicorn Install किया।
✔ नया Project Folder बनाया।
Notepad शुरुआती विद्यार्थियों के लिए पर्याप्त है और केवल Python सीखने के लिए उपयोग किया जा सकता है।
VS Code Professional Developers द्वारा उपयोग किया जाता है क्योंकि इसमें Syntax Highlighting, Auto Completion, Error Detection, Integrated Terminal तथा Extensions जैसी सुविधाएँ उपलब्ध होती हैं।
यदि आप Data Analytics, AI या Workflow Automation में Career बनाना चाहते हैं, तो भविष्य में VS Code का उपयोग करना अधिक उपयुक्त रहेगा।
Notepad उपयोग करने के लिए:
- Windows Start Menu में Notepad Search करें।
- Notepad Open करें।
- Python Code Paste करें।
- File → Save As पर क्लिक करें।
- Save as type में All Files (*.*) चुनें।
- File Name लिखें main.py
- Encoding UTF-8 रखें।
- इसे workflow Folder के अंदर Save करें।
workflow/
│
└── main.py
यही File हमारे पूरे Workflow Automation Project का मुख्य Program होगी।
पहला FastAPI Program (main.py) बनाना
अब हमारा Python Environment पूरी तरह तैयार है। अगला कदम है अपना पहला FastAPI Application बनाना। इस Application का कार्य Tally Forms द्वारा भेजे गए Webhook Data को Receive करना है। हमने Project Folder के अंदर main.py नाम की एक File बनाई। यही हमारे पूरे Workflow Automation Project की शुरुआत है।
from fastapi import FastAPI, Request
app = FastAPI()
@app.get("/")
async def home():
return {
"message":"Vista Academy Workflow API is running"
}
@app.post("/tally-webhook")
async def tally_webhook(request: Request):
data = await request.json()
print("=" * 50)
print("New Form Submission")
print(data)
print("=" * 50)
return {
"status":"success",
"message":"Data received"
}
from fastapi import FastAPI, Request
इस लाइन में हमने FastAPI Framework और Request Class को Import किया। FastAPI हमारा Web Server बनाएगा जबकि Request के माध्यम से हम Tally द्वारा भेजा गया Data प्राप्त करेंगे।
app = FastAPI()
यह हमारे Web Application का मुख्य Object है। आप इसे ऐसे समझ सकते हैं जैसे किसी Office का Reception Desk। Internet से आने वाली प्रत्येक Request सबसे पहले यहीं पहुँचती है।
@app.get("/")
जब कोई Browser केवल Website Open करता है, तब यह Function Execute होता है। इसी कारण Browser में हमने देखा था:
{
"message":"Vista Academy Workflow API is running"
}
इसका अर्थ था कि हमारा Server सफलतापूर्वक चल रहा है।
@app.post("/tally-webhook")
यह सबसे महत्वपूर्ण लाइन है। जब भी Tally Form Submit होता है, वह Data इसी URL पर भेजता है। यदि URL सही होगा, तभी हमारा Function Execute होगा।
data = await request.json()
Tally Form द्वारा भेजा गया पूरा Data JSON Format में आता है। इस लाइन की सहायता से Python उस JSON Data को Read करके data नाम के Variable में Store कर देता है।
print(data)
शुरुआत में हमने केवल यह Verify करने के लिए Data Print किया कि Webhook सही प्रकार से कार्य कर रहा है। बाद में यही Data Database, Email, WhatsApp तथा WordPress Automation के लिए उपयोग किया जाएगा।
return {"status":"success"}
जब Python Data Receive कर लेता है, तब वह Tally को Success Response भेजता है। यदि यह Response नहीं भेजा जाए, तो Tally यह मान सकता है कि Webhook सफल नहीं हुआ।
इस Chapter से आपने क्या सीखा?
✔ FastAPI Program बनाना
✔ Library Import करना
✔ GET Request Handle करना
✔ POST Webhook Receive करना
✔ JSON Data Read करना
✔ Response भेजना
✔ Console में Data Print करना
पहली बार FastAPI Server Run करें
अब हमारा main.py Program तैयार है। अगला चरण है इसे Run करना। जब तक Python Program Run नहीं होगा, तब तक Browser, Tally Forms या कोई अन्य Application उससे Connect नहीं कर पाएगी। इसीलिए हमें Uvicorn Server चलाना होगा।
cd C:\Users\hp\workflow
यदि आपकी File किसी दूसरे Folder में है, तो उसी Path का उपयोग करें।
uvicorn main:app --reload
यदि सब कुछ सही है तो कुछ सेकण्ड बाद आपका FastAPI Server Start हो जाएगा।
main → हमारी Python File का नाम (main.py)
app → FastAPI Object
app = FastAPI()
–reload → File Save होने पर Server अपने आप Restart हो जाएगा।
INFO: Started server process
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on
http://127.0.0.1:8000
यही संदेश बताता है कि आपका FastAPI Server सफलतापूर्वक चल रहा है।
http://127.0.0.1:8000
यदि सब कुछ सही है तो Browser में यह दिखाई देगा।
{
"message":"Vista Academy Workflow API is running"
}
इसका अर्थ है कि Browser आपके Python Server से सफलतापूर्वक जुड़ गया है।
Ctrl + C
दबाएँ।
🎯 इस Chapter में आपने क्या सीखा?
✔ FastAPI Server Run करना
✔ uvicorn main:app –reload Command समझना
✔ Browser में API Test करना
✔ JSON Response देखना
✔ Anaconda Prompt क्यों लगातार चलता रहता है
✔ Server को Stop कैसे करें
ngrok क्या है? Local Python Server को Internet पर कैसे लाएँ?
अब हमारा FastAPI Server सफलतापूर्वक चल रहा है। Browser में http://127.0.0.1:8000 खोलने पर API भी सही प्रकार से कार्य कर रही है। लेकिन एक समस्या अभी भी बाकी है। Tally Forms Internet पर चल रहा है जबकि हमारा Python Server केवल हमारे Laptop पर चल रहा है। अब प्रश्न यह है कि Tally Forms हमारे Computer तक कैसे पहुँचेगा? इसी समस्या को हल करने के लिए हमने ngrok का उपयोग किया।
http://127.0.0.1:8000
Open करते हैं, तब यह केवल हमारे अपने Computer पर चलता है।
इसे Localhost कहा जाता है।
Internet पर कोई दूसरा व्यक्ति या Website इसे Access नहीं कर सकती।
Localhost बनाम ngrok
❌
127.0.0.1
Connection Failed
⬇️
ngrok Public URL
⬇️
127.0.0.1:8000
✅ Connection Success
यही कारण है कि Workflow Automation बनाते समय ngrok एक महत्वपूर्ण Tool बन जाता है। इसके बिना Tally Forms आपके Local Python Server तक Data नहीं भेज सकता।
ngrok Install करें और Public URL बनाएँ
अब हमें अपने Local FastAPI Server को Internet पर उपलब्ध कराना है ताकि Tally Forms हमारे Laptop पर चल रहे Python Application तक पहुँच सके। इसके लिए हमने ngrok का उपयोग किया। इस Chapter में हम वही सभी Steps करेंगे जो हमने अपने Project में किए थे।
Website
https://ngrok.com/downloads/windows
अपने Operating System के अनुसार ngrok Download करें और ZIP File Extract कर लें।
https://dashboard.ngrok.com/signup
Account Verify करने के बाद Dashboard Open करें।
ngrok config add-authtoken YOUR_AUTHTOKEN
यहाँ
YOUR_AUTHTOKEN
की जगह अपना वास्तविक Token Paste करें।
यदि Command सफल रही तो आपको ऐसा Message दिखाई देगा।
Authtoken saved to configuration file
ngrok http 8000
कुछ सेकण्ड बाद ngrok एक Public URL Generate करेगा।
उदाहरण:
https://life-lid-lizard.ngrok-free.dev
अब यही URL Internet पर उपलब्ध होगा।
http://127.0.0.1:8000
कार्य कर रहा था।
लेकिन Internet पर मौजूद Tally Forms इसे Access नहीं कर सकता था।
अब ngrok ने
https://life-lid-lizard.ngrok-free.dev
जैसा Public Address बना दिया।
अब Internet पर मौजूद कोई भी Application हमारे FastAPI Server तक पहुँच सकती है।
अब हमारा Python Server Internet पर उपलब्ध है 🎉
इस Chapter के बाद हमारा Local Python Application केवल हमारे Computer तक सीमित नहीं रहा। अब Tally Forms, Browser और अन्य Online Services हमारे FastAPI Server तक पहुँच सकते हैं। यही Public URL अगले Chapter में Webhook के रूप में उपयोग किया जाएगा।
✔ Free Account बनाना
✔ Authtoken प्राप्त करना
✔ Authtoken Configure करना
✔ Public URL Generate करना
✔ Localhost को Internet पर उपलब्ध कराना
Tally Form में Webhook Configure करें
अब तक हमने अपना Python Server तैयार कर लिया है और ngrok की सहायता से उसे Internet पर उपलब्ध भी करा दिया है। अब हमें Tally Forms को यह बताना होगा कि जब भी कोई User Form Submit करे, तो Data किस Address पर भेजना है। यही कार्य Webhook Integration द्वारा किया जाता है।
https://YOUR-NGROK-URL.ngrok-free.dev/tally-webhook
उदाहरण
https://life-lid-lizard.ngrok-free.dev/tally-webhook
ध्यान रखें कि URL के अंत में
/tally-webhook
अवश्य होना चाहिए क्योंकि यही Route हमने FastAPI में बनाया था।
Workflow अब Live हो चुका है 🚀
अब पहली बार हमारा पूरा Workflow कार्य कर रहा है।
Student Form भरता है।
⬇️
Tally Form Submission होती है।
⬇️
Webhook Trigger होता है।
⬇️
FastAPI Request Receive करता है।
⬇️
Python Program Execute होता है।
पहली बार Form Submit करें और Python में Live Data देखें
अब तक हमने पूरा Setup तैयार कर लिया है। अब समय है यह देखने का कि क्या वास्तव में Student द्वारा भरा गया Form Python तक पहुँच रहा है या नहीं। यही वह क्षण है जहाँ हमारा पहला Workflow सफल होता है।
INFO: 127.0.0.1:53244 -
"POST /tally-webhook HTTP/1.1"
200 OK
- Tally ने Request भेजी।
- FastAPI ने Request Receive की।
- Python Program Execute हुआ।
- Server ने Success Response वापस भेज दिया।
==================================================
New Form Submission
{
"eventId":"...",
"eventType":"FORM_RESPONSE",
"data":{
...
}
}
==================================================
यही Data Tally द्वारा भेजा गया वास्तविक JSON है।
Webhook URL गलत है।
405 Method Not Allowed
GET और POST Method में समस्या है।
500 Internal Server Error
Python Program में कोई Error है।
Connection Failed
ngrok या FastAPI Server बंद है।
हमने वास्तव में क्या प्राप्त किया?
यह केवल एक Form Submission नहीं थी। इस Step में पहली बार Internet पर मौजूद Tally Forms ने हमारे Laptop पर चल रहे Python Program से सफलतापूर्वक संवाद (Communication) किया। यही किसी भी Workflow Automation System की सबसे महत्वपूर्ण उपलब्धि होती है।
⬇️
WordPress Website
⬇️
Embedded Tally Form
⬇️
Webhook
⬇️
ngrok
⬇️
FastAPI
⬇️
Python Program
⬇️
Terminal में JSON Data
JSON Data क्या है? Python इसे कैसे पढ़ता है?
जब आपने पहली बार Tally Form Submit किया, तब Python Terminal में बहुत सारा Data दिखाई दिया। यह Data सामान्य Text नहीं था, बल्कि JSON (JavaScript Object Notation) Format में था। यदि आपको Workflow Automation सीखनी है, तो JSON समझना सबसे आवश्यक है, क्योंकि लगभग सभी आधुनिक Applications, APIs और Webhooks JSON Format में ही Data भेजते हैं।
{
"name":"Rahul Kumar",
"mobile":"9876543210",
"course":"Data Analytics"
}
यह पढ़ने में आसान, हल्का (Lightweight) और लगभग सभी Programming Languages द्वारा समर्थित है।
{
"name":"Rahul",
"mobile":"9876543210"
}
यहाँ
name → Key
Rahul → Value
mobile → Key
9876543210 → Value
data = await request.json()
इसका अर्थ है—
“Tally द्वारा भेजे गए JSON Data को पढ़ो और उसे data नाम के Variable में Store कर दो।”
अब पूरा Form Data Python के पास उपलब्ध है।
{
"eventType":"FORM_RESPONSE",
"data":{
"fields":[
{
"label":"Full Name",
"value":"Rahul Kumar"
},
{
"label":"Mobile Number",
"value":"9876543210"
}
]
}
}
यही वही Data है जो आपने Terminal में देखा था।
- WhatsApp API
- Google Sheets API
- OpenAI API
- Razorpay
- PhonePe
- WordPress REST API
- LearnPress API
student = {
"name":"Rahul",
"course":"Python"
}
अब Data प्राप्त करने के लिए
student["name"]
Output
Rahul
इसी प्रकार Tally द्वारा भेजे गए JSON से भी हम किसी भी Field का Data निकाल सकते हैं।
इस Chapter में आपने क्या सीखा?
✔ JSON क्या है
✔ Key और Value क्या होते हैं
✔ Python में JSON कैसे पढ़ते हैं
✔ await request.json() कैसे कार्य करता है
✔ JSON और Dictionary का सम्बन्ध
✔ API तथा Webhook में JSON क्यों उपयोग किया जाता है
Tally JSON Parsing – Student का Name, Mobile और Course कैसे निकालें?
पिछले Chapter में हमने देखा कि Tally Form Submit होने पर Python को पूरा JSON Data प्राप्त होता है। लेकिन वास्तविक Business Automation में हमें पूरा JSON Print करने की आवश्यकता नहीं होती। हमें केवल आवश्यक जानकारी जैसे Student Name, Mobile Number, Course, Qualification और Preferred Counselling Mode निकालनी होती है। इस प्रक्रिया को JSON Parsing कहा जाता है।
payload = await request.json()
अब पूरा Form Data
payload
नाम के Variable में Store हो चुका है।
fields = payload["data"]["fields"]
अब
fields
में Form की सभी Entries उपलब्ध हैं।
student = {}
for field in fields:
student[field["label"]] = field["value"]
यह Loop सभी Labels और उनके Values को
student
नाम की Dictionary में Store कर देता है।
print(student.get("Full Name *"))
यदि Form में
Rahul Kumar
लिखा गया होगा तो Output होगा
Rahul Kumar
print(student.get("Mobile Number (WhatsApp Active) *"))
Output
9876543210
print(student.get("Which course are you interested in? *"))
Output
Data Analytics
अब यही Value आगे Database, Email तथा WhatsApp Automation में उपयोग होगी।
पूरा Code
payload = await request.json()
fields = payload["data"]["fields"]
student = {}
for field in fields:
student[field["label"]] = field["value"]
print("Name :", student.get("Full Name *"))
print("Mobile :", student.get("Mobile Number (WhatsApp Active) *"))
print("Course :", student.get("Which course are you interested in? *"))
print("Qualification :", student.get("Your Highest Qualification *"))
print("Mode :", student.get("Preferred Counselling Mode *"))
अब Terminal में पूरा JSON दिखाई देने के बजाय केवल वही जानकारी दिखाई देगी जिसकी हमें वास्तव में आवश्यकता है।
========== STUDENT DETAILS ==========
Name : Rahul Kumar
Mobile : 9876543210
Course : Data Analytics
Qualification : Graduate
Mode : Offline
=====================================
✔ Dictionary बनाना
✔ Loop का उपयोग
✔ Label और Value निकालना
✔ केवल आवश्यक Data प्राप्त करना
✔ Business Workflow के लिए Data तैयार करना
Common Errors और उनके Solutions
Programming सीखते समय Error आना बिल्कुल सामान्य बात है। वास्तव में, अधिकांश समय Developers अपना Code लिखने से अधिक समय Errors को समझने और उन्हें ठीक करने में लगाते हैं। इस Project के दौरान हमें भी कई Errors मिलीं। इस Chapter में हम उन्हीं वास्तविक समस्याओं और उनके समाधान (Solutions) को समझेंगे।
'uvicorn' is not recognized as an internal or external command.
कारण
Uvicorn Install नहीं है या सही Environment Activate नहीं किया गया।
Solution
conda activate workflow
pip install uvicorn
ModuleNotFoundError:
No module named 'fastapi'
कारण
FastAPI Install नहीं है।
Solution
pip install fastapi
ngrok config add-authtoken YOUR_TOKEN
फिर
ngrok http 8000
https://xxxxx.ngrok-free.dev
तो यह गलत है।
सही URL होगा
https://xxxxx.ngrok-free.dev/tally-webhook
@app.post("/tally-webhook")
केवल POST Request स्वीकार करता है।
यह सामान्य व्यवहार है।
- Syntax Error
- Indentation Error
- Key Name गलत होना
- JSON Parsing Error
uvicorn main:app --reload
चलता है, तब Server लगातार Requests का इंतजार करता रहता है।
यदि Server बंद करना हो
Ctrl + C
दबाएँ।
- FastAPI Server चल रहा है।
- ngrok चालू है।
- Webhook URL सही है।
- URL के अंत में /tally-webhook लिखा है।
- Form Submit करने के बाद Save किया गया है।
Debugging एक महत्वपूर्ण Skill है
Programming में सबसे सफल Developer वह नहीं होता जो कभी Error नहीं करता, बल्कि वह होता है जो Error को पढ़ना और उसका कारण समझना सीख जाता है। इसलिए Error आने पर घबराएँ नहीं। Terminal में दिखाई देने वाले प्रत्येक Message को ध्यान से पढ़ें। अधिकांश समस्याओं का समाधान वहीं लिखा होता है।
Complete Workflow Diagram – हमने वास्तव में क्या बनाया?
इस Tutorial के दौरान हमने कई अलग-अलग Tools जैसे WordPress, Tally Forms, FastAPI, ngrok और Python का उपयोग किया। यदि इन्हें अलग-अलग देखा जाए तो पूरा Project थोड़ा जटिल लग सकता है, लेकिन वास्तव में ये सभी एक ही Workflow के भाग हैं। आइए अब पूरे Workflow को एक साथ समझते हैं।
Student
│
▼
Vista Academy Website
│
▼
Embedded Tally Form
│
▼
Student Clicks Submit
│
▼
Tally Cloud Server
│
▼
Webhook Trigger
│
▼
ngrok Public URL
│
▼
FastAPI Server
│
▼
Python Program
│
▼
Read JSON Data
│
▼
Display Student Details
- Full Name
- Mobile Number
- Email Address
- Course
- Qualification
- Name
- Mobile Number
- Course
🎯 इस Project का सबसे बड़ा परिणाम
अब आपका Python Program केवल एक साधारण Script नहीं रहा। यह Internet से आने वाले Live Data को Receive कर सकता है। यही तकनीक आगे चलकर CRM, ERP, WhatsApp API, Email Automation, AI Agents तथा Business Process Automation में उपयोग होती है।
निष्कर्ष (Conclusion) और आगे की यात्रा
यदि आपने इस Tutorial को शुरू से अंत तक पूरा किया है, तो आपने केवल Python का एक Program नहीं बनाया, बल्कि एक Real-Time Workflow Automation System की मजबूत नींव तैयार की है। इस Project में हमने सीखा कि किसी User द्वारा Website पर Form Submit करने के बाद उसका Data किस प्रकार Internet के माध्यम से हमारे Python Application तक पहुँचता है और Python उस Data को सफलतापूर्वक Receive करता है। यही आधुनिक Business Automation की शुरुआत है।
- ✔ Workflow Automation क्या है।
- ✔ Business में Automation की आवश्यकता क्यों होती है।
- ✔ Tally Forms का उपयोग कैसे करें।
- ✔ WordPress में Tally Form Embed करना।
- ✔ FastAPI Framework का परिचय।
- ✔ Anaconda और Python Environment तैयार करना।
- ✔ FastAPI तथा Uvicorn Install करना।
- ✔ पहला FastAPI Program बनाना।
- ✔ Uvicorn Server Run करना।
- ✔ ngrok से Local Server को Internet पर उपलब्ध कराना।
- ✔ Tally Webhook Configure करना।
- ✔ Python में Live Form Data Receive करना।
- ✔ JSON Structure समझना।
- ✔ JSON Parsing करके Student Details निकालना।
- ✔ सामान्य Errors तथा उनके Solutions।
Student
↓
WordPress Website
↓
Embedded Tally Form
↓
Tally Cloud
↓
Webhook
↓
ngrok
↓
FastAPI
↓
Python
↓
JSON Data
↓
Student Details
यह एक वास्तविक Live Workflow है, जो Internet से आने वाले Data को Python तक पहुँचाता है।
➡️ Part 2 Python → MySQL Database
➡️ Part 3 MySQL → WordPress User Creation
➡️ Part 4 LearnPress Automatic Enrollment
➡️ Part 5 Email Automation
➡️ Part 6 WhatsApp Automation
➡️ Part 7 PDF Receipt Generation
➡️ Part 8 Admin Dashboard
➡️ Part 9 AI Workflow Automation
➡️ Part 10 Complete CRM Automation
🎓 अंतिम संदेश
Programming केवल Code लिखने का नाम नहीं है। वास्तविक Programming तब शुरू होती है जब अलग-अलग Applications आपस में Communicate करने लगते हैं। इस Tutorial में आपने पहली बार WordPress, Tally Forms, Webhooks, FastAPI, ngrok और Python को एक साथ जोड़कर एक Live Workflow Automation System बनाया। यही तकनीक आज CRM Systems, ERP Software, Payment Gateways, AI Agents, WhatsApp Business Automation और Enterprise Applications में उपयोग की जाती है। यदि आपने यहाँ तक सभी Steps स्वयं करके देखे हैं, तो आप Workflow Automation की मजबूत नींव बना चुके हैं। अगले भाग में हम इस Workflow को और आगे बढ़ाते हुए प्रत्येक Student की जानकारी को MySQL Database में स्वतः Save करेंगे और एक Professional Business Automation System बनाना शुरू करेंगे।
⭐ Happy Learning!
Vista Academy – Learn, Build & Automate with Python 🚀
