Skript für IP Abfrage mit HTTP Request

Dieses Thema im Forum "AppleScript" wurde erstellt von macht_rebel, 24.12.17.

Schlagworte:
  1. macht_rebel

    macht_rebel Gloster

    Dabei seit:
    01.05.07
    Beiträge:
    60
    Hallo zusammen,

    vor längerer Zeit wurde mir im Forum bzgl. eines Skript weitergeholfen. Es ging um ein Skript, welches die Erreichbarkeit einer IP im LAN überprüft und falls diese nicht erreichbar ist, eine Mail an mich erstellt hat. Nun möchte ich das Skript so anpassen, dass es in der Konsole, als auch auf einer Diskstation stündlich als Job/Aufgabe laufen kann und anstelle einer E-Mail ein HTTP Request postet. Leider bin ich durch mein Halbwissen nicht in der Lage das selber zu lösen.

    Falls mir jemand beim Skript helfen kann, so dass es funktioniert, würde ich dafür gerne einen großen leckeren Weihnachts-Caffè Latte beim Starbucks spendieren oder alternativ eine Mikrospende an Misereor oder Ärzte ohne Grenzen leisten.

    Code:
      set theIP to (do shell script "arp -an")
    try
    --enter below the IP that has to be present:
        do shell script "ping -oq -c3 x.x.x.x"
    on error
        sendIP(theIP)
    end try
    
    on sendIP(IPList)
    curl -s \
      --form-string token=xxx \
      --form-string user=xxx \
      --form-string title='Lüftung ist aus' \
      --form-string message='Druckwächter prüfen' \
      https://api.pushover.net/1/messages.json

    Danke & frohe Weihnachten,
    MachtRebel
     
  2. macht_rebel

    macht_rebel Gloster

    Dabei seit:
    01.05.07
    Beiträge:
    60
    Die Kollegen vom Synology Community Forum konnten mir weiterhelfen. Anbei das Resultat, falls irgendjemand eine ähnliche Fragestellung haben sollte:

    Code:
    #! /bin/sh
    PATH=/bin:/usr/bin
    
    # IP-Adresse definieren
    IP="x.x.x.x"
    # user definieren
    USR="xxx"
    # token definieren
    TOKEN="xxx"
    
    # eine einzige Zeile:
    ping -q -c3 ${IP} && echo ${IP} || curl -s --form-string token=${TOKEN} --form-string user=${USR} --form-string title='Lüftung ist aus' --form-string message='Druckwächter prüfen' https://api.pushover.net/1/messages.json

    PS: Es wurde gespendet :)