MCPcopy Index your code
hub / github.com/NdoleStudio/httpsms / getPayload

Method getPayload

api/pkg/services/webhook_service.go:293–339  ·  view source on GitHub ↗
(ctxLogger telemetry.Logger, event cloudevents.Event, webhook *entities.Webhook)

Source from the content-addressed store, hash-verified

291}
292
293func (service *WebhookService) getPayload(ctxLogger telemetry.Logger, event cloudevents.Event, webhook *entities.Webhook) any {
294 if event.Type() != events.EventTypeMessagePhoneReceived {
295 return event
296 }
297
298 if !strings.HasPrefix(webhook.URL, "https://discord.com/api/webhooks/") {
299 return event
300 }
301
302 payload := new(events.MessagePhoneReceivedPayload)
303
304 err := event.DataAs(payload)
305 if err != nil {
306 ctxLogger.Error(stacktrace.Propagate(err, fmt.Sprintf("cannot unmarshal event [%s] with ID [%s] into [%T]", event.Type(), event.ID(), payload)))
307 return event
308 }
309
310 return map[string]any{
311 "avatar_url": "https://httpsms.com/avatar.png",
312 "username": "httpsms.com",
313 "content": "✉ new message received",
314 "embeds": []fiber.Map{
315 {
316 "fields": []fiber.Map{
317 {
318 "name": "From:",
319 "value": service.getFormattedNumber(ctxLogger, payload.Contact),
320 "inline": true,
321 },
322 {
323 "name": "To:",
324 "value": service.getFormattedNumber(ctxLogger, payload.Owner),
325 "inline": true,
326 },
327 {
328 "name": "Content:",
329 "value": payload.Content,
330 },
331 {
332 "name": "MessageID:",
333 "value": payload.MessageID,
334 },
335 },
336 },
337 },
338 }
339}
340
341func (service *WebhookService) getAuthToken(webhook *entities.Webhook) (string, error) {
342 token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.RegisteredClaims{

Callers 1

createRequestMethod · 0.95

Calls 2

getFormattedNumberMethod · 0.80
ErrorMethod · 0.65

Tested by

no test coverage detected