Module Pinpoint.Campaign

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html

type message = {
  1. json_body : string option;
  2. action : string option;
  3. media_url : string option;
  4. time_to_live : int option;
  5. image_small_icon_url : string option;
  6. image_url : string option;
  7. title : string option;
  8. image_icon_url : string option;
  9. silent_push : bool option;
  10. body : string option;
  11. raw_content : string option;
  12. url : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-message.html

and attribute_dimension = {
  1. attribute_type : string option;
  2. values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-attributedimension.html

and in_app_message_header_config = {
  1. alignment : string option;
  2. header : string option;
  3. text_color : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-inappmessageheaderconfig.html

and campaign_sms_message = {
  1. entity_id : string option;
  2. origination_number : string option;
  3. sender_id : string option;
  4. body : string option;
  5. message_type : string option;
  6. template_id : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignsmsmessage.html

and set_dimension = {
  1. dimension_type : string option;
  2. values : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-setdimension.html

and template = {
  1. version : string option;
  2. name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-template.html

and custom_delivery_configuration = {
  1. delivery_uri : string option;
  2. endpoint_types : string list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-customdeliveryconfiguration.html

and in_app_message_body_config = {
  1. alignment : string option;
  2. text_color : string option;
  3. body : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-inappmessagebodyconfig.html

and default_button_configuration = {
  1. button_action : string option;
  2. border_radius : int option;
  3. text : string option;
  4. text_color : string option;
  5. background_color : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-defaultbuttonconfiguration.html

and quiet_time = {
  1. start : string;
  2. end_ : string;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule-quiettime.html

and metric_dimension = {
  1. comparison_operator : string option;
  2. value : float option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-metricdimension.html

and campaign_hook = {
  1. mode : string option;
  2. web_url : string option;
  3. lambda_function_name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignhook.html

and override_button_configuration = {
  1. button_action : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-overridebuttonconfiguration.html

and limits = {
  1. daily : int option;
  2. maximum_duration : int option;
  3. total : int option;
  4. messages_per_second : int option;
  5. session : int option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-limits.html

and campaign_email_message = {
  1. from_address : string option;
  2. html_body : string option;
  3. title : string option;
  4. body : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaignemailmessage.html

and campaign_custom_message = {
  1. data : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigncustommessage.html

and event_dimensions = {
  1. metrics : Yojson.Safe.t option;
  2. event_type : set_dimension option;
  3. attributes_ : Yojson.Safe.t option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-eventdimensions.html

and in_app_message_button = {
  1. web : override_button_configuration option;
  2. default_config : default_button_configuration option;
  3. ios : override_button_configuration option;
  4. android : override_button_configuration option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-inappmessagebutton.html

and template_configuration = {
  1. sms_template : template option;
  2. email_template : template option;
  3. push_template : template option;
  4. voice_template : template option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-templateconfiguration.html

and in_app_message_content = {
  1. body_config : in_app_message_body_config option;
  2. secondary_btn : in_app_message_button option;
  3. image_url : string option;
  4. primary_btn : in_app_message_button option;
  5. header_config : in_app_message_header_config option;
  6. background_color : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-inappmessagecontent.html

and campaign_event_filter = {
  1. filter_type : string option;
  2. dimensions : event_dimensions option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigneventfilter.html

and schedule = {
  1. time_zone : string option;
  2. quiet_time : quiet_time option;
  3. end_time : string option;
  4. start_time : string option;
  5. frequency : string option;
  6. event_filter : campaign_event_filter option;
  7. is_local_time : bool option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-schedule.html

and campaign_in_app_message = {
  1. custom_config : Yojson.Safe.t option;
  2. layout : string option;
  3. content : in_app_message_content list option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-campaigninappmessage.html

and message_configuration = {
  1. apns_message : message option;
  2. baidu_message : message option;
  3. default_message : message option;
  4. in_app_message : campaign_in_app_message option;
  5. email_message : campaign_email_message option;
  6. gcm_message : message option;
  7. sms_message : campaign_sms_message option;
  8. custom_message : campaign_custom_message option;
  9. adm_message : message option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-messageconfiguration.html

and write_treatment_resource = {
  1. treatment_description : string option;
  2. message_configuration : message_configuration option;
  3. schedule : schedule option;
  4. template_configuration : template_configuration option;
  5. custom_delivery_configuration : custom_delivery_configuration option;
  6. size_percent : int option;
  7. treatment_name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pinpoint-campaign-writetreatmentresource.html

type properties = {
  1. description : string option;
  2. segment_id : string;
  3. priority : int option;
  4. template_configuration : template_configuration option;
  5. is_paused : bool option;
  6. additional_treatments : write_treatment_resource list option;
  7. name : string;
  8. segment_version : int option;
  9. treatment_description : string option;
  10. message_configuration : message_configuration option;
  11. limits : limits option;
  12. holdout_percent : int option;
  13. schedule : schedule;
  14. custom_delivery_configuration : custom_delivery_configuration option;
  15. application_id : string;
  16. campaign_hook : campaign_hook option;
  17. tags : Yojson.Safe.t option;
  18. treatment_name : string option;
}

see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pinpoint-campaign.html;

val make_properties : ?description:string -> segment_id:string -> ?priority:int -> ?template_configuration:template_configuration -> ?is_paused:bool -> ?additional_treatments:write_treatment_resource list -> name:string -> ?segment_version:int -> ?treatment_description:string -> ?message_configuration:message_configuration -> ?limits:limits -> ?holdout_percent:int -> schedule:schedule -> ?custom_delivery_configuration:custom_delivery_configuration -> application_id:string -> ?campaign_hook:campaign_hook -> ?tags:Yojson.Safe.t -> ?treatment_name:string -> unit -> properties
val make_message : ?json_body:string -> ?action:string -> ?media_url:string -> ?time_to_live:int -> ?image_small_icon_url:string -> ?image_url:string -> ?title:string -> ?image_icon_url:string -> ?silent_push:bool -> ?body:string -> ?raw_content:string -> ?url:string -> unit -> message
val make_attribute_dimension : ?attribute_type:string -> ?values:string list -> unit -> attribute_dimension
val make_in_app_message_header_config : ?alignment:string -> ?header:string -> ?text_color:string -> unit -> in_app_message_header_config
val make_campaign_sms_message : ?entity_id:string -> ?origination_number:string -> ?sender_id:string -> ?body:string -> ?message_type:string -> ?template_id:string -> unit -> campaign_sms_message
val make_set_dimension : ?dimension_type:string -> ?values:string list -> unit -> set_dimension
val make_template : ?version:string -> ?name:string -> unit -> template
val make_custom_delivery_configuration : ?delivery_uri:string -> ?endpoint_types:string list -> unit -> custom_delivery_configuration
val make_in_app_message_body_config : ?alignment:string -> ?text_color:string -> ?body:string -> unit -> in_app_message_body_config
val make_default_button_configuration : ?button_action:string -> ?border_radius:int -> ?text:string -> ?text_color:string -> ?link:string -> ?background_color:string -> unit -> default_button_configuration
val make_quiet_time : start:string -> end_:string -> unit -> quiet_time
val make_metric_dimension : ?comparison_operator:string -> ?value:float -> unit -> metric_dimension
val make_campaign_hook : ?mode:string -> ?web_url:string -> ?lambda_function_name:string -> unit -> campaign_hook
val make_override_button_configuration : ?button_action:string -> ?link:string -> unit -> override_button_configuration
val make_limits : ?daily:int -> ?maximum_duration:int -> ?total:int -> ?messages_per_second:int -> ?session:int -> unit -> limits
val make_campaign_email_message : ?from_address:string -> ?html_body:string -> ?title:string -> ?body:string -> unit -> campaign_email_message
val make_campaign_custom_message : ?data:string -> unit -> campaign_custom_message
val make_event_dimensions : ?metrics:Yojson.Safe.t -> ?event_type:set_dimension -> ?attributes_:Yojson.Safe.t -> unit -> event_dimensions
val make_in_app_message_button : ?web:override_button_configuration -> ?default_config:default_button_configuration -> ?ios:override_button_configuration -> ?android:override_button_configuration -> unit -> in_app_message_button
val make_template_configuration : ?sms_template:template -> ?email_template:template -> ?push_template:template -> ?voice_template:template -> unit -> template_configuration
val make_in_app_message_content : ?body_config:in_app_message_body_config -> ?secondary_btn:in_app_message_button -> ?image_url:string -> ?primary_btn:in_app_message_button -> ?header_config:in_app_message_header_config -> ?background_color:string -> unit -> in_app_message_content
val make_campaign_event_filter : ?filter_type:string -> ?dimensions:event_dimensions -> unit -> campaign_event_filter
val make_schedule : ?time_zone:string -> ?quiet_time:quiet_time -> ?end_time:string -> ?start_time:string -> ?frequency:string -> ?event_filter:campaign_event_filter -> ?is_local_time:bool -> unit -> schedule
val make_campaign_in_app_message : ?custom_config:Yojson.Safe.t -> ?layout:string -> ?content:in_app_message_content list -> unit -> campaign_in_app_message
val make_message_configuration : ?apns_message:message -> ?baidu_message:message -> ?default_message:message -> ?in_app_message:campaign_in_app_message -> ?email_message:campaign_email_message -> ?gcm_message:message -> ?sms_message:campaign_sms_message -> ?custom_message:campaign_custom_message -> ?adm_message:message -> unit -> message_configuration
val make_write_treatment_resource : ?treatment_description:string -> ?message_configuration:message_configuration -> ?schedule:schedule -> ?template_configuration:template_configuration -> ?custom_delivery_configuration:custom_delivery_configuration -> ?size_percent:int -> ?treatment_name:string -> unit -> write_treatment_resource
val yojson_of_message : message -> Yojson.Safe.t
val yojson_of_attribute_dimension : attribute_dimension -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_in_app_message_header_config : in_app_message_header_config -> Yojson.Safe.t
val yojson_of_campaign_sms_message : campaign_sms_message -> Yojson.Safe.t
val yojson_of_set_dimension : set_dimension -> Yojson.Safe.t
val yojson_of_template : template -> Yojson.Safe.t
val yojson_of_custom_delivery_configuration : custom_delivery_configuration -> Yojson.Safe.t
val yojson_of_in_app_message_body_config : in_app_message_body_config -> Yojson.Safe.t
val yojson_of_default_button_configuration : default_button_configuration -> Yojson.Safe.t
val yojson_of_quiet_time : quiet_time -> Yojson.Safe.t
val yojson_of_metric_dimension : metric_dimension -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_campaign_hook : campaign_hook -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_override_button_configuration : override_button_configuration -> Yojson.Safe.t
val yojson_of_limits : limits -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_campaign_email_message : campaign_email_message -> Yojson.Safe.t
val yojson_of_campaign_custom_message : campaign_custom_message -> Yojson.Safe.t
val yojson_of_event_dimensions : event_dimensions -> Yojson.Safe.t
val yojson_of_in_app_message_button : in_app_message_button -> Yojson.Safe.t
val yojson_of_template_configuration : template_configuration -> Yojson.Safe.t
val yojson_of_in_app_message_content : in_app_message_content -> Yojson.Safe.t
val yojson_of_campaign_event_filter : campaign_event_filter -> Yojson.Safe.t
val yojson_of_schedule : schedule -> Yojson.Safe.t
val yojson_of_campaign_in_app_message : campaign_in_app_message -> Yojson.Safe.t
val yojson_of_message_configuration : message_configuration -> Yojson.Safe.t
val yojson_of_write_treatment_resource : write_treatment_resource -> [> `Assoc of (string * Yojson.Safe.t) list ]
val yojson_of_properties : properties -> [> `Assoc of (string * Yojson.Safe.t) list ]
type attributes = {
  1. ref_ : string;
  2. campaign_id : string;
  3. arn : string;
}
val create_attributes : string -> attributes
val cloudformation_type : string