package main import( //"crypto/tls" "gopkg.in/gomail.v2" "966.it/ini" "966.it/opt" "gopkg.in/ini.v1" "fmt" "os" ) func main() { var cfg *ini.File var mymail *ini.Section var err error iniFile := optp.Start() fmt.Println("parametro passato",iniFile) inip.GetIni(iniFile) cfg = inip.LoadIni() // sezione di prova per vedere cosa ritorna dal file fmt.Println(inip.GetMySection()) mymail,err = cfg.GetSection("mail") if err != nil { fmt.Println("Errore nella lettura della sezione") fmt.Println(err) os.Exit(99) } keys := mymail.KeyStrings() for _,x := range keys { fmt.Println(x) } // nota... anziche' cercare le singole chiavi, si puo' generare un for // che sia in grado di scorrere l'elenco delle chiavi e nel caso ne trovi una // che corrisponde, assegnarla alla relativa variabile server := inip.GetMyKey("mail","server").String() porta,_ := inip.GetMyKey("mail","porta").Int() username := inip.GetMyKey("mail","username").String() password := inip.GetMyKey("mail","password").String() _from := inip.GetMyKey("mail","_from").String() _to := inip.GetMyKey("mail","_to").Strings(",") _subject := inip.GetMyKey("mail","_subject").String() _body := inip.GetMyKey("mail","_text").String() for _,tos := range _to { m := gomail.NewMessage() m.SetHeader("From",_from) m.SetHeader("To",tos) m.SetHeader("Subject",_subject) m.SetBody("Text/Text",_body) d := gomail.NewDialer(server,porta,username,password) d.SSL=true //d.TLSConfig = &tls.Config{InsecureSkipVerify: true} // Send the email to Bob, Cora and Dan. if err := d.DialAndSend(m); err != nil { panic(err) } } }