001package com.plivo.api.models.campaign;
002
003import com.plivo.api.models.base.Creator;
004import com.plivo.api.util.Utils;
005import retrofit2.Call;
006
007public class CampaignCreator extends Creator<CampaignCreateResponse> {
008  private String brandID;
009  private String campaignAlias;
010  private String vertical;
011  private String usecase;
012  private String[] subUsecases;
013  private String description;
014  private Boolean embeddedLink;
015  private Boolean embeddedPhone;
016  private Boolean ageGated;
017  private Boolean directLending;
018  private Boolean subscriberOptin;
019  private Boolean subscriberOptout;
020  private Boolean subscriberHelp;
021  private Boolean affiliateMarketing;
022  private String sample1;
023  private String sample2;
024  private String url;
025  private String method;
026  private String messageFlow;
027  private String helpMessage;
028  private String optoutMessage;
029  private String optinKeywords;
030  private String optinMessage;
031  private String optoutKeywords;
032  private String helpKeywords;
033  
034  CampaignCreator(String brandID,String campaignAlias,String vertical,String usecase,String[] subUsecases,String description,Boolean embeddedLink,Boolean embeddedPhone,Boolean ageGated,Boolean directLending,Boolean affiliateMarketing, Boolean subscriberOptin,Boolean subscriberOptout,Boolean subscriberHelp,String sample1,String sample2, String url, String method, String messageFlow, String helpMessage, String optoutMessage, String optinKeywords, String optinMessage, String optoutKeywords, String helpKeywords) {
035   
036    this.brandID = brandID;
037    this.campaignAlias = campaignAlias;
038    this.vertical = vertical;
039    this.usecase = usecase;
040    this.subUsecases = subUsecases;
041    this.description = description;
042    this.embeddedLink = embeddedLink;
043    this.embeddedPhone = embeddedPhone;
044    this.ageGated = ageGated;
045    this.directLending = directLending;
046    this.subscriberOptin = subscriberOptin;
047    this.subscriberOptout = subscriberOptout;
048    this.subscriberHelp = subscriberHelp;
049    this.affiliateMarketing = affiliateMarketing;
050    this.sample2 = sample2;
051    this.sample1 = sample1;
052    this.url = url;
053    this.method = method;
054    this.messageFlow = messageFlow;
055    this.helpMessage = helpMessage;
056    this.optoutMessage = optoutMessage;
057    this.optinKeywords = optinKeywords;
058    this.optinMessage = optinMessage;
059    this.optoutKeywords = optoutKeywords;
060    this.helpKeywords = helpKeywords;
061  }
062
063  public String brandID(){
064      return this.brandID;
065  }
066
067  public String campaignAlias(){
068      return this.campaignAlias;
069  }
070
071  public String vertical(){
072      return this.vertical;
073  }
074
075  public String usecase(){
076      return this.usecase;
077  }
078
079  public String description(){
080      return this.description;
081  }
082  public String sample2(){
083      return this.sample2;
084  }
085  public String sample1(){
086      return this.sample1;
087  }
088  public Boolean affiliateMarketing(){
089    return this.affiliateMarketing;
090}
091  public Boolean subscriberHelp(){
092      return this.subscriberHelp;
093  }
094  public Boolean subscriberOptout(){
095      return this.subscriberOptout;
096  }
097  public Boolean subscriberOptin(){
098      return this.subscriberOptin;
099  }
100  public Boolean directLending(){
101      return this.directLending;
102  }
103  public Boolean ageGated(){
104      return this.ageGated;
105  }
106  public Boolean embeddedPhone(){
107      return this.embeddedPhone;
108  }
109  public Boolean embeddedLink(){
110      return this.embeddedLink;
111  }
112  public String url(){
113    return this.url;
114  }
115  public String method(){
116    return this.method;
117  }
118  
119  public String messageFlow(){
120    return this.messageFlow;
121  }
122  
123  public String helpMessage(){
124    return this.helpMessage;
125  }
126
127  public String optoutMessage(){
128    return this.optoutMessage;
129  }
130  public String optinKeywords(){
131    return this.optinKeywords;
132  }
133
134  public String optinMessage(){
135    return this.optinMessage;
136  }
137  public String optoutKeywords(){
138    return this.optoutKeywords;
139  }
140  public String helpKeywords(){
141    return this.helpKeywords;
142  }
143
144
145
146  @Override
147  protected Call<CampaignCreateResponse> obtainCall() {
148    return client().getApiService().createCampaign(client().getAuthId(), this);
149  }
150}