diff --git a/main.go b/main.go index 6476f1e..00ac0f3 100644 --- a/main.go +++ b/main.go @@ -15,7 +15,8 @@ import ( func main() { engine := html.New("./views", ".html") app := fiber.New(fiber.Config{ - Views: engine, + Views: engine, + BodyLimit: 10 * 1024 * 1024, }) app.Static("/statics", "./statics") app.Use(recover.New()) diff --git a/services/send_service_impl.go b/services/send_service_impl.go index 6f0c71e..0bcfd97 100644 --- a/services/send_service_impl.go +++ b/services/send_service_impl.go @@ -28,6 +28,10 @@ func NewSendService(waCli *whatsmeow.Client) SendService { } func (service SendServiceImpl) SendText(c *fiber.Ctx, request structs.SendMessageRequest) (response structs.SendMessageResponse, err error) { + if !service.WaCli.IsLoggedIn() { + err = errors.New("you are not loggin") + return + } recipient, ok := utils.ParseJID(request.PhoneNumber) if !ok { return response, errors.New("invalid JID " + request.PhoneNumber) @@ -43,6 +47,11 @@ func (service SendServiceImpl) SendText(c *fiber.Ctx, request structs.SendMessag } func (service SendServiceImpl) SendImage(c *fiber.Ctx, request structs.SendImageRequest) (response structs.SendImageResponse, err error) { + if !service.WaCli.IsLoggedIn() { + err = errors.New("you are not loggin") + return + } + // Resize image oriImagePath := fmt.Sprintf("%s/%s", config.PathSendImage, request.Image.Filename) err = c.SaveFile(request.Image, oriImagePath) @@ -50,7 +59,7 @@ func (service SendServiceImpl) SendImage(c *fiber.Ctx, request structs.SendImage return response, err } openImageBuffer, err := bimg.Read(oriImagePath) - newImage, err := bimg.NewImage(openImageBuffer).Process(bimg.Options{Quality: 90, Width: 400, Height: 400, Embed: true}) + newImage, err := bimg.NewImage(openImageBuffer).Process(bimg.Options{Quality: 90, Width: 600, Height: 600, Embed: true}) if err != nil { return response, err } @@ -100,10 +109,10 @@ func (service SendServiceImpl) SendImage(c *fiber.Ctx, request structs.SendImage ViewOnce: proto.Bool(request.ViewOnce), }} ts, err := service.WaCli.SendMessage(dataWaRecipient, "", msg) + go removeFile(oriImagePath, newImagePath) if err != nil { return response, err } else { - go removeFile(oriImagePath, newImagePath) response.Status = fmt.Sprintf("Image message sent (server timestamp: %s)", ts) return response, nil } diff --git a/services/user_service_impl.go b/services/user_service_impl.go index 9593423..3c52866 100644 --- a/services/user_service_impl.go +++ b/services/user_service_impl.go @@ -21,6 +21,10 @@ func NewUserService(waCli *whatsmeow.Client) UserService { } func (service UserServiceImpl) UserInfo(c *fiber.Ctx, request structs.UserInfoRequest) (response structs.UserInfoResponse, err error) { + if !service.WaCli.IsLoggedIn() { + err = errors.New("you are not loggin") + return + } var jids []types.JID jid, ok := utils.ParseJID(request.PhoneNumber) if !ok { @@ -60,6 +64,10 @@ func (service UserServiceImpl) UserInfo(c *fiber.Ctx, request structs.UserInfoRe } func (service UserServiceImpl) UserAvatar(c *fiber.Ctx, request structs.UserAvatarRequest) (response structs.UserAvatarResponse, err error) { + if !service.WaCli.IsLoggedIn() { + err = errors.New("you are not loggin") + return + } jid, ok := utils.ParseJID(request.PhoneNumber) if !ok { return response, errors.New("invalid JID " + request.PhoneNumber)