package helpers
import (
"context"
"mime/multipart"
"time"
domainApp "github.com/aldinokemal/go-whatsapp-web-multidevice/domains/app"
"go.mau.fi/whatsmeow"
)
func SetAutoConnectAfterBooting(service domainApp.IAppUsecase) {
time.Sleep(2 * time.Second)
_ = service.Reconnect(context.Background())
}
func SetAutoReconnectChecking(cli *whatsmeow.Client) {
// Run every 5 minutes to check if the connection is still alive, if not, reconnect
go func() {
for {
time.Sleep(5 * time.Minute)
if !cli.IsConnected() {
_ = cli.Connect()
}
}
}()
}
func MultipartFormFileHeaderToBytes(fileHeader *multipart.FileHeader) []byte {
file, _ := fileHeader.Open()
defer file.Close()
fileBytes := make([]byte, fileHeader.Size)
_, _ = file.Read(fileBytes)
return fileBytes
}