build raspian os target arm-unknown-linux-gnueabihf and in release mode
using the rust cross compiler tool cross
cross build --target arm-unknown-linux-gnueabihf --release
scp -r target/arm-unknown-linux-gnueabihf/release/led-cat-server pi@[your_ip]:/home/pi
Server-API Documentation:
generiert eine zufaellige vier stellige Auth. Nummer
zeigt diese auf led matrix an (und in terminal)
POST /api/verify_auth_num
nimmt folgeneds body json:
prueft ob die Auth. Nummer korrekt ist
{"status":"verify", "auth": "returns_your_auth_token"}
oder {"status":"fail"}
GET /api/check_auth_token
Authorization: Bearer <token>
prueft ob der (vorher von /api/verify_auth_num
) gesendete Auth. Token korrekt ist
{"status":"valid"}
oder {"status":"unvalid"}
Authorization: Bearer <token>
nimmt Bearer token
deletet job aus mutex
nimmt Bearer token
gibt infos zu dem aktuellen job
curl -X POST \
-H " Content-Type: multipart/form-data" \
-H " Authorization: Bearer [your token]"
-F " file=@/Users/juliank/Downloads/nayncat.jpeg" \
http://192.168.1.120:8080/api/show_image
nimmt Bearer token
nimmt image file
header Content-Type: multipart/form-data
curl -X POST \
-H " Content-Type: application/json" \
-H " Authorization: Bearer [your token]" \
-d ' {"text": "Hello\nWorld"}' \
http://192.168.1.120:8080/api/show_run_text
nimmt Bearer token
nimmt body json mit text
{
"bvg_stop_id" : 900023232 ,
"automation_auth_token" : " <your token>" ,
"schedules" : [
{
"description" : " bvg info um 6 uhr morgens" ,
"job_name" : " show_bvg_info" ,
"cronjob" : " 0 6 * * *" ,
"job_led_func_data" : {
"info_message" : " "
},
{
"description" : " wetter info info um 6 uhr morgens" ,
"job_name" : " show_weather_info" ,
"cronjob" : " 35 11 * * *" ,
"job_led_func_data" : {
"info_message" : " "
},
"osm_lat" : 52.520008 ,
"osm_lon" : 13.404954 ,
}
}
]
}
nimmt Bearer token
nimmt body json mit config
nimmt Bearer token
gibt config
POST /api/update_scheduled_jobs
nimmt Bearer token
liest scheduled jobs aus config
schreibt sie in cronjob file
POST /api/show_weather_info
nimmt Bearer token
nimmt body json mit location
Varitante: detail ansicht des heutigen tages:
{
"lat" : 52.647449 ,
"lon" : 12.506484
}
Varitante: weniger detail reiche ansicht bis zu 10 tage in die Zukunft:
{
"lat" : 52.647449 ,
"lon" : 12.506484 ,
"day" : 1
}
nimmt Bearer token
nimmt body mit update speed in milisekunden delay
nimmt Bearer token
nimmt body mit wigdet
{
"Widget" : " WeatherInfo" ,
"lat" : 52.43596 ,
"lon" : 13.259834 ,
"day" : 0
}
{
"Widget" : " AutobahnInfo" ,
"road_id" : " A100"
}