@@ -6,13 +6,13 @@ import (
6
6
7
7
"github.com/android-sms-gateway/client-go/smsgateway"
8
8
"github.com/capcom6/sms-gateway/internal/sms-gateway/handlers/base"
9
+ devicesCtrl "github.com/capcom6/sms-gateway/internal/sms-gateway/handlers/devices"
9
10
"github.com/capcom6/sms-gateway/internal/sms-gateway/handlers/webhooks"
10
11
"github.com/capcom6/sms-gateway/internal/sms-gateway/models"
11
12
"github.com/capcom6/sms-gateway/internal/sms-gateway/modules/auth"
12
13
"github.com/capcom6/sms-gateway/internal/sms-gateway/modules/devices"
13
14
"github.com/capcom6/sms-gateway/internal/sms-gateway/modules/messages"
14
15
"github.com/capcom6/sms-gateway/internal/sms-gateway/repositories"
15
- "github.com/capcom6/sms-gateway/pkg/types"
16
16
"github.com/go-playground/validator/v10"
17
17
"github.com/gofiber/fiber/v2"
18
18
"github.com/gofiber/fiber/v2/middleware/basicauth"
@@ -29,6 +29,7 @@ type ThirdPartyHandlerParams struct {
29
29
30
30
HealthHandler * healthHandler
31
31
WebhooksHandler * webhooks.ThirdPartyController
32
+ DevicesHandler * devicesCtrl.ThirdPartyController
32
33
33
34
AuthSvc * auth.Service
34
35
MessagesSvc * messages.Service
@@ -43,46 +44,13 @@ type thirdPartyHandler struct {
43
44
44
45
healthHandler * healthHandler
45
46
webhooksHandler * webhooks.ThirdPartyController
47
+ devicesHandler * devicesCtrl.ThirdPartyController
46
48
47
49
authSvc * auth.Service
48
50
messagesSvc * messages.Service
49
51
devicesSvc * devices.Service
50
52
}
51
53
52
- // @Summary List devices
53
- // @Description Returns list of registered devices
54
- // @Security ApiAuth
55
- // @Tags User
56
- // @Produce json
57
- // @Success 200 {object} []smsgateway.Device "Device list"
58
- // @Failure 400 {object} smsgateway.ErrorResponse "Invalid request"
59
- // @Failure 401 {object} smsgateway.ErrorResponse "Unauthorized"
60
- // @Failure 500 {object} smsgateway.ErrorResponse "Internal server error"
61
- // @Router /3rdparty/v1/device [get]
62
- //
63
- // List devices
64
- func (h * thirdPartyHandler ) getDevice (user models.User , c * fiber.Ctx ) error {
65
- devices , err := h .devicesSvc .Select (devices .WithUserID (user .ID ))
66
- if err != nil {
67
- return fmt .Errorf ("can't select devices: %w" , err )
68
- }
69
-
70
- response := make ([]smsgateway.Device , 0 , len (devices ))
71
-
72
- for _ , device := range devices {
73
- response = append (response , smsgateway.Device {
74
- ID : device .ID ,
75
- Name : types .OrDefault [string ](device .Name , "" ),
76
- CreatedAt : device .CreatedAt ,
77
- UpdatedAt : device .UpdatedAt ,
78
- DeletedAt : device .DeletedAt ,
79
- LastSeen : device .LastSeen ,
80
- })
81
- }
82
-
83
- return c .JSON (response )
84
- }
85
-
86
54
// @Summary Enqueue message
87
55
// @Description Enqueues message for sending. If ID is not specified, it will be generated
88
56
// @Security ApiAuth
@@ -196,11 +164,11 @@ func (h *thirdPartyHandler) Register(router fiber.Router) {
196
164
return c .Next ()
197
165
})
198
166
199
- router .Get ("/device" , auth .WithUser (h .getDevice ))
200
-
201
167
router .Post ("/message" , auth .WithUser (h .postMessage ))
202
168
router .Get ("/message/:id" , auth .WithUser (h .getMessage )).Name (route3rdPartyGetMessage )
203
169
170
+ h .devicesHandler .Register (router .Group ("/device" )) // TODO: remove after 2025-07-11
171
+ h .devicesHandler .Register (router .Group ("/devices" ))
204
172
h .webhooksHandler .Register (router .Group ("/webhooks" ))
205
173
}
206
174
@@ -209,6 +177,7 @@ func newThirdPartyHandler(params ThirdPartyHandlerParams) *thirdPartyHandler {
209
177
Handler : base.Handler {Logger : params .Logger .Named ("ThirdPartyHandler" ), Validator : params .Validator },
210
178
healthHandler : params .HealthHandler ,
211
179
webhooksHandler : params .WebhooksHandler ,
180
+ devicesHandler : params .DevicesHandler ,
212
181
authSvc : params .AuthSvc ,
213
182
messagesSvc : params .MessagesSvc ,
214
183
devicesSvc : params .DevicesSvc ,
0 commit comments