There are more AWS SDK examples available in the AWS Doc SDK Examples
Amazon Pinpoint examples using SDK for SAP ABAP
The following code examples show you how to perform actions and implement common scenarios by using the AWS SDK for SAP ABAP with Amazon Pinpoint.
Actions are code excerpts from larger programs and must be run in context. While actions show you how to call individual service functions, you can see actions in context in their related scenarios.
Each example includes a link to the complete source code, where you can find instructions on how to set up and run the code in context.
Topics
Actions
The following code example shows how to use SendMessages.
- SDK for SAP ABAP
-
Note
There's more on GitHub. Find the complete example and learn how to set up and run in the AWS Code Examples Repository
. Send an email message.
" Build the addresses map from the list of to_addresses DATA lt_addresses TYPE /aws1/cl_pptaddressconf=>tt_mapofaddressconfiguration. LOOP AT it_to_addresses INTO DATA(lo_address). INSERT VALUE /aws1/cl_pptaddressconf=>ts_mapofaddressconf_maprow( key = lo_address->get_value( ) value = NEW /aws1/cl_pptaddressconf( iv_channeltype = 'EMAIL' ) ) INTO TABLE lt_addresses. ENDLOOP. " Send the email message DATA(lo_result) = lo_ppt->sendmessages( iv_applicationid = iv_app_id io_messagerequest = NEW /aws1/cl_pptmessagerequest( it_addresses = lt_addresses io_messageconfiguration = NEW /aws1/cl_pptdirectmessageconf( io_emailmessage = NEW /aws1/cl_pptemailmessage( iv_fromaddress = iv_sender io_simpleemail = NEW /aws1/cl_pptsimpleemail( io_subject = NEW /aws1/cl_pptsimpleemailpart( iv_charset = iv_char_set iv_data = iv_subject ) io_htmlpart = NEW /aws1/cl_pptsimpleemailpart( iv_charset = iv_char_set iv_data = iv_html_message ) io_textpart = NEW /aws1/cl_pptsimpleemailpart( iv_charset = iv_char_set iv_data = iv_text_message ) ) ) ) ) ). " Extract message IDs from response DATA(lo_message_response) = lo_result->get_messageresponse( ). ot_message_ids = lo_message_response->get_result( ). MESSAGE 'Email message sent successfully.' TYPE 'I'.Send an SMS message.
" Build the addresses map for the destination number DATA lt_addresses TYPE /aws1/cl_pptaddressconf=>tt_mapofaddressconfiguration. INSERT VALUE /aws1/cl_pptaddressconf=>ts_mapofaddressconf_maprow( key = iv_destination_number value = NEW /aws1/cl_pptaddressconf( iv_channeltype = 'SMS' ) ) INTO TABLE lt_addresses. " Send the SMS message DATA(lo_result) = lo_ppt->sendmessages( iv_applicationid = iv_app_id io_messagerequest = NEW /aws1/cl_pptmessagerequest( it_addresses = lt_addresses io_messageconfiguration = NEW /aws1/cl_pptdirectmessageconf( io_smsmessage = NEW /aws1/cl_pptsmsmessage( iv_body = iv_message iv_messagetype = iv_message_type iv_originationnumber = iv_origination_number ) ) ) ). " Extract message ID from response DATA(lo_message_response) = lo_result->get_messageresponse( ). DATA(lt_results) = lo_message_response->get_result( ). LOOP AT lt_results INTO DATA(ls_result). IF ls_result-key = iv_destination_number. ov_message_id = ls_result-value->get_messageid( ). EXIT. ENDIF. ENDLOOP. MESSAGE 'SMS message sent successfully.' TYPE 'I'.Send an email message with an existing email template.
" Build the addresses map from the list of to_addresses DATA lt_addresses TYPE /aws1/cl_pptaddressconf=>tt_mapofaddressconfiguration. LOOP AT it_to_addresses INTO DATA(lo_address). INSERT VALUE /aws1/cl_pptaddressconf=>ts_mapofaddressconf_maprow( key = lo_address->get_value( ) value = NEW /aws1/cl_pptaddressconf( iv_channeltype = 'EMAIL' ) ) INTO TABLE lt_addresses. ENDLOOP. " Send the email message using a template DATA(lo_result) = lo_ppt->sendmessages( iv_applicationid = iv_app_id io_messagerequest = NEW /aws1/cl_pptmessagerequest( it_addresses = lt_addresses io_messageconfiguration = NEW /aws1/cl_pptdirectmessageconf( io_emailmessage = NEW /aws1/cl_pptemailmessage( iv_fromaddress = iv_sender ) ) io_templateconfiguration = NEW /aws1/cl_ppttemplateconf( io_emailtemplate = NEW /aws1/cl_ppttemplate( iv_name = iv_template_name iv_version = iv_template_version ) ) ) ). " Extract message IDs from response DATA(lo_message_response) = lo_result->get_messageresponse( ). ot_message_ids = lo_message_response->get_result( ). MESSAGE 'Templated email message sent successfully.' TYPE 'I'.Send a text message with an existing SMS template.
" Build the addresses map for the destination number DATA lt_addresses TYPE /aws1/cl_pptaddressconf=>tt_mapofaddressconfiguration. INSERT VALUE /aws1/cl_pptaddressconf=>ts_mapofaddressconf_maprow( key = iv_destination_number value = NEW /aws1/cl_pptaddressconf( iv_channeltype = 'SMS' ) ) INTO TABLE lt_addresses. " Send the SMS message using a template DATA(lo_result) = lo_ppt->sendmessages( iv_applicationid = iv_app_id io_messagerequest = NEW /aws1/cl_pptmessagerequest( it_addresses = lt_addresses io_messageconfiguration = NEW /aws1/cl_pptdirectmessageconf( io_smsmessage = NEW /aws1/cl_pptsmsmessage( iv_messagetype = iv_message_type iv_originationnumber = iv_origination_number ) ) io_templateconfiguration = NEW /aws1/cl_ppttemplateconf( io_smstemplate = NEW /aws1/cl_ppttemplate( iv_name = iv_template_name iv_version = iv_template_version ) ) ) ). " Extract message ID from response DATA(lo_message_response) = lo_result->get_messageresponse( ). DATA(lt_results) = lo_message_response->get_result( ). LOOP AT lt_results INTO DATA(ls_result). IF ls_result-key = iv_destination_number. ov_message_id = ls_result-value->get_messageid( ). EXIT. ENDIF. ENDLOOP. MESSAGE 'Templated SMS message sent successfully.' TYPE 'I'.-
For API details, see SendMessages in AWS SDK for SAP ABAP API reference.
-