push.go 658 B

123456789101112131415161718192021222324252627282930313233343536
  1. package bullet
  2. import (
  3. "bytes"
  4. "encoding/json"
  5. )
  6. type Push struct {
  7. Type string `json:"type"`
  8. Title string `json:"title"`
  9. Body string `json:"body"`
  10. Url string `json:"url"`
  11. }
  12. //GetReader
  13. func (p Push) GetReader() (*bytes.Buffer, error) {
  14. jsonBytes, err := json.Marshal(p)
  15. if err != nil {
  16. return nil, err
  17. }
  18. buffer := bytes.NewBuffer(jsonBytes)
  19. return buffer, err
  20. }
  21. //NewNotePush
  22. func NewNotePush(title, text string) Push {
  23. push := Push{Type: "note", Title: title, Body: text}
  24. return push
  25. }
  26. //NewLinkPush
  27. func NewLinkPush(title, text, link string) Push {
  28. push := Push{Type: "note", Title: title, Body: text, Url: link}
  29. return push
  30. }