package main import ( "encoding/json" "log" "net/http" ) func IndexHandler(w http.ResponseWriter, r *http.Request) { w.WriteHeader(400) w.Write([]byte("Wrong URL.")) } func WebhookFailureHandler(w http.ResponseWriter, r *http.Request) { log.Println("Getting not-Post request on /webhook") w.WriteHeader(400) w.Write([]byte("Accepts only POST requests.")) } func WebhookHandler(w http.ResponseWriter, r *http.Request) { decoder := json.NewDecoder(r.Body) var hook Webhook err := decoder.Decode(&hook) if err != nil { log.Print(err) w.WriteHeader(400) w.Write([]byte("Wrong JSON.")) return } if hook.Join != "" { con.Join("#" + hook.Join) con.Privmsg("#"+hook.Join, hook.Message) con.Part("#" + hook.Join) if hook.Target != "" { con.Privmsg(hook.Target, hook.Message) } } else { con.Privmsg(hook.Target, hook.Message) } }