Perfekt, danke, kann mir zwar keine Push-Nachricht mangels Kenntnisse basteln, aber das hilft mir auch.
Bei mir wäre die productCode=HX1ETD3A61EU010218
Und mit deiner Aussage über die nur vier verfügbaren Modelle bin ich zumindest beruhigt, dass ich gestern nicht ganz doof und zu langsam war "meinen" grauen zu ergattern.
Der smart-Support meinte dazu gestern noch, dass der graue wohl sehr schnell vergriffen war, sprich ich zu langsam...
Alles anzeigen
Ich habe jetzt alle Brabus Produktnummern:
- weiß/schwarz: HX1ETD3A61EU010471
- rot/schwarz: HX1ETD3A61EU010218
- schwarz/rot: HX1ETD3A61EU010418
- schwarz/schwarz: HX1ETD3A61EU010417
- silber/schwarz: HX1ETD3A61EU010425
- silber/rot: HX1ETD3A61EU010424
- grau matt: HX1ETD3A61EU010419
- grau matt/rot: HX1ETD3A61EU01042
Mit curl und dem json Parser jq kann man das dann auf der Kommandozeile als Shell Skript sehr leicht filtern, z.B.
curl -s "https://de.smart.com/__app__/bottom-bar/82d9bde/bff/product-details-model?envName=prod&preview=false&marketId=de&languageTag=de-DE&productCode=HX1ETD3A61EU010471" | jq -r '.stockLevelStatus'
Sobald hier eines der Brabus Modelle verfügbar ist, sende ich eine Push Benachrichtigung über die App ntfy. Einfach die App installieren und dort ein Topic mit einem beliebigen Namen erstellen (z.B. smart-preorder-notifier). Das abonniert man dann in der App (für die Benachrichtigungen).
Das gesamte Shell-Skript (z.B. namens curl-smart.sh) für Benachrichtigungen des weißen Brabus sieht dann so aus:
#!/bin/bash
# query smart website to check if the white Brabus model is available
function curlSmart() {
result=$(curl -s "https://de.smart.com/__app__/bottom-bar/82d9bde/bff/product-details-model?envName=prod&preview=false&marketId=de&languageTag=de-DE&productCode=HX1ETD3A61EU010471" | jq -r '.stockLevelStatus')
if [[ "$result" != "outOfStock" ]]; then
sendPushNotification "Brabus weiß"
fi
}
# send notification to ntfy
function sendPushNotification() {
echo -e "Sending push notification..."
url="https://ntfy.sh/smart-preorder-notifier"
result=$(curl -s -X POST -H "Title: Smart Preorder" -H "Click: https://de.smart.com/de/my-account/" -H "Tags: shopping_cart" -d "Vorbestellung $1 jetzt möglich! (klick mich)" $url)
}
curlSmart
Alles anzeigen
Das Skript liegt auf einem Raspberry Pi, der immer läuft und wird dort per crontab einmal pro Minute aufgerufen.