Browse Source

fix: upsize max upload & add login checking

pull/3/head
Aldino Kemal 4 years ago
parent
commit
b9b3780a8c
  1. 1
      main.go
  2. 13
      services/send_service_impl.go
  3. 8
      services/user_service_impl.go

1
main.go

@ -16,6 +16,7 @@ func main() {
engine := html.New("./views", ".html")
app := fiber.New(fiber.Config{
Views: engine,
BodyLimit: 10 * 1024 * 1024,
})
app.Static("/statics", "./statics")
app.Use(recover.New())

13
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
}

8
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)

Loading…
Cancel
Save