פרויקט פשוט וקל להקמת ערוץ עדכונים
צד שרת מהיר וחזק כתוב ב Go,
מסד נתונים תואם Redis,
צד לקוח עם Angular,
Caddy לניהול דומיין ויצירת תעודה עבור האתר.
הפרויקט מופץ תחת רישיון GNU General Public License v3 (GPLv3).
כל הזכויות שמורות.
ניתן להוריד את הפרויקט עם:
git clone https://github.com/NetFree-Community/TheChannel
יש ליצור קובץ .env בהתאם לדוגמא בקובץ sample.env.
הפרויקט מגיע עם Caddy מובנה.
יש להוסיף את הדומיין בתוך Caddyfile כך:
example.com {
reverse_proxy backend:3000
}מלבד הטיפול בבקשות והפניה ל Container המתאים, Caddy מטפל גם בהוספת תעודה לדומיין.
כך שנותר רק להריץ docker-compose up --build -d וסיימנו!
לאחר ההרצה הראשונה, יש להכנס למערכת ולהזדהות כמנהל.
יש לגשת לקישור:
https://example.com/login
ולהזדהות באמצעות הפרטים שהגדרתם בקובץ env.
יש להגדיר את שם הערוץ תיאור הערוץ ולהעלות לוגו, שמירה וניתן להתחיל לפרסם הודעות...
ניתן לייבא הודעות באמצעות API כדי להוסיף תכנים מפלטפורמות חיצוניות, כולל אפשרות להגדיר תאריך יצירה מדויק (timestamp) עבור כל הודעה.
POST https://example.com/api/import/post
| שם הכותרת | ערך |
|---|---|
| Content-Type | application/json |
| X-API-Key | המפתח שהוגדר במשתנה הסביבה API_SECRET_KEY |
יש לשלוח אובייקט JSON במבנה הבא:
{
"text": "Hello from another platform!",
"author": "John Doe",
"timestamp": "2025-04-06T12:34:56Z"
}המערכת תומכת בשליחת וובהוק בעת יצירה, עדכון או מחיקה של הודעות. הוובהוק יישלח רק אם הוגדר URL לוובהוק במשתני הסביבה.
כדי להפעיל את הוובהוק, יש להגדיר את משתני הסביבה הבאים בקובץ .env:
WEBHOOK_URL=https://example.com/webhook
WEBHOOK_VERIFY_TOKEN=your-secret-token # Not required
הוובהוק נשלח כבקשת POST עם תוכן JSON במבנה הבא:
{
"action": "create", // "create", "update", או "delete"
"message": {
"id": 123,
"type": "text",
"text": "message content",
"author": "username",
"timestamp": "2025-04-10T18:30:00Z",
"lastEdit": "2025-04-10T18:35:00Z",
"deleted": false,
"views": 5
},
"timestamp": "2025-04-10T18:35:05Z",
"verifyToken": "your-secret-token" // If defined
}אם הגדרתם WEBHOOK_VERIFY_TOKEN, תוכלו להשתמש בו כדי לוודא שהבקשות מגיעות אכן מהמערכת שלכם. בדקו שהערך ב-verifyToken תואם לערך שהגדרתם.