Creating CCC Campaign (Java)

(Redirected from Creating CCC Campaign)

Introduduction

This section showcases creating CallCenterConnect campaigns via the PredictiveService API. It is, as the title suggests, written in Java using the xFire web services package. Most of the source code is simple, thanks to a very good web services client.

   public static void main(String[] args) 
    {    
    	// xFire specific client instantiation 
        PredictiveServiceClient client = new PredictiveServiceClient();
        
        // Constants
        // These values are for demonstration only, please replace with your own 
        // specific parameters.
        String API_KEY = "db0cbf9f5sweqgcoe09sdfsdf809jefdwefcd9fd92f7bf11324e1063e5413963ee78";
        String callerid = "8885559994";
        String name = "MyPredictiveCampaign";
        String passcode = "letmsdfein1234";
        /*
         * These are standard classes generated by xFire. Almost every language has a 
         * web services client generator (PhP has nu_soap, .NET has native web services support etc).
         */
        ArrayOfDisposition dispositionLists = new ObjectFactory().
                                                    createArrayOfDisposition();
        populateDispositions( dispositionLists ); // Populate dispositions 
        ArrayOfString numbers = new ObjectFactory().
                                              createArrayOfString();
        populateNumbers( numbers );  // Populate numbers
		
        // Get the endpoint
        PredictiveServicePortType service = client.getPredictiveServiceHttpPort();
        
        // Create the campaign.
        /*
         * If the campaign is created successfully, it will return the id , else
         * a negative value.
         */
        long campaignid = service.createCallCenterConnectCampaign(API_KEY, 
        		 							  callerid, 
        		 							  name, 
        		 							  passcode, 
        		 							  dispositionLists, 
        		 							  numbers );
        
        System.out.println( "The Campaign ID is " + campaignid );
	System.out.println("test client completed");
        System.exit(0);


	private static void populateNumbers(ArrayOfString numbers) 
	{
		List<String> numberList =  numbers.getString();
		// Add numbers as necessary
		// dummy numbers for demonstration ONLY
		numberList.add("3105557076");
		numberList.add("9495555550");
	}

	private static void populateDispositions(ArrayOfDisposition dispositionLists) 
	{
		List<Disposition> dispositions = dispositionLists.getDisposition();
		// First, create the disposition option
		ArrayOfString disValues = new ObjectFactory().createArrayOfString();
		disValues.getString().add("Answer A" );
		disValues.getString().add("Answer B" );
		// Second, create the disposition it self
		JAXBElement<String> disName = new ObjectFactory().createDispositionName("First Question");
		JAXBElement<ArrayOfString> disDisp = new ObjectFactory().createDispositionDispositions( disValues );
		Disposition disposition = new Disposition();
		disposition.setName(disName);
		disposition.setDispositions(disDisp);
		//finally, add the disposition to the list of dispositions
		dispositions.add( disposition );
	}

Additional Links