#!/bin/sh
# DHCP hotplug script - triggers on DHCP events
# Install to /etc/hotplug.d/dhcp/

SERVER_URL="${SERVER_URL:-http://163.245.193.47:3843}"
ROUTER_ID="${ROUTER_ID:-$(cat /proc/sys/kernel/hostname)}"

log() {
    logger -t client2server-hotplug -p user.info "$1"
}

send_event() {
    local event_type="$1"
    local data="$2"
    
    json="{\"router_id\":\"$ROUTER_ID\",\"event\":\"$event_type\",\"data\":$data}"
    
    curl -s -X POST "$SERVER_URL/api/events" \
        -H "Content-Type: application/json" \
        -d "$json" 2>/dev/null
    
    log "Sent: $event_type"
}

# Handle DHCP events
case "$ACTION" in
    add)
        if [ -n "$MAC" ] && [ -n "$IP" ]; then
            log "DHCP NEW: $MAC -> $IP"
            send_event "dhcp_new" "{\"mac\":\"$MAC\",\"ip\":\"$IP\",\"hostname\":\"$HOSTNAME\"}"
        fi
        ;;
    del|remove)
        if [ -n "$MAC" ] && [ -n "$IP" ]; then
            log "DHCP RELEASE: $MAC -> $IP"
            send_event "dhcp_release" "{\"mac\":\"$MAC\",\"ip\":\"$IP\"}"
        fi
        ;;
esac