mail.go 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package main
  2. import(
  3. //"crypto/tls"
  4. "gopkg.in/gomail.v2"
  5. "966.it/ini"
  6. "gopkg.in/ini.v1"
  7. "fmt"
  8. "os"
  9. )
  10. func main() {
  11. var cfg *ini.File
  12. var mymail *ini.Section
  13. var err error
  14. fmt.Println(len(os.Args))
  15. if len(os.Args) > 1 && len(os.Args) < 4 {
  16. fmt.Println("parametro passato",os.Args[1])
  17. inip.GetIni(os.Args[1])
  18. cfg = inip.LoadIni()
  19. // sezione di prova per vedere cosa ritorna dal file
  20. fmt.Println(inip.GetMySection())
  21. mymail,err = cfg.GetSection("mail")
  22. if err != nil {
  23. fmt.Println("Errore nella lettura della sezione")
  24. fmt.Println(err)
  25. os.Exit(99)
  26. }
  27. }
  28. keys := mymail.KeyStrings()
  29. for _,x := range keys {
  30. fmt.Println(x)
  31. }
  32. // nota... anziche' cercare le singole chiavi, si puo' generare un for
  33. // che sia in grado di scorrere l'elenco delle chiavi e nel caso ne trovi una
  34. // che corrisponde, assegnarla alla relativa variabile
  35. var _from string = "acliservice@altemica.local"
  36. var _to string = "server@altemica.net"
  37. var _subject string ="Acliserver in avvio..."
  38. var _body string ="Acliserver in avvio..."
  39. m := gomail.NewMessage()
  40. m.SetHeader("From",_from)
  41. m.SetHeader("To",_to)
  42. m.SetHeader("Subject",_subject)
  43. m.SetBody("Text/Text",_body)
  44. d := gomail.NewDialer("localhost",465,"acliservice@altemica.local","uei551hex")
  45. d.SSL=true
  46. //d.TLSConfig = &tls.Config{InsecureSkipVerify: true}
  47. // Send the email to Bob, Cora and Dan.
  48. if err := d.DialAndSend(m); err != nil {
  49. panic(err)
  50. }
  51. }