Skip to content

osifeu-prog/ME

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

123 Commits
 
 
 
 
 
 
 
 

Repository files navigation

מערכת ניהול הצבעות מבוססת טלגרם - תכנון מלא תקציר מנהלים המערכת היא פלטפורמת ניהול הצבעות מבוססת Telegram Bot ו-Webhook המאפשרת ניהול תהליכי הצבעה דיגיטליים עבור ועדי שכונות, בניינים ורחובות. המערכת מספקת פתרון מאובטח, נגיש וקל לתפעול המאפשר למשתמשים להשתתף בהצבעות ישירות דרך אפליקציית Telegram המוכרת.

יתרונות מרכזיים:

נגישות גבוהה דרך Telegram

אימות משתמשים מבוסס טלגרם

ממשק ניהול אינטואיטיבי

דוחות ותוצאות בזמן אמת

תמיכה בסוגי הצבעות מגוונים

ארכיטקטורת המערכת text telegram-voting-system/ ├── src/ │ ├── bot/ │ │ ├── init.py │ │ ├── handlers/ │ │ │ ├── init.py │ │ │ ├── start.py │ │ │ ├── voting.py │ │ │ ├── admin.py │ │ │ └── results.py │ │ ├── keyboards/ │ │ │ ├── init.py │ │ │ ├── main_menu.py │ │ │ ├── voting_keyboards.py │ │ │ └── admin_keyboards.py │ │ └── middleware/ │ │ ├── init.py │ │ ├── auth.py │ │ └── logging.py │ ├── web/ │ │ ├── init.py │ │ ├── webhook.py │ │ ├── routes/ │ │ │ ├── init.py │ │ │ ├── api.py │ │ │ └── admin.py │ │ └── templates/ │ │ ├── base.html │ │ ├── admin/ │ │ │ ├── dashboard.html │ │ │ └── create_voting.html │ │ └── results/ │ │ └── voting_results.html │ ├── core/ │ │ ├── init.py │ │ ├── config.py │ │ ├── database.py │ │ ├── security.py │ │ └── notifications.py │ ├── models/ │ │ ├── init.py │ │ ├── user.py │ │ ├── voting.py │ │ ├── ballot.py │ │ └── community.py │ ├── services/ │ │ ├── init.py │ │ ├── voting_service.py │ │ ├── user_service.py │ │ ├── results_service.py │ │ └── validation_service.py │ └── utils/ │ ├── init.py │ ├── helpers.py │ ├── validators.py │ └── formatters.py ├── tests/ │ ├── init.py │ ├── test_handlers.py │ ├── test_models.py │ ├── test_services.py │ └── conftest.py ├── migrations/ │ └── versions/ ├── docs/ │ ├── api.md │ ├── setup.md │ └── user_guide.md ├── docker/ │ ├── Dockerfile │ ├── docker-compose.yml │ └── nginx/ │ └── nginx.conf ├── requirements.txt ├── config.yaml ├── .env.example ├── main.py └── README.md הסבר על פעילות המערכת זרימת העבודה הכללית: הרשמה ואימות

משתמשים מצטרפים לבוט הטלגרם

המערכת מאמתת את זהות המשתמש דרך פרופיל הטלגרם

מנהלי מערכת מקבלים הרשאות ניהול

יצירת הצבעה

מנהל יוצר הצבעה חדשה דרך ממשק ניהול

מגדיר: כותרת, תיאור, אפשרויות, תאריך סיום

בוחר קהל מצביעים (בניין, שכונה, רחוב)

הצבעה

משתמשים מקבלים התראה על הצבעה חדשה

בוחרים אפשרות דרך אינטראקציה עם הבוט

כל משתמש יכול להצביע פעם אחת בלבד

המערכת מאמתת זכאות להצבעה

ניהול ותוצאות

תוצאות מתעדכנות בזמן אמת

מנהלים יכולים לצפות בסטטיסטיקות

ניתן להוריד דוחות בפורמטים שונים

התראות אוטומטיות עם סיום ההצבעה

מודולים עיקריים:

  1. מודול הבוט (Telegram Bot)

python

דוגמה למבנה handler

class VotingHandler: async def start_voting(self, update, context): # התחלת תהליך הצבעה pass

async def submit_vote(self, update, context):
    # שליחת קול
    pass
  1. מודול ניהול הצבעות

יצירת הצבעות חדשות

ניהול קהלי יעד

הגבלת זמן והרשאות

  1. מודול אבטחה

אימות משתמשים

מניעת הצבעות כפולות

הגנה על פרטיות

  1. מודול דוחות

הצגת תוצאות בזמן אמת

סטטיסטיקות ומגמות

ייצוא נתונים

תכנון מסד נתונים טבלאות עיקריות: Users

sql id | telegram_id | username | full_name | phone | community_id | created_at Communities

sql id | name | type | address | admin_id | created_at Votings

sql id | title | description | options | community_id | start_date | end_date | status | created_by Ballots

sql id | voting_id | user_id | selected_option | voted_at | ip_address הגדרות טכניות טכנולוגיות: Backend: Python + FastAPI/Flask

Database: PostgreSQL

Bot Framework: python-telegram-bot

Deployment: Docker + Nginx

Authentication: Telegram WebApp + JWT

קבצי קונפיגורציה: config.yaml

yaml telegram: bot_token: "YOUR_BOT_TOKEN" webhook_url: "https://yourdomain.com/webhook"

database: host: "localhost" port: 5432 name: "voting_system"

security: secret_key: "your-secret-key" token_expiry: 3600 תוכנית פיתוח שלב 1: MVP (4-6 שבועות) הגדרת סביבת פיתוח

מודל משתמשים בסיסי

בוט טלגרם פשוט

מערכת הצבעות בסיסית

שלב 2: פיצ'רים מתקדמים (4 שבועות) ממשק ניהול וובהוק

דוחות ותוצאות

התראות אוטומטיות

שלב 3: אבטחה ואופטימיזציה (3 שבועות) אימות מתקדם

הגנות אבטחה

אופטימיזציה לביצועים

אבטחה ופרטיות אמצעי הגנה: הצפנת נתונים רגישים

הגבלת גישה לפי הרשאות

אימות דו-שלבי למנהלים

רישום פעולות (audit log)

הגנת פרטיות: נתוני הצבעה אנונימיים

מניעת חשיפת פרטים אישיים

עמידה בתקנות פרטיות

הרחבה עתידית פיצ'רים מתוכננים: אינטגרציה עם מערכות תשלומים

הצבעות מורכבות (דירוג, העדפה)

מודול SMS להתראות

אפליקציית מובייל נפרדת

API לצד שלישי

מערכת זו מספקת פתרון מלא ומודולרי לניהול הצבעות בקהילות מקומיות, עם דגש על פשטות שימוש, אבטחה ונגישות מקסימלית דרך פלטפורמת Telegram המוכרת.

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors