Skip to content

infobip/oneapi-java

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

62 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚠️ Deprecated

This repository is deprecated and no longer actively maintained, it will be archived in the near future.

If you're looking for an active alternative, we recommend using infobip-api-java-client instead.

You’re still welcome to browse or fork the code, but issues and pull requests will not be monitored.

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

About

oneapi-java

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 6

Languages