לא מזמן ראיתי פוסט באחת הקבוצות, בו מפרסם הפוסט ביקש למצוא מערכת אשר תאפשר לו לנטר בזמן אמת את מיקום הנהגים בצי הרכב שלו וכן את המסלולים בהם נסעו לצורך בקרה. לאחר חיפוש קצר, מצאתי מערכת חביבה העונה לשם Traccar ומבצעת בדיוק את זה.
בין הפיצ'רים המובילים של המערכת ניתן למצוא את הדברים הבאים:
- תמיכה במגוון רחב של מכשירים ופרוטוקלי GPS, מאלה של היצרנים הסינים ועד ליצרניות הגדולות והמוכרות כמו סמסונג ואפל.
- ממשק ניהול ידידותי ונוח לשימוש.
- הגדרה פשוטה מאוד של האפליקציה.
- מעקב בזמן אמת.
- דיוק גבוהה מאוד.
- אפשרות להפקת דוחות.
- שליחת התראות למכשירים.
Traccar הנה מערכת מבוססת קוד פתוח אשר ניתנת לשימוש בתצורת Self Hosted וכן על ידי פתיחת חשבון אצלם בשרת. במדריך זה אתמקד בהתקנת המערכת על גבי Docker Container ובאמצעות Docker Compose, וכן על התקנת האפליקציה והגדרת השירות.
לפני שנתחיל, יש לוודא כי Docker וכן Docker Compose מותקנים אצלכם על פי המדריך הבא!
שלב א' – ההתקנה:
אנו נבצע את ההתקנה כ stack חדש בתוך סביבת הדוקר. על מנת לעשות זאת צרו תיקיה חדשה בשם traccar תחת תיקיית הדוקר שלכם:
cd ~/docker
mkdir traccar
cd tracar
כעת נפתח קובץ yaml חדש בשם docker-compose.yaml:
sudo nano docker-compose.yaml
והדביקו פנימה את הקוד הבא:
version: "3.6"
services:
mysql:
image: mariadb:latest
ports:
- "3306:3306"
container_name: mysql
environment:
- MYSQL_ROOT_PASSWORD=YourSecureMySqlPassword
volumes:
- "./mysql:/var/lib/mysql"
restart: always
traccar:
image: traccar/traccar
container_name: traccar
ports:
- 8082:8082
- 5000-5150:5000-5150
volumes:
- ./traccar.xml:/opt/traccar/traccar.xml
environment:
- MYSQL_DATABASE=traccar
- MYSQL_USER=traccar
- MYSQL_PASSWORD=YourSecureMySqlPassword
- MYSQL_HOST=mysql
שמרו את הקובץ וצאו מהעורך על ידי לחיצה על ctrl x >> y >> Enter.
והריצו את הפקודה הבאה בכדי להרים את הקונטיינרים:
sudo docker-compose up -d
כעת, פתחו את הדפדן והקלידו את הכתובת של השרת בתוספת פורט 8082:
http://server_ip:8082
המסך הראשון שתקבלו הוא מסך ההתחברות למערכת:
לחצו על Register על מנת להקים משתמש admin למערכת:
הכניסו שם, כתובת מייל וסיסמה ולחצו על Save. כעת תוחזרו למסך הראשי ובו הפרטים שהזנתם בתהליך הרישום:
לחצו על Login וכנסו למערכת.
שלב ב' – התקנת האפליקציה והגדרת המערכת לשימוש:
על מנת להשתמש במערכת ולהתחיל לנטר את מיקום המכשירים יש להוריד ולהתקין את האפליקציה בהתאם לסוג המכשיר שברשותכם. קישורים להורדה ניתן למצוא כאן!
כאשר "hidden version" הוא מצב בו לאחר התקנת האפליקציה האייקון שלה נעלם מה Launcher ולא ניתן להכנס את ההגדרות ולנטרל אותה. על מנת להכנס אליה שוב יש לחייג מספר יעודי בחייגן של הטלפון והיא תופיע מחדש.
פתחו את האפליקציה והגדירו אותה על פי המסכים הבאים. תחילה הגדירו את כתובת ה URL של שרת ה traccar שלכם. הפורט קשור לסוג הפרוטוקול של ה GPS במכשיר שלכם, כאשר הנפוץ משתמש בפורט 5055 ולכן בשלב ראשון ממליץ לא לשנותו.
ההגדרה הבאה תהיה של מזהה המכשיר, שהוא ערך חד חד ערכי עבור המכשירים המתחברים לשרת שלכם. המזהה הנ"ל ישמש אחר כך להגדרת המכשיר בשרת.
במסך הבא נגדיר את התדירות לשליחת המידע לשרת, אחת לדקה אמור להיות מספיק, כמובן שאפשר גם פחות.
ולסיום נגדיר את דיוק ה GPS:
כעת נחזור לשרת עצמו ונגדיר שם את המכשיר, רק לאחר ההגדרה בשרת נוכל להתחיל לעקוב אחריו.
הכנסו למערכת עם שם המשתמש והסיסמה שהגדרתם בשלב בקודם ולחצו על סמל ה "+" בצד שמאל למעלה בקוביה של רשימת המכשירים:
כעת מלאו את השם של בעל המכשיר או כל שם אחר שיעזור לכם לזהות למי הוא שייך וכן את מזהה המכשיר כפי שהגדרתם באפליקציה: ולחצו על אישור. (בשלב זה נתמקד בהגדרה בסיסית בלבד):
כעת חיזרו לאפליקציה, והפעילו את החיבור לשרת (הכפתור שנמצא בחלקו הימני העליון של המסך).
תוכל לראות לוג של האפליקציה לוודא שאכן התחברה לשרת, לצורך כך לחצו על המילה status:
כעת, אם תחזרו לממשק של השרת תוכלו לראות שהמכשיר יופיע על המפה וכן הצבע של המכשיר ברשימה יהפוך לירוק:
כאן הסתיים החלק של ההגדרות.
שלב ג' – צפייה והפקת דוחות:
חלק נוסף, ולא פחות חשוב במערכת הוא היכולת להפיק דוחות כמו מסלול תנועה, תחנות עצירה ועוד. על מנת להגיע לדוחות אלה יש תחילה לסמן את המכשיר הרצוי על ידי לחיצה עליו ברשימת המכשירים:
ולחצו על "Reports" בצד השמאלי התחתון:
כעת יפתח מסך נוסך בחלקו התחתון של הדף ובו נוכל להגדיר מה ברצוננו לראות:
למשל את סוג הדו"ח:
לחיצה על Configure תפתח מסך נוסף, בו נובחר את המכשיר עליו נבצע את המעקב וכן את התקופה, ונלחץ על אישור:
על מנת להציג את הנתונים יש ללחוץ על Show:
ניתן גם לבצע יצוא של הנתונים לקובץ אקסל על ידי לחיצה על Export.
שלב ד' – הגדרת Traccar כ Device Tracker במערכת Home-Assistant:
בחלק זה של המדריך אתייחס ליתרון נוסף של המערכת והוא היכולת לשלב אותה ביחד עם HomeAssitant באמצעות קומפוננטה ייחודית שנוספה בגרסה 83. כאן תוכלו לקרוא אודות הקומפוננטה.
על מנת להוסיף את הקומפוננטה, יש לערוך את קובץ ה configuration.yaml ולהוסיף את החלק הבא:
device_tracker:
- platform: traccar
host: [traccar server address]
port: [port]
username: [email]
password: [password]
כאשר:
- host – כתובת ה IP של שרת ה traccar שלכם (חובה)
- הפורט של השרת (אופציונלי במידה והשארתם על ברירת המחדל)
- שם המשתמש – כתובת המייל המשתמשת להתחברות.
- סיסמה – הסיסמה אותה הגדרתם להתחברות.
כעת בצעו אתחול למערכת ה Home-Assistant. במידה וקובץ ה known_devices.yaml היה קיים התווספו אליו שורות ובמידה ולא הוא יווצר באופן אוטומטי:
my_device:
hide_if_away: false
icon:
mac:
name: my device
picture:
track: true
וכן תוכלו לראותו על המפה:
שלב ד' – שימוש ב NGINX :
על מנת לאבטח במעט את התעבורה ניתן להעביר את הבקשות דרך nginx. לצורך כך פתחו את קובץ ההגדרות של nginx או צרו חדש והדביקו פנימה את הטקסט הבא:
server {
server_name [web interface domain like traccar.xyz];
listen 80;
location / {
proxy_pass http://192.168.x.x:8082;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For 192.168.0.1;
proxy_set_header X-Forwarded-Proto $scheme;
# the next 3 lines are for cocket protocol nedded both for web ui and mobile app
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
server {
server_name [location update domain like loc.xyz];
listen 80;
location / {
proxy_pass http://192.168.x.x:5055;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For 192.168.0.1;
proxy_set_header X-Forwarded-Proto $scheme;
# the next 3 lines are for cocket protocol nedded both for web ui and mobile app
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
החליפו את הדומיינים בשלכם ואתחלו את ה service.
בהצלחה!
Leave a Reply