Main Poll() loop

This commit is contained in:
Ian Gulliver
2022-10-30 22:29:36 +00:00
parent 6785c00661
commit c1fae538eb

View File

@@ -2,10 +2,15 @@ package main
import (
"fmt"
"log"
"math/rand"
"os"
"time"
)
func main() {
rand.Seed(time.Now().UnixNano())
ic, err := NewImapClient(
os.Getenv("IMAP_HOST"),
os.Getenv("IMAP_USERNAME"),
@@ -19,13 +24,18 @@ func main() {
defer ic.Close()
tasks, err := ic.Poll()
err = Poll(ic)
if err != nil {
panic(err)
log.Printf("%s", err)
}
for _, task := range tasks {
fmt.Printf("%#v\n", task)
for {
time.Sleep(time.Duration(rand.Intn(60)) * time.Second)
err := Poll(ic)
if err != nil {
log.Printf("%s", err)
}
}
}
@@ -33,3 +43,16 @@ type Task struct {
Name string
HtmlNotes string
}
func Poll(ic *ImapClient) error {
tasks, err := ic.Poll()
if err != nil {
return err
}
for _, task := range tasks {
fmt.Printf("%#v\n", task)
}
return nil
}