Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

generic.go 577B

123456789101112131415161718192021222324252627282930
  1. package httplistener
  2. import (
  3. "bytes"
  4. "encoding/json"
  5. "net/http"
  6. )
  7. type genericMessage struct {
  8. To string
  9. Body string
  10. }
  11. func (hl *HTTPListener) genericHandler(w http.ResponseWriter, request *http.Request) {
  12. if request.Method != "POST" {
  13. http.NotFound(w, request)
  14. return
  15. }
  16. var message genericMessage
  17. buf := new(bytes.Buffer)
  18. buf.ReadFrom(request.Body)
  19. json.Unmarshal(buf.Bytes(), &message)
  20. log.Infof("%s [%s] %s", request.RemoteAddr, message.To, message.Body)
  21. if message.To != "" && message.Body != "" {
  22. hl.irc.Privmsgf(message.To, message.Body)
  23. }
  24. }