Skip to content

Conversation

@JPPortier
Copy link
Contributor

No description provided.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 2, 2026

Dependency Review

✅ No vulnerabilities or license issues found.

Scanned Manifest Files

examples/webhooks/pom.xml
  • com.diffplug.spotless:spotless-maven-plugin@2.40.0
  • com.sinch.sdk:sinch-sdk-java@>= 1.0.0
  • org.springframework.boot:spring-boot-maven-plugin@
  • org.springframework.boot:spring-boot-starter@
  • org.springframework.boot:spring-boot-starter-web@


### Configure application settings

com.mycompany.app.Application settings are using the `SpringBoot` configuration file: [`application.yaml`](src/main/resources/application.yaml) file and enable to configure:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't understand this section. Is it an application package?

### Start server
1. Edit configuration file

See above for Configuration paragraph

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add reference link “See Configuration

import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RestController;

@RestController("MailGun")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: no G - Mailgun

public class Controller {

private static final Logger LOGGER =
Logger.getLogger(com.mycompany.app.verification.Controller.class.getName());
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wrong copy/paste

Comment on lines +6 to +10
@Component("MailGunServerBusinessLogic")
public class ServerBusinessLogic {

private static final Logger LOGGER = Logger.getLogger(ServerBusinessLogic.class.getName());
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's the point of this class?

value = "/SmsEvent",
consumes = MediaType.APPLICATION_JSON_VALUE,
produces = MediaType.APPLICATION_JSON_VALUE)
public ResponseEntity<Void> smsDeliveryEvent(
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: events are not about delivery reports only.

Comment on lines +14 to +16
public void processInboundEvent(InboundMessage event) {
trace(event);
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As you are splitting the inbounds and the delivery reports, do you think it makes sense to also showcase the different kinds of inbounds and delivery reports?


LOGGER.finest("JSON response: " + serializedResponse);

return ResponseEntity.ok().body(serializedResponse);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same question for DICE, PIE and notification events: does it make sense to return "null" in the 200 OK JSON response body?


LOGGER.info("Handle event :" + event);

return SvamlControl.builder().build();
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a place where you showcase the construction of a SVAML response (action + multiple instructions)?

Comment on lines +22 to +23
application-api-key:
application-api-secret:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: referred as application key and application secret in the documentation

@@ -0,0 +1,79 @@
# Backend application built using Sinch Java SDK to handle incoming webhooks

This directory contains a server application based onto [Sinch SDK java](https://github.com/sinch/sinch-sdk-java)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

English: don't use onto but on:

Suggested change
This directory contains a server application based onto [Sinch SDK java](https://github.com/sinch/sinch-sdk-java)
This directory contains a server application based on the [Sinch SDK java](https://github.com/sinch/sinch-sdk-java)

Onto implies movement toward a surface or position, this is not the case here

Comment on lines +21 to +23
- `project-id`: YOUR_project_id
- `key-id`: YOUR_access_key_id
- `key-secret`: YOUR_access_key_secret
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For most of the use cases, they are not needed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants