-
Notifications
You must be signed in to change notification settings - Fork 1
Example: sending an immediate delivery
Stefano Varesi edited this page Apr 9, 2015
·
1 revision
package com.contactlab.api.ws.examples;
import javax.xml.ws.BindingProvider;
import com.contactlab.api.ws.ClabService;
import com.contactlab.api.ws.ClabService_Service;
import com.contactlab.api.ws.domain.AuthToken;
import com.contactlab.api.ws.domain.Campaign;
import com.contactlab.api.ws.domain.Subscriber;
import com.contactlab.api.ws.domain.SubscriberAttribute;
public class SendImmediateMessage {
private String recipient = "username@contactlabo.com";
private int campaignId = 3;
private int sourceIdentifier = 1;
private int subscriberIdentifier = 2;
private int sendImmediateMethod = 1;
private String campaignAlias = "existingCampaign";
private ClabService service;
private Subscriber subscriber;
private AuthToken token;
private Campaign campaign;
public static void main(String[] args) {
new SendImmediateMessage();
}
public SendImmediateMessage() {
init();
sendImmediateMessage(sendImmediateMethod);
shutdown();
}
private void init() {
service = new ClabService_Service().getClabServicePort();
BindingProvider provider = ((BindingProvider) service);
provider.getRequestContext().put(BindingProvider.SESSION_MAINTAIN_PROPERTY, true);
token = service.borrowToken(Parameters.apiKey, Parameters.userKey);
campaign = service.getCampaign(token, campaignId);
subscriber = new Subscriber();
SubscriberAttribute subscriberAttribute = null;
subscriberAttribute = new SubscriberAttribute();
subscriberAttribute.setKey("RECIPIENT");
subscriberAttribute.setValue(recipient);
subscriber.getAttributes().add(subscriberAttribute);
subscriberAttribute = new SubscriberAttribute();
subscriberAttribute.setKey("FIRSTNAME");
subscriberAttribute.setValue("fabio");
subscriber.getAttributes().add(subscriberAttribute);
subscriberAttribute = new SubscriberAttribute();
subscriberAttribute.setKey("LASTNAME");
subscriberAttribute.setValue("sangalli");
subscriber.getAttributes().add(subscriberAttribute);
subscriberAttribute = new SubscriberAttribute();
subscriberAttribute.setKey("NOTE");
subscriberAttribute.setValue("sendImmediateMessage");
subscriber.getAttributes().add(subscriberAttribute);
}
public void shutdown() {
subscriber = null;
campaign = null;
if (token != null) {
service.invalidateToken(token);
}
service = null;
}
public void sendImmediateMessage(int number) {
try {
switch (number) {
case 1:
service.sendImmediateMessage(Parameters.apiKey, Parameters.userKey, campaignId, subscriber);
break;
case 2:
service.sendImmediateMessageSidCid(Parameters.apiKey, Parameters.userKey, campaignId, sourceIdentifier, subscriberIdentifier);
break;
case 3:
service.sendImmediateMessageSDataCData(Parameters.apiKey, Parameters.userKey, campaign, subscriber);
break;
case 4:
service.sendImmediateMessageSIdCData(Parameters.apiKey, Parameters.userKey, campaign, sourceIdentifier, subscriberIdentifier);
break;
case 5:
service.sendImmediateMessageSdataCAl(Parameters.apiKey, Parameters.userKey, campaignAlias, subscriber);
break;
case 6:
service.sendImmediateMessageSidCAl(Parameters.apiKey, Parameters.userKey, campaignAlias, sourceIdentifier, subscriberIdentifier);
break;
default:
break;
}
} catch (Exception e1) {
e1.printStackTrace();
}
}
}