https://github.com/infobip/oneapi-java
oneapi-java
https://github.com/infobip/oneapi-java
Last synced: 12 days ago
JSON representation
oneapi-java
- Host: GitHub
- URL: https://github.com/infobip/oneapi-java
- Owner: infobip
- License: apache-2.0
- Created: 2012-08-20T13:26:34.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2023-03-29T11:09:21.000Z (about 2 years ago)
- Last Synced: 2025-04-02T06:12:24.248Z (about 1 month ago)
- Language: Java
- Size: 3.55 MB
- Stars: 11
- Watchers: 20
- Forks: 11
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
OneApi Java client
============================Basic messaging example
-----------------------First initialize the messaging client using your username and password:
Configuration configuration = new Configuration(USERNAME, PASSWORD);
SMSClient smsClient = new SMSClient(configuration);An exception will be thrown if your username and/or password are incorrect.
Prepare the message:
SMSRequest smsRequest = new SMSRequest(SENDER, MESSAGE, DESTINATION);
Send the message:
// Store request id because we can later query for the delivery status with it:
SendMessageResult sendMessageResult = smsClient.getSMSMessagingClient().sendSMS(smsRequest);Later you can query for the delivery status of the message:
DeliveryInfoList deliveryInfoList = smsClient.getSMSMessagingClient().queryDeliveryStatus(SENDER, sendMessageResult.getClientCorrelator());
String deliveryStatus = deliveryInfoList.getDeliveryInfo().get(0).getDeliveryStatus();Possible statuses are: **DeliveredToTerminal**, **DeliveryUncertain**, **DeliveryImpossible**, **MessageWaiting** and **DeliveredToNetwork**.
Messaging with notification push example
-----------------------Same as with the standard messaging example, but when preparing your message:
SMSRequest smsRequest = new SMSRequest(SENDER, MESSAGE, DESTINATION);
// The url where the delivery notification will MESSAGE pushed:
smsRequest.setNotifyURL(NOTIFY_URL);When the delivery notification is pushed to your server as a HTTP POST request, you must process the body of the message with the following code:
DeliveryInfoNotification deliveryInfoNotification = smsClient.getSMSMessagingClient().convertJsonToDeliveryInfoNotification(JSON);
Sending message with language specific characters example
-----------------------------------------------If you want to send message with special characters, this is how you prepare your message:
SMSRequest smsRequest = new SMSRequest(SENDER, MESSAGE, DESTINATION);
// Create Language object with specific language code, use single shift table and use locking shift table for specific language as parameters
Language language = new Language(LanguageCode.TR, true, false);
// Set language
smsRequest.setLanguage(language);Currently supported languages (with their language codes) are: `Spanish - "SP"`, `Portuguese - "PT"`, `Turkish - "TR"`.
Number Context example
-----------------------Initialize and login the data connection client:
Configuration configuration = new Configuration(USERNAME, PASSWORD);
SMSClient smsClient = new SMSClient(configuration);Retrieve the roaming status (Number Context):
Roaming roaming = smsClient.getHLRClient().queryHLR(DESTINATION);
Number Context with notification push example
-----------------------Similar to the previous example, but this time you must set the notification url where the result will be pushed:
smsClient.getHLRClient().queryHLR(DESTINATION, NOTIFY_URL);
When the roaming status notification is pushed to your server as a HTTP POST request, you must process the body of the message with the following code:
RoamingNotification roamingNotification = smsClient.getHLRClient().convertJsonToHLRNotificationExample(JSON);
Retrieve inbound messages example
-----------------------With the existing sms client (see the basic messaging example to see how to start it):
InboundSMSMessageList inboundSMSMessageList = smsClient.getSMSMessagingClient().getInboundMessages();
Inbound message push example
-----------------------The subscription to recive inbound messages can be set up on our site.
When the inbound message notification is pushed to your server as a HTTP POST request, you must process the body of the message with the following code:InboundSMSMessageList inboundSMSMessageList = smsClient.getSMSMessagingClient().convertJsonToInboundSMSMessageNotificationExample(JSON);
License
-------This library is licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0)