Partial feature: send email

This commit is contained in:
DBras 2025-03-02 19:38:09 +01:00
parent 7ec78c7744
commit b0442e619c
1 changed files with 13 additions and 6 deletions

19
main.go
View File

@ -8,7 +8,6 @@ import (
"strings" "strings"
"path/filepath" "path/filepath"
"encoding/base64" "encoding/base64"
"os/exec"
"golang.org/x/oauth2/google" "golang.org/x/oauth2/google"
"google.golang.org/api/gmail/v1" "google.golang.org/api/gmail/v1"
@ -56,7 +55,7 @@ func main() {
log.Fatalf("Unable to read client secret file: %v", err) log.Fatalf("Unable to read client secret file: %v", err)
} }
config, err := google.ConfigFromJSON(creds_b, gmail.GmailReadonlyScope) config, err := google.ConfigFromJSON(creds_b, gmail.GmailModifyScope)
if err != nil { if err != nil {
log.Fatalf("Unable to parse client secret file to config: %v", err) log.Fatalf("Unable to parse client secret file to config: %v", err)
} }
@ -84,9 +83,17 @@ func main() {
fmt.Printf("From: %s\n", fromAddr) fmt.Printf("From: %s\n", fromAddr)
fmt.Printf("Message:\n%s\n", msgBody) fmt.Printf("Message:\n%s\n", msgBody)
cmd := exec.Command("yt-dlp", msgBody) var message gmail.Message
cmd.Stdout = os.Stdout messageStr := []byte(
cmd.Stderr = os.Stderr "From: downloader.kasernen@gmail.com\r\n" +
_ = cmd.Run() "To: danielbrasholt@gmail.com\r\n" +
"Subject: Request received\r\n\r\n" +
"Message body")
message.Raw = base64.URLEncoding.EncodeToString(messageStr)
_, err = service.Users.Messages.Send(USER, &message).Do()
if err != nil {
log.Fatalf("Unable to send email: %v", err)
}
fmt.Println("Email sent")
} }
} }