{"id":28533717,"url":"https://github.com/epam/edp-ddm-notification-service","last_synced_at":"2025-07-07T20:30:40.860Z","repository":{"id":149592409,"uuid":"564420279","full_name":"epam/edp-ddm-notification-service","owner":"epam","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-04T15:17:39.000Z","size":249,"stargazers_count":4,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-06-09T17:08:46.578Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/epam.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-10T17:19:42.000Z","updated_at":"2025-03-04T15:17:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"8016477c-7e6d-4998-9eb9-1aab518b16f8","html_url":"https://github.com/epam/edp-ddm-notification-service","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/epam/edp-ddm-notification-service","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epam%2Fedp-ddm-notification-service","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epam%2Fedp-ddm-notification-service/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epam%2Fedp-ddm-notification-service/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epam%2Fedp-ddm-notification-service/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/epam","download_url":"https://codeload.github.com/epam/edp-ddm-notification-service/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/epam%2Fedp-ddm-notification-service/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264142508,"owners_count":23563508,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-06-09T17:08:21.068Z","updated_at":"2025-07-07T20:30:40.854Z","avatar_url":"https://github.com/epam.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ddm-notification-service\n\n### Overview\n\nThe main purpose of the service is to send notifications to recipients. The application listens\nkafka topic and sends notification to a recipient using allowed available channels such as email\netc.\n\nThe workflow:\n\n* Get Kafka record\n* Get recipient user settings to figure out which channels are available for notification\n* Get notification template and fill it by received model\n* Send notification using filled template to an appropriate channel\n\n### Usage\n\n#### Prerequisites:\n\n* Kafka is configured and running.\n* user-settings-service is configured and running.\n* Postgres database is configured and running;\n* Keycloak is configured and running;\n\n#### Configuration\n\nAvailable properties are following:\n\n```yaml\nnotifications:\n  enabled: (boolean) - whether notifications should be enabled or not\n\ndata-platform:\n  kafka:\n  #properties according to ddm-starter-kafka\n  datasource:\n  #properties according to ddm-starter-database\n\nspring:\n  mail: # spring mail properties for email notification\n    host: localhost\n    port: 3025\n    username: username\n    password: password\n    protocol: smtp\n    properties:\n      mail:\n        smtp:\n          auth: true\n          connectiontimeout: 5000\n          timeout: 5000\n          writetimeout: 5000\n          starttls:\n            enable: true\n\nuser-settings-service:\n  url: base user settings url\n\nkeycloak:\n  url: base keycloak url\n  system-user:\n    realm: system user realm name\n    client-id: system user client identifier\n    client-secret: system user client secret\n```\n\n#### Run application:\n\n* `java -jar \u003cfile-name\u003e.jar`\n\n### Local development\n\nRun spring boot application using 'local' profile:\n\n* `mvn spring-boot:run -Drun.profiles=local` OR using appropriate functions of your IDE;\n* `application-local.yml` - configuration file for local profile.\n\n### Test execution\n\n* Tests could be run via maven command:\n    * `mvn verify -P test` OR using appropriate functions of your IDE.\n\n### License\n\nThe ddm-notification-service is Open Source software released under\nthe [Apache 2.0 license](https://www.apache.org/licenses/LICENSE-2.0).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fepam%2Fedp-ddm-notification-service","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fepam%2Fedp-ddm-notification-service","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fepam%2Fedp-ddm-notification-service/lists"}