dingtalk_robot.go 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package xnet
  2. import (
  3. "fmt"
  4. "github.com/blinkbean/dingtalk"
  5. "log"
  6. "strings"
  7. "time"
  8. )
  9. // @title SendMarkDownMsg
  10. // @description 推送包含图片链接的makrdown信息到钉钉群
  11. // @param
  12. // @return
  13. func SendMarkDownMsg(imgUrl, token, secret string) error {
  14. cli := dingtalk.InitDingTalkWithSecret(token, secret)
  15. title := fmt.Sprintf("看板%s", time.Now().Format("01/02 15:04"))
  16. err := cli.SendMarkDownMessage(title, fmt.Sprintf("![screenshot](%s)", imgUrl))
  17. if err != nil {
  18. log.Printf("SendLinkMessage error : %v\n", err)
  19. return err
  20. }
  21. return nil
  22. }
  23. // @title Sendimgs
  24. // @description 推送包含多张图片链接的makrdown信息到钉钉群
  25. // @param imgUrls []string 多张图片url的slice
  26. // @return
  27. func Sendimgs(imgUrls []string, token, secret string) error {
  28. cli := dingtalk.InitDingTalkWithSecret(token, secret)
  29. title := fmt.Sprintf("看板%s", time.Now().Format("01/02 15:04"))
  30. content := []string{}
  31. for idx, imgUrl := range imgUrls {
  32. content = append(content, fmt.Sprintf("![screenshot%v](%s)\n", idx, imgUrl))
  33. }
  34. err := cli.SendMarkDownMessage(title, strings.Join(content, ""))
  35. if err != nil {
  36. log.Printf("SendLinkMessage error : %v\n", err)
  37. return err
  38. }
  39. return nil
  40. }
  41. // @title Sendimgs,增加了title参数
  42. // @description 推送包含多张图片链接的makrdown信息到钉钉群
  43. // @param imgUrls []string 多张图片url的slice
  44. // @return
  45. func SendImgs(imgUrls []string, title, token, secret string) error {
  46. cli := dingtalk.InitDingTalkWithSecret(token, secret)
  47. content := []string{}
  48. for idx, imgUrl := range imgUrls {
  49. content = append(content, fmt.Sprintf("![screenshot%v](%s)\n", idx, imgUrl))
  50. }
  51. err := cli.SendMarkDownMessage(title, strings.Join(content, ""))
  52. if err != nil {
  53. log.Printf("SendLinkMessage error : %v\n", err)
  54. return err
  55. }
  56. return nil
  57. }
  58. // @title SendTextMsg
  59. // @description 推送文本信息到钉钉群
  60. // @param
  61. // @return
  62. func SendTextMsg(content, token, secret string) error {
  63. cli := dingtalk.InitDingTalkWithSecret(token, secret)
  64. err := cli.SendTextMessage(content)
  65. if err != nil {
  66. log.Printf("SendTextMsg error : %v\n", err)
  67. return err
  68. }
  69. return nil
  70. }