# कंप्यूटर-आधारित परीक्षा प्रणाली (CBT Examination System)
# मानक संचालन प्रक्रिया (Standard Operating Procedure - SOP) एवं संस्थान संचालन मार्गदर्शिका

**दस्तावेज़ कोड (Doc Code):** CBT-SOP-2026-HI-V1  
**लक्षित पाठक (Audience):** विद्यालय प्रबंधक (Principals), कॉलेज निदेशक, कोचिंग संचालक, आईटी एडमिनिस्ट्रेटर, कंप्यूटर लैब तकनीशियन एवं परीक्षा कक्ष निरीक्षक (Invigilators)  
**संस्करण:** संस्थागत स्टैंडअलोन एवं लोकल नेटवर्क संस्करण (Institutional Standalone Edition)  
**मुख्य सॉफ्टवेयर वास्तुकार एवं डेवलपर:** पंकज कुमार (Pankaj Kumar)  
**आधिकारिक डेवलपर संपर्क ईमेल:** [mpitpankajk@gmail.com](mailto:mpitpankajk@gmail.com)  

---

## विषय सूची (Table of Contents)
1. [सिस्टम परिचय एवं प्रमुख तकनीकी विशेषताएँ](#1-सिस्टम-परिचय-एवं-प्रमुख-तकनीकी-विशेषताएँ)
2. [न्यूनतम हार्डवेयर एवं नेटवर्क आवश्यकताएँ](#2-न्यूनतम-हार्डवेयर-एवं-नेटवर्क-आवश्यकताएँ)
3. [सॉफ्टवेयर आवश्यकता एवं 1-क्लिक इंस्टॉलेशन प्रक्रिया](#3-सॉफ्टवेयर-आवश्यकता-एवं-1-क्लिक-इंस्टॉलेशन-प्रक्रिया)
4. [संस्थान पंजीकरण एवं स्वचालित ब्रांडिंग सेटअप](#4-संस्थान-पंजीकरण-एवं-स्वचालित-ब्रांडिंग-सेटअप)
5. [दैनिक सर्वर संचालन एवं सिस्टम चालू करना](#5-दैनिक-सर्वर-संचालन-एवं-सिस्टम-चालू-करना)
6. [लोकल नेटवर्क (Wi-Fi / LAN) सेटअप एवं विंडोज़ फ़ायरवॉल सेटिंग्स](#6-लोकल-नेटवर्क-wi-fi--lan-सेटअप-एवं-विंडोज़-फ़ायरवॉल-सेटिंग्स)
7. [विद्यार्थी रोल नंबर, पासवर्ड जेनरेशन एवं प्रवेश पत्र (Admit Card) प्रिंटिंग](#7-विद्यार्थी-रोल-नंबर-पासवर्ड-जेनरेशन-एवं-प्रवेश-पत्र-admit-card-प्रिंटिंग)
8. [एक्सेल (Excel .xlsx) द्वारा प्रश्न पत्र निर्माण एवं अपलोड](#8-एक्सेल-excel-xlsx-द्वारा-प्रश्न-पत्र-निर्माण-एवं-अपलोड)
9. [लाइव परीक्षा कक्ष नियंत्रण केंद्र (Live Invigilator Command Center)](#9-लाइव-परीक्षा-कक्ष-नियंत्रण-केंद्र-live-invigilator-command-center)
10. [विद्यार्थी परीक्षा स्क्रीन (NTA/GATE स्टाइल) एवं नकल-रोधी तकनीक](#10-विद्यार्थी-परीक्षा-स्क्रीन-ntagate-स्टाइल-एवं-नकल-रोधी-तकनीक)
11. [स्वचालित मूल्यांकन, मेरिट लिस्ट एवं आधिकारिक रिजल्ट रिपोर्ट](#11-स्वचालित-मूल्यांकन-मेरिट-लिस्ट-एवं-आधिकारिक-रिजल्ट-रिपोर्ट)
12. [विद्यार्थी स्व-पंजीकरण, पैकेज एवं भुगतान स्वीकृति (वैकल्पिक)](#12-विद्यार्थी-स्व-पंजीकरण-पैकेज-एवं-भुगतान-स्वीकृति-वैकल्पिक)
13. [समस्या निवारण तालिका (Troubleshooting Matrix) एवं अक्सर पूछे जाने वाले प्रश्न](#13-समस्या-निवारण-तालिका-troubleshooting-matrix-एवं-अक्सर-पूछे-जाने-वाले-प्रश्न)
14. [परीक्षा-पूर्व, परीक्षा-दिवस एवं परीक्षा-उपरांत चेकलिस्ट](#14-परीक्षा-पूर्व-परीक्षा-दिवस-एवं-परीक्षा-उपरांत-चेकलिस्ट)
15. [आपातकालीन त्वरित संदर्भ कार्ड (Emergency Quick Card)](#15-आपातकालीन-त्वरित-संदर्भ-कार्ड-emergency-quick-card)

---

## 1. सिस्टम परिचय एवं प्रमुख तकनीकी विशेषताएँ

**CBT Examination System** एक आधुनिक, सुरक्षित और अत्यधिक तीव्र कंप्यूटर-आधारित परीक्षा इंजन है, जिसे विशेष रूप से भारतीय विद्यालयों, कॉलेजों, प्रतियोगी कोचिंग संस्थानों और परीक्षण केंद्रों के लिए डिज़ाइन किया गया है।

### इस सॉफ्टवेयर की प्रमुख खूबियाँ:
- **इंटरनेट की शून्य आवश्यकता (Zero Internet Dependency):** यह सॉफ्टवेयर संस्थान के लोकल नेटवर्क (लोकल वाई-फाई या लैन केबल) पर 100% ऑफ़लाइन काम करता है। परीक्षा के दौरान इंटरनेट ब्रॉडबैंड या मोबाइल डेटा की बिल्कुल भी ज़रूरत नहीं होती।
- **किसी भी डिवाइस पर समर्थित:** कंप्यूटर लैब के डेस्कटॉप पीसी, लैपटॉप, टैबलेट या छात्रों के स्मार्टफोन—सभी पर बिना कोई ऐप डाउनलोड किए सीधे वेब ब्राउज़र (Chrome, Edge, Firefox) में परीक्षा आयोजित की जा सकती है।
- **तत्काल ऑटो-सेव (100% डेटा सुरक्षा):** छात्र द्वारा चुने गए प्रत्येक उत्तर को उसी मिलीसेकंड में सर्वर के सुरक्षित डेटाबेस में सहेज लिया जाता है। यदि परीक्षा के दौरान बिजली चली जाए या छात्र का कंप्यूटर बंद हो जाए, तो एक भी उत्तर नष्ट नहीं होता।
- **NTA एवं GATE मानक इंटरफ़ेस:** नेशनल टेस्टिंग एजेंसी (NTA) की तरह कलर-कोडेड प्रश्न पैलेट (हरा = हल किया, लाल = अनुत्तरित, बैंगनी = समीक्षा हेतु चिह्नित)।
- **लाइव परीक्षा नियंत्रण केंद्र (Master Control Center):** निरीक्षक एक ही क्लिक से सभी छात्रों की परीक्षा एक साथ शुरू, रोक (Pause), अतिरिक्त 5 मिनट जोड़ (+5 Mins), या समाप्त (End Test) कर सकते हैं।
- **त्वरित परिणाम एवं मेरिट सूची:** परीक्षा समाप्त होते ही तुरंत स्कोरकार्ड, नकारात्मक अंकन (Negative Marking) गणना, रैंक लिस्ट, एक्सेल रिपोर्ट और हल सहित पीडीएफ आंसर-शीट तैयार हो जाती है।

---

## 2. न्यूनतम हार्डवेयर एवं नेटवर्क आवश्यकताएँ

### 2.1 सर्वर कंप्यूटर (प्रशासक / शिक्षक का पीसी)
यह वह मुख्य कंप्यूटर होगा जिस पर CBT सॉफ्टवेयर चलेगा:
- **ऑपरेटिंग सिस्टम:** Windows 10, Windows 11, Windows Server (64-बिट), या Linux/macOS।
- **प्रोसेसर:** Intel Core i3 (छठी पीढ़ी या नया) अथवा AMD Ryzen 3 या उससे बेहतर।
- **रैम (RAM):** न्यूनतम 4 GB (100+ विद्यार्थियों के लिए 8 GB अनुशंसित)।
- **हार्ड डिस्क / SSD स्पेस:** कम से कम 1 GB रिक्त स्थान।
- **नेटवर्क कनेक्शन:** ईथरनेट LAN केबल (सर्वश्रेष्ठ प्रदर्शन हेतु) अथवा 5GHz वाई-फाई।

### 2.2 विद्यार्थी टर्मिनल (Client Devices)
विद्यार्थी जिन कंप्यूटरों या मोबाइलों पर परीक्षा देंगे:
- **डिवाइस:** कंप्यूटर लैब का डेस्कटॉप पीसी, लैपटॉप, टैबलेट या स्मार्टफ़ोन।
- **ब्राउज़र:** Google Chrome, Microsoft Edge, Mozilla Firefox, Brave, अथवा Safari।
- **रैम:** कम से कम 1 GB।
- **स्क्रीन रिज़ॉल्यूशन:** कंप्यूटर पर 1024x768 या अधिक; मोबाइल पर ऑटो-रेस्पॉन्सिव।

### 2.3 नेटवर्क उपकरण (Wi-Fi Router / LAN Switch)
- **30 छात्रों तक की परीक्षा:** एक सामान्य घरेलू वाई-फाई राउटर (Wi-Fi 5 या Wi-Fi 6)।
- **30 से 80 छात्रों की परीक्षा:** डुअल-बैंड वाई-फाई राउटर (2.4GHz + 5GHz) अथवा 24-पोर्ट 100/1000 Mbps ईथरनेट स्विच।
- **100 से अधिक छात्र:** संस्थान का गीगाबिट स्विच अथवा मल्टीपल वाई-फाई एक्सेस पॉइंट्स।
- *महत्वपूर्ण:* राउटर में इंटरनेट कनेक्शन (Internet Wire) लगाने की कोई आवश्यकता नहीं है।

---

## 3. सॉफ्टवेयर आवश्यकता एवं 1-क्लिक इंस्टॉलेशन प्रक्रिया

### चरण 3.1: पायथन (Python 3.10+) इंस्टॉल करना (केवल पहली बार)
यदि आपके सर्वर कंप्यूटर पर पहले से पायथन इंस्टॉल नहीं है:
1. पायथन की आधिकारिक वेबसाइट खोलें: [https://www.python.org/downloads/](https://www.python.org/downloads/)
2. **Python 3.10** या उससे नया वर्ज़न (3.11, 3.12, 3.13) डाउनलोड करें।
3. डाउनलोड की गई फ़ाइल को चलाएँ (Run Installer)।
4. **अत्यंत महत्वपूर्ण कदम (CRITICAL):**  
   इंस्टॉलर स्क्रीन के सबसे नीचे दिखने वाले इस चेकबॉक्स पर **अवश्य टिक करें**:
   ```
   [x] Add python.exe to PATH (या "Add Python to PATH")
   ```
5. इसके बाद **Install Now** पर क्लिक करें और इंस्टॉलेशन पूरा होने दें।

> ⚠️ **सावधानी:** यदि आपने *"Add Python to PATH"* पर टिक नहीं किया, तो विंडोज़ बैच फ़ाइलें (`setup_and_install.bat` और `run_cbt.bat`) पायथन को नहीं ढूँढ पाएँगी और एरर आ जाएगा।

### चरण 3.2: CBT_Setup फ़ोल्डर निकालना
1. प्राप्त `CBT_Setup.zip` को अनज़िप (Extract) करें और फ़ोल्डर को सुरक्षित स्थान पर रखें, जैसे:
   ```
   C:\CBT_Setup
   ```
   *(अथवा `D:\CBT_Setup`)*

### चरण 3.3: स्वचालित 1-क्लिक इंस्टॉलर चलाना
1. `CBT_Setup` फ़ोल्डर खोलें और इस फ़ाइल पर डबल-क्लिक करें:
   ```
   setup_and_install.bat
   ```
2. यह ऑटो-इंस्टॉलर स्वयं निम्नलिखित कार्य करेगा:
   - पायथन वातावरण की जाँच करेगा।
   - एक सुरक्षित आइसोलेटेड वर्चुअल वातावरण (`venv`) बनाएगा।
   - सभी आवश्यक लाइब्रेरीज़ (`fastapi`, `uvicorn`, `openpyxl`, `reportlab`, `qrcode`, `websockets`) स्वचालित रूप से इंस्टॉल करेगा।
   - CBT सर्वर को पोर्ट `8000` पर चालू करेगा।
   - आपके कंप्यूटर के ब्राउज़र में सीधे **संस्थान पंजीकरण पृष्ठ (Institute Setup Page)** खोल देगा।

---

## 4. संस्थान पंजीकरण एवं स्वचालित ब्रांडिंग सेटअप

पहली बार सॉफ्टवेयर चलने पर स्क्रीन पर **Institute Registration & Branding** का पेज खुलेगा।

### भरे जाने वाले विवरण:
1. **School / Institute Name (संस्थान का नाम)** *(अनिवार्य)*:  
   *उदाहरण: "आदर्श पब्लिक स्कूल एवं इंटर कॉलेज"* अथवा *"Apex Institute of Technology"*
2. **Campus / Center Address (संस्थान का पता)** *(अनिवार्य)*:  
   *उदाहरण: "स्टेशन रोड, सिविल लाइंस, प्रयागराज, उत्तर प्रदेश - 211001"*
3. **Official Contact Number (मोबाइल / फ़ोन नंबर)** *(अनिवार्य)*:  
   *उदाहरण: "+91 98765 43210"*
4. **Official Email Address (आधिकारिक ईमेल)** *(अनिवार्य)*:  
   *उदाहरण: "exam@apexacademy.edu"*
5. **Registration / Affiliation Number (पंजीकरण / मान्यता क्रमांक)** *(वैकल्पिक)*:  
   *उदाहरण: "CBSE-AFF-2026-9821"*
6. **UDISE+ / School Code (यू-डायस या सेंटर कोड)** *(वैकल्पिक)*:  
   *उदाहरण: "UDISE-09140203011"*
7. **New Admin Password (नया एडमिन पासवर्ड)** *(वैकल्पिक, डिफ़ॉल्ट पासवर्ड `admin123` है)*:  
   *यदि आप चाहें तो अपना नया गुप्त पासवर्ड यहाँ दर्ज कर सकते हैं।*

### प्रोफ़ाइल सुरक्षित करना
- नीचे दिए गए **"Save Profile & Launch Examination System"** बटन पर क्लिक करें।
- आपका संस्थान पंजीकृत हो जाएगा और सभी छात्रों की परीक्षा स्क्रीन, प्रवेश पत्र, आंसर-शीट और पीडीएफ फाइलों पर आपके संस्थान का नाम व लोगो स्वचालित रूप से आ जाएगा।
- मुख्य सॉफ्टवेयर डेवलपर (**पंकज कुमार** - `mpitpankajk@gmail.com`) का क्रेडिट सिस्टम फ़ूटर में सुरक्षित रूप से दर्ज रहेगा।

---

## 5. दैनिक सर्वर संचालन एवं सिस्टम चालू करना

प्रारंभिक इंस्टॉलेशन के बाद, दैनिक रूप से सॉफ्टवेयर चलाने के लिए केवल एक क्लिक करना होता है।

### दैनिक रूप से चालू करने की विधि:
1. `CBT_Setup` फ़ोल्डर में जाएँ और इस फ़ाइल पर डबल-क्लिक करें:
   ```
   run_cbt.bat
   ```
2. एक ब्लैक कमांड विंडो खुलेगी जिसमें निम्नलिखित जानकारी दिखेगी:
   ```
   ===============================================================================
                     CBT EXAMINATION SYSTEM - SERVER LAUNCHER
                Software Developed by Pankaj Kumar (mpitpankajk@gmail.com)
   ===============================================================================
   Starting CBT Examination Server on port 8000...
   Portal URL: http://localhost:8000
   ```
3. आपका वेब ब्राउज़र स्वतः `http://localhost:8000` पर खुल जाएगा।
4. इस काली कमांड विंडो को मिनिमाइज़ (Minimize) कर दें। **परीक्षा के दौरान इस विंडो को बंद न करें।**

---

## 6. लोकल नेटवर्क (Wi-Fi / LAN) सेटअप एवं विंडोज़ फ़ायरवॉल सेटिंग्स

छात्रों के कंप्यूटर और मोबाइल को सर्वर से जोड़ने की आसान विधि:

### चरण 6.1: समान नेटवर्क से जोड़ना
सुनिश्चित करें कि सर्वर पीसी और सभी छात्रों के कंप्यूटर/मोबाइल **एक ही वाई-फाई राउटर अथवा लैन स्विच** से जुड़े हैं।

### चरण 6.2: सर्वर का लोकल आईपी (Local IP) जानना
1. सर्वर कंप्यूटर पर एडमिन डैशबोर्ड खोलें: `http://localhost:8000/admin`
2. ऊपर बाईं ओर कार्ड में देखें: **"Local Exam Address"**
3. वहाँ आपके कंप्यूटर का लोकल आईपी एड्रेस दिखेगा, जैसे:
   ```
   http://192.168.1.15:8000
   ```
4. वहाँ दिए गए **"Scan QR"** बटन पर क्लिक करें। स्क्रीन पर एक क्यूआर कोड आ जाएगा। मोबाइल या टैबलेट वाले छात्र केवल कैमरा से इस क्यूआर कोड को स्कैन करके सीधे परीक्षा पोर्टल पर पहुँच सकते हैं।

### चरण 6.3: विंडोज़ फ़ायरवॉल में पोर्ट 8000 खोलना (अति महत्वपूर्ण)
यदि छात्रों के कंप्यूटर पर आईपी डालने पर *"Site can't be reached"* या लोड न होने की समस्या आए, तो विंडोज़ फ़ायरवॉल पोर्ट 8000 को ब्लॉक कर रहा होता है। इसे 1 मिनट में ठीक करें:

**विधि 1: 1-क्लिक पावरशेल कमांड (PowerShell Run as Administrator):**
```powershell
New-NetFirewallRule -DisplayName "CBT Exam Server Port 8000" -Direction Inbound -LocalPort 8000 -Protocol TCP -Action Allow
```

**विधि 2: विंडोज़ सेटिंग्स द्वारा:**
1. कीबोर्ड पर `Windows + R` दबाएँ, `control firewall.cpl` टाइप करें और Enter दबाएँ।
2. बाईं ओर **Advanced settings** पर क्लिक करें।
3. **Inbound Rules** चुनें -> दाईं ओर **New Rule...** पर क्लिक करें।
4. **Port** चुनें -> **Next** दबाएँ।
5. **TCP** चुनें, और **Specific local ports** में लिखें: `8000` -> **Next** दबाएँ।
6. **Allow the connection** चुनें -> **Next** दबाएँ।
7. तीनों बॉक्स चेक रखें (**Domain, Private, Public**) -> **Next** दबाएँ।
8. नियम का नाम दें: `CBT Exam Server` -> **Finish** पर क्लिक करें।

अब किसी भी छात्र का कंप्यूटर बिना किसी रुकावट के सर्वर से कनेक्ट हो जाएगा!

---

## 7. विद्यार्थी रोल नंबर, पासवर्ड जेनरेशन एवं प्रवेश पत्र (Admit Card) प्रिंटिंग

एडमिनिस्ट्रेटर को एक-एक करके छात्र जोड़ने की ज़रूरत नहीं है। सिस्टम बल्क में खाते बनाता है।

### चरण 7.1: बैच में छात्र खाते बनाना
1. एडमिन डैशबोर्ड में जाएँ: `http://localhost:8000/admin`
2. **Student Credentials & Accounts** अनुभाग में जाएँ।
3. **"Batch Generate IDs"** बटन पर क्लिक करें:
   - **Prefix:** रोल नंबर का प्रीफिक्स डालें (जैसे: `STU-` या `2026-` या `CLASS10-`)
   - **Count:** कितने छात्रों के खाते बनाने हैं (जैसे: `50` या `100`)
   - **Batch Name:** बैच का नाम लिखें (जैसे: `Morning Batch 2026`)
4. **Generate Accounts** पर क्लिक करें।
5. सिस्टम तुरंत अद्वितीय रोल नंबर (जैसे `STU-1001` से `STU-1050`) और हर छात्र के लिए अलग-अलग मजबूत व याद रहने वाला पासवर्ड तैयार कर देगा।

### चरण 7.2: एक्सेल शीट डाउनलोड करना
- **"Export Credentials Excel"** पर क्लिक करें। एक एक्सेल फाइल डाउनलोड होगी जिसमें सभी छात्रों के रोल नंबर, नाम, बैच और पासवर्ड सुरक्षित रहेंगे।

### चरण 7.3: आधिकारिक प्रवेश पत्र (Admit Cards) प्रिंट करना
- **"Print Admit Cards"** पर क्लिक करें।
- सभी छात्रों के खूबसूरत प्रवेश पत्र एक क्लिक में स्क्रीन पर आ जाएँगे।
- प्रत्येक प्रवेश पत्र में:
  - संस्थान का नाम व वॉटरमार्क
  - रोल नंबर / यूज़र आईडी
  - परीक्षा पासवर्ड
  - परीक्षा नियम एवं निर्देश
  - छात्र हस्ताक्षर एवं निरीक्षक सत्यापन बॉक्स
- इसे सीधे प्रिंटर से प्रिंट करके छात्रों में बाँट दें।

---

## 8. एक्सेल (Excel .xlsx) द्वारा प्रश्न पत्र निर्माण एवं अपलोड

प्रश्न पत्र टाइप करने में समय बर्बाद करने की कोई आवश्यकता नहीं है। आप सीधे एक्सेल में प्रश्न तैयार करके अपलोड कर सकते हैं।

### चरण 8.1: नमूना एक्सेल प्रारूप डाउनलोड करना
1. एडमिन डैशबोर्ड में **"Download Sample Excel"** पर क्लिक करें (या फ़ोल्डर में मौजूद `sample_questions.xlsx` खोलें)।
2. इस फ़ाइल में प्रश्नों का मानक फ़ॉर्मैट बना हुआ है।

### चरण 8.2: एक्सेल कॉलम की बनावट

| कॉलम का नाम (Header) | विवरण | उदाहरण |
|---|---|---|
| **Question Number** | प्रश्न संख्या | `1`, `2`, `3` |
| **Question Text** | पूरा प्रश्न (हिंदी व अंग्रेज़ी दोनों मान्य) | `भारत की राजधानी क्या है?` |
| **Option A** | पहला विकल्प | `मुंबई` |
| **Option B** | दूसरा विकल्प | `नई दिल्ली` |
| **Option C** | तीसरा विकल्प | `कोलकाता` |
| **Option D** | चौथा विकल्प | `चेन्नई` |
| **Correct Option** | सही उत्तर का अक्षर (`A`, `B`, `C`, या `D`) | `B` |
| **Marks** | सही उत्तर पर मिलने वाले अंक | `4.0` |
| **Negative Marks** | गलत उत्तर पर कटने वाले अंक (0 = कोई निगेटिव नहीं) | `1.0` |
| **Section / Subject** | विषय या अनुभाग का नाम | `सामान्य ज्ञान`, `गणित`, `भौतिकी` |
| **Explanation** | प्रश्न का विस्तृत हल/व्याख्या (समीक्षा हेतु) | `1911 में नई दिल्ली को राजधानी घोषित किया गया था।` |

### चरण 8.3: प्रश्न पत्र अपलोड करना
1. एडमिन डैशबोर्ड पर **"Upload New Test Paper"** बटन दबाएँ।
2. निम्नलिखित विवरण भरें:
   - **Test Title:** परीक्षा का नाम (जैसे: *"वार्षिक मॉक टेस्ट 2026 - विज्ञान एवं गणित"*)
   - **Description:** परीक्षा का संक्षिप्त विवरण
   - **Duration (Minutes):** समय मिनटों में (जैसे: `60` मिनट)
   - **Marks per Correct:** सही उत्तर के अंक (जैसे: `4.0`)
   - **Negative Marks:** निगेटिव मार्किंग (जैसे: `1.0` अथवा `0`)
3. **Choose File** पर क्लिक करके अपनी एक्सेल फ़ाइल (`.xlsx`) चुनें।
4. **"Create & Upload Test"** पर क्लिक करें।
5. सिस्टम सभी प्रश्नों की तुरंत पुष्टि करेगा और टेस्ट परीक्षा हेतु तैयार हो जाएगा।

---

## 9. लाइव परीक्षा कक्ष नियंत्रण केंद्र (Live Invigilator Command Center)

परीक्षा के दिन कक्ष निरीक्षक एडमिन डैशबोर्ड से **Live Monitor** (`/admin/live/<test_id>`) खोलते हैं।

### चरण 9.1: छात्रों का लॉगिन
1. छात्र अपने कंप्यूटर पर सर्वर का एड्रेस खोलते हैं: `http://<SERVER_IP>:8000`
2. छात्र अपने प्रवेश पत्र में लिखा **User ID** और **Password** डालते हैं।
3. लॉगिन करते ही छात्र के सामने निर्देश स्क्रीन आ जाती है और संदेश दिखता है:  
   *"परीक्षा निरीक्षक द्वारा शुरू किए जाने की प्रतीक्षा है..."*

### चरण 9.2: लाइव छात्र ग्रिड (Real-time Student Grid)
निरीक्षक की स्क्रीन पर परीक्षा दे रहे सभी विद्यार्थियों का कार्ड दिखता है:
- 🟢 **Online Status:** हरा निशान = छात्र कनेक्ट है; लाल = डिस्कनेक्ट।
- **Current Question:** छात्र इस समय किस प्रश्न पर है।
- **Progress:** कितने प्रश्न हल किए, कितने रिव्यू में रखे, कितने बाकी हैं।
- **Tab Switch Count:** छात्र ने ब्राउज़र छोड़कर दूसरी विंडो खोलने की कितनी बार कोशिश की (नकल चेतावनी)।

### चरण 9.3: मास्टर कंट्रोल बटन
निरीक्षक स्क्रीन के शीर्ष पर 5 मुख्य नियंत्रण बटन होते हैं:
1. **▶ START TEST FOR ALL (सभी के लिए परीक्षा शुरू करें):**
   - एक क्लिक से सभी छात्रों की स्क्रीन तुरंत खुल जाती है।
   - सभी छात्रों का टाइमर एक साथ शुरू हो जाता है।
2. **⏸ PAUSE TEST (परीक्षा रोकें):**
   - सभी छात्रों की स्क्रीन तुरंत फ्रीज़ हो जाती है और स्क्रीन पर नोटिस आ जाता है।
   - टाइमर रुक जाता है। परीक्षा हॉल में कोई ज़रूरी घोषणा करने के लिए उपयोगी।
3. **▶ RESUME TEST (पुनः चालू करें):**
   - टाइमर फिर से चलने लगता है और छात्रों की स्क्रीन अनफ्रीज़ हो जाती है।
4. **⏱ +5 MINS EXTENDER (5 मिनट अतिरिक्त जोड़ें):**
   - परीक्षा दे रहे सभी छात्रों के टाइमर में सीधे 5 मिनट का अतिरिक्त समय जुड़ जाता है।
5. **⏹ END TEST (परीक्षा समाप्त करें):**
   - सभी छात्रों की परीक्षा तुरंत स्वतः सबमिट हो जाती है और टेस्ट लॉक हो जाता है।

### चरण 9.4: लाइव सुरक्षा लॉग (Anti-Cheat Ticker)
स्क्रीन के दाईं ओर पल-पल की गतिविधि दर्ज होती रहती है (जैसे: किस छात्र ने उत्तर बदला, किसने टैब बदलने का प्रयास किया)।

---

## 10. विद्यार्थी परीक्षा स्क्रीन (NTA/GATE स्टाइल) एवं नकल-रोधी तकनीक

### 10.1 परीक्षा स्क्रीन की बनावट
- **ऊपरी पट्टी (Top Bar):** परीक्षा का नाम, छात्र का नाम, रोल नंबर, और उल्टा चलता टाइमर (Countdown Timer)।
- **प्रश्न पैलेट (Question Palette):**
  - 🟩 **हरा रंग:** प्रश्न का उत्तर दे दिया गया है।
  - 🟥 **लाल रंग:** प्रश्न देखा है, किंतु उत्तर नहीं दिया।
  - 🟪 **बैंगनी रंग:** समीक्षा हेतु चिह्नित (Marked for Review)।
  - ⬜ **सलेटी रंग:** अभी तक प्रश्न नहीं देखा (Not Visited)।
- **नेविगेशन बटन:**
  - **Save & Next:** उत्तर सुरक्षित करें और अगले प्रश्न पर जाएँ।
  - **Mark for Review & Next:** बाद में देखने हेतु मार्क करें।
  - **Clear Response:** चुना हुआ विकल्प हटाएं।
  - **Submit Test:** परीक्षा समाप्त करने का बटन (सबमिट करने से पहले कुल हल किए गए प्रश्नों की समरी दिखती है)।

### 10.2 नकल-रोधी तकनीक (Anti-Cheat Security)
- **फुलस्क्रीन लॉक:** परीक्षा फुल-स्क्रीन में चलती है।
- **टैब-स्विच पकड़ना:** यदि छात्र Google सर्च करने या दूसरा टैब खोलने का प्रयास करता है, तो तुरंत स्क्रीन पर लाल चेतावनी बॉक्स खुल जाता है और एडमिन को अलर्ट चला जाता है।
- **राइट-क्लिक एवं कॉपी-पेस्ट निषेध:** छात्र प्रश्न टेक्स्ट कॉपी नहीं कर सकते और राइट-क्लिक पूरी तरह बंद रहता है।

---

## 11. स्वचालित मूल्यांकन, मेरिट लिस्ट एवं आधिकारिक रिजल्ट रिपोर्ट

परीक्षा समाप्त होते ही परिणाम स्वतः तैयार हो जाता है। शिक्षक को एक भी कॉपी जाँचने की आवश्यकता नहीं होती।

### 11.1 रिजल्ट डैशबोर्ड (`/admin/results/<test_id>`)
- **सांख्यिकी (KPIs):** कुल परीक्षार्थी, औसत अंक (Average), उच्चतम अंक (Topper), न्यूनतम अंक, उत्तीर्ण प्रतिशत।
- **मेरिट सूची (Rank List):**
  - रैंक (रैंक 1, 2, 3...)
  - छात्र का रोल नंबर व नाम
  - कुल हल किए गए प्रश्न
  - सही उत्तरों की संख्या
  - गलत उत्तरों की संख्या
  - शुद्धता प्रतिशत (Accuracy %)
  - कुल प्राप्तांक (Negative Marking घटाने के बाद)

### 11.2 एक्सेल में रिजल्ट डाउनलोड करना
- **"Export Excel Report"** बटन पर क्लिक करें। पूरा मेरिट चार्ट एक्सेल शीट (`.xlsx`) में डाउनलोड हो जाएगा।

### 11.3 छात्र की व्यक्तिगत आधिकारिक पीडीएफ आंसर-शीट
- किसी भी छात्र के नाम के आगे **"Download Answer Sheet (PDF)"** पर क्लिक करें।
- तैयार पीडीएफ में:
  - संस्थान का नाम व लोगो
  - छात्र का विवरण एवं प्राप्तांक
  - प्रत्येक प्रश्न का विश्लेषण: छात्र ने क्या विकल्प चुना, सही उत्तर क्या था, और विस्तृत हल।

### 11.4 सभी आंसर-शीट एक साथ ज़िप (ZIP) फ़ाइल में डाउनलोड करना
- **"Download All Answer Sheets (ZIP)"** पर क्लिक करने पर सभी छात्रों की अलग-अलग पीडीएफ फाइलें एक ही ज़िप फोल्डर में डाउनलोड हो जाती हैं।

---

## 12. विद्यार्थी स्व-पंजीकरण, पैकेज एवं भुगतान स्वीकृति (वैकल्पिक)

यदि आपका संस्थान ओपन टेस्ट सीरीज़ आयोजित करता है और छात्रों से टेस्ट शुल्क लेता है:
- **छात्र रजिस्ट्रेशन:** छात्र सीधे `http://<SERVER_IP>:8000/register` पर जाकर अपना खाता बना सकते हैं।
- **मुफ्त ट्रायल:** नए छात्र को 1 टेस्ट का फ्री ट्रायल मिलता है।
- **यूपीआई पेमेंट (UPI QR Code):** छात्र पैकेज चुनकर संस्थान के यूपीआई क्यूआर कोड पर भुगतान करके यूटीआर (UTR) नंबर सबमिट करते हैं।
- **एडमिन स्वीकृति:** एडमिन `/api/admin/payments` पर जाकर यूटीआर चेक करके **Approve** दबाते ही छात्र के खाते में टेस्ट क्रेडिट जुड़ जाता है।

*(संस्थान के आंतरिक छात्रों की नियमित परीक्षा के लिए इस फीचर की आवश्यकता नहीं है; एडमिन सीधे बैच बना सकते हैं।)*

---

## 13. समस्या निवारण तालिका (Troubleshooting Matrix) एवं अक्सर पूछे जाने वाले प्रश्न

| समस्या / एरर संदेश | मुख्य कारण | सटीक एवं त्वरित समाधान |
|---|---|---|
| **`python: command not found`** या बैच फ़ाइल तुरंत बंद होना | पायथन इंस्टॉल करते समय "Add Python to PATH" पर टिक नहीं किया गया था। | पायथन का इंस्टॉलर दोबारा चलाएं, **Modify** चुनें, और **Add python.exe to PATH** पर टिक करके आगे बढ़ें। |
| **छात्र के कंप्यूटर पर *"Site can't be reached"* आना** | सर्वर पीसी का विंडोज़ फ़ायरवॉल पोर्ट 8000 को रोक रहा है। | पावरशेल को Run as Administrator खोलें और यह कमांड चलाएँ: `New-NetFirewallRule -DisplayName "CBT 8000" -Direction Inbound -LocalPort 8000 -Protocol TCP -Action Allow`। सुनिश्चित करें दोनों कंप्यूटर एक ही वाई-फाई पर हैं। |
| **परीक्षा के बीच में सर्वर की काली विंडो गलती से बंद हो गई** | किसी ने कमांड विंडो बंद कर दी या पीसी रीस्टार्ट हो गया। | **घबराएँ नहीं!** दोबारा `run_cbt.bat` पर डबल-क्लिक कर दें। सर्वर तुरंत चालू हो जाएगा। एक भी छात्र का डेटा नष्ट नहीं हुआ है, सभी उत्तर पहले से डेटाबेस में सुरक्षित हैं। छात्र पेज रिफ्रेश करके परीक्षा जारी रख सकते हैं। |
| **किसी छात्र का कंप्यूटर बंद हो गया या लाइट चली गई** | छात्र के कंप्यूटर में हार्डवेयर या बिजली की समस्या। | उस कंप्यूटर को रीस्टार्ट करें (या छात्र को किसी दूसरे खाली कंप्यूटर पर बैठाएँ)। छात्र अपने उसी रोल नंबर और पासवर्ड से लॉगिन करेगा। उसका समय और पहले दिए गए सभी उत्तर वहीं से वापस शुरू हो जाएँगे। |
| **एक्सेल प्रश्न पत्र अपलोड करते समय एरर आना** | कॉलम के नाम में गलती या Correct Option में A, B, C, D के अलावा कुछ लिखा होना। | नमूना एक्सेल फ़ाइल (`sample_questions.xlsx`) से कॉलम के नाम मिलाएँ। **Correct Option** में केवल एक अंग्रेजी अक्षर (`A`, `B`, `C`, या `D`) ही लिखें। शीट के अंत में खाली पंक्तियाँ हटा दें। |
| **छात्र परीक्षा के दिन पासवर्ड भूल गया** | प्रवेश पत्र खो गया। | एडमिन डैशबोर्ड में छात्र सूची में जाकर छात्र का पासवर्ड सीधे देख सकते हैं अथवा **Reset Password** पर क्लिक करके तुरंत नया पासवर्ड बना सकते हैं। |
| **एडमिन पासवर्ड भूल जाने पर** | डिफ़ॉल्ट पासवर्ड खो गया। | डिफ़ॉल्ट पासवर्ड `admin123` है। यदि आपने बदला था और भूल गए, तो फ़ोल्डर में `.env` फ़ाइल खोलकर चेक करें अथवा डेवलपर से संपर्क करें (`mpitpankajk@gmail.com`)। |

---

## 14. परीक्षा-पूर्व, परीक्षा-दिवस एवं परीक्षा-उपरांत चेकलिस्ट

### 14.1 परीक्षा से 1 दिन पूर्व की चेकलिस्ट
- [ ] सर्वर कंप्यूटर पर `run_cbt.bat` चलाकर देख लें कि सिस्टम सही खुल रहा है।
- [ ] प्रश्न पत्र एक्सेल में तैयार करके एडमिन डैशबोर्ड में अपलोड कर लें।
- [ ] टेस्ट की जाँच कर लें कि प्रश्नों की संख्या और अंक सही हैं।
- [ ] छात्रों के रोल नंबर बैच में जनरेट कर लें।
- [ ] छात्रों के प्रवेश पत्र (Admit Cards) प्रिंट करके बाँट दें।
- [ ] कंप्यूटर लैब के किसी एक कंप्यूटर से सर्वर का एड्रेस खोलकर टेस्ट कर लें।

### 14.2 परीक्षा के दिन की चेकलिस्ट (परीक्षा से 30 मिनट पहले)
- [ ] सर्वर कंप्यूटर चालू करें और उसे लैन केबल द्वारा राउटर से जोड़ें।
- [ ] `run_cbt.bat` चलाएँ और उस विंडो को मिनिमाइज़ रखें।
- [ ] एडमिन डैशबोर्ड में **Live Monitor** खोलें।
- [ ] ब्लैकबोर्ड पर सर्वर का एड्रेस (जैसे `http://192.168.1.15:8000`) लिख दें।
- [ ] सभी छात्रों को अपने कंप्यूटर पर लॉगिन करने को कहें।
- [ ] लाइव मॉनिटर पर देखें कि सभी छात्र 🟢 Online दिख रहे हैं या नहीं।
- [ ] सही समय होने पर **"START TEST FOR ALL"** दबाएँ।

### 14.3 परीक्षा समाप्त होने के बाद की चेकलिस्ट
- [ ] लाइव मॉनिटर पर **"END TEST"** दबाएँ ताकि सभी उत्तर लॉक हो जाएँ।
- [ ] **Results & Ranking** पर जाएँ।
- [ ] **"Export Excel Report"** पर क्लिक करके रिजल्ट की एक्सेल कॉपी पेनड्राइव में सुरक्षित रख लें।
- [ ] **"Download All Answer Sheets (ZIP)"** डाउनलोड करके संस्थान के रिकॉर्ड में रख लें।
- [ ] सर्वर विंडो बंद करें और छात्रों के कंप्यूटर सुरक्षित रूप से शटडाउन कर दें।

---

## 15. आपातकालीन त्वरित संदर्भ कार्ड (Emergency Quick Card)

```
================================================================================
               CBT परीक्षा प्रणाली - आपातकालीन त्वरित कार्ड
================================================================================

1. सर्वर चालू करना:
   डबल-क्लिक करें:  run_cbt.bat
   डिफ़ॉल्ट एडमिन:  http://localhost:8000/admin
   यूज़रनेम:        admin
   पासवर्ड:         admin123 (अथवा सेटअप में तय किया गया पासवर्ड)

2. छात्रों के लिए परीक्षा लिंक:
   http://<YOUR_LOCAL_IP>:8000
   (एडमिन डैशबोर्ड या कमांड स्क्रीन में अपना लोकल आईपी देखें)

3. फ़ायरवॉल अनब्लॉक करने की त्वरित कमांड (PowerShell Admin में चलाएँ):
   New-NetFirewallRule -DisplayName "CBT 8000" -Direction Inbound -LocalPort 8000 -Protocol TCP -Action Allow

4. यदि लाइट चली जाए अथवा सर्वर विंडो गलती से बंद हो जाए:
   घबराएँ नहीं! बस दोबारा run_cbt.bat पर डबल-क्लिक कर दें।
   डेटा की 100% सुरक्षा है; सभी छात्रों के उत्तर ऑटो-सेव रहते हैं।

5. डेवलपर सहायता संपर्क:
   पंकज कुमार (Pankaj Kumar) | mpitpankajk@gmail.com
================================================================================
```

---
*मानक संचालन प्रक्रिया (SOP) दस्तावेज़ समाप्त।*
