https://github.com/openmf/message-gateway
Message gateway is a push messaging service for Fineract provider that makes it simple to push notifcations through SMS and email
https://github.com/openmf/message-gateway
Last synced: about 1 year ago
JSON representation
Message gateway is a push messaging service for Fineract provider that makes it simple to push notifcations through SMS and email
- Host: GitHub
- URL: https://github.com/openmf/message-gateway
- Owner: openMF
- License: mpl-2.0
- Created: 2016-10-28T05:19:48.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2024-10-29T07:22:10.000Z (over 1 year ago)
- Last Synced: 2025-03-31T10:05:58.093Z (about 1 year ago)
- Language: Java
- Homepage:
- Size: 348 KB
- Stars: 25
- Watchers: 12
- Forks: 76
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# message-gateway
## Build set up
##### To create standalone application:
./gradlew clean build
##### To run
cd build/lib
java -jar message-gateway-0.0.1.jar
##### To create deployable war:
./gradlew clean build -Pprofile=deployable
war file can be found in build/libs
##Steps to configure Message-Gateway
#### Create tenant with http://host:9191/tenants/
method: POST
Request Body:
{
"tenantId" : "Tenant Id",
"description" : "Some Description"
}
This API will return an unique tenant app key. This key should not be shared with others.
#### Create Twilio SMS Bridge with http://host:9191/smsbridges
method: POST
HEADERS:
Fineract-Platform-TenantId:tenantId
Fineract-Tenant-App-Key:generatedAppkeywhilecreatingtenant
Request Body:
{
"phoneNo": "+xxxxxxxxxxx",
"providerName": "Twilio Provider",
"providerDescription": "SMS Provider for promotional messages",
"providerKey":"Twilio",
"countryCode":"+xx",
"bridgeConfigurations": [
{
"configName":"Provider_Account_Id",
"configValue":"xxxxx"
},
{
"configName":"Provider_Auth_Token",
"configValue":"xxxxx"
}
]
}
This API will return Bridge Identifier by which you can use while sending SMS
#### Create Infobip SMS Bridge with http://host:9191/smsbridges
method: POST
HEADERS:
Fineract-Platform-TenantId:tenantId
Fineract-Tenant-App-Key:generatedAppkeywhilecreatingtenant
Request Body:
{
"phoneNo": "+xxxxxxxxxxx",
"providerName": "Infobip Provider",
"providerDescription": "SMS Provider for transactional messages",
"providerKey":"InfoBip",
"countryCode":"+xx",
"bridgeConfigurations": [
{
"configName":"Provider_Account_Id",
"configValue":"xxxxx"
},
{
"configName":"Provider_Auth_Token",
"configValue":"xxxxx"
}
]
}
This API will return Bridge Identifier by which you can use while sending SMS
#### Send SMS by using one of the provider with http://localhost:9191/sms
Method: POST
HEADERS:
Fineract-Platform-TenantId:tenantId
Fineract-Tenant-App-Key:generatedAppkeywhilecreatingtenant
Request Body:
[{
"internalId":"55",
"mobileNumber":"xxxxxxxxxx",
"message":"Hello from Fineract",
"providerId":"2"
}]
Note: While sending SMS, don't include country code as part of each message. This country code will be prefixed by taking value from provider details. You need configure host-address: [your public ip on which message-gateway is running] in application.yml
#### To add Telerivet Java Client :
Include following url in build.gradle:
https://fynarfin.jfrog.io/artifactory/fyn-libs-release-local.
And add the following line under depedencies in build.gradle
implementation 'com.telerivet:TelerivetAPIClient:1.5.0'
###Auto-Trigger