Wednesday, May 23, 2018

AmpScript and conditional statements - Snippet One

%%[ 
Set @fname = recipient_first
]%% 

%%=IF(EMPTY(@fname),"NoName",@fname)=%%
IF The system returns the value “NoName” if the @fname variable is empty. ELSE, It returns the value of the @fname variable if it is NOT empty.

Just a quick snippet but many more to follow.

Monday, May 14, 2018

Salesforce Marketing Cloud Quick Glossary


A/B testSending two variations of part of an email, such as subject lines, From names, and sections to different audiences to see which performs better.
activitiesActions the system performs as part of a step in an automation.
activitiesThe things that happen after a subscriber enters a journey and travels down its paths, such as sending messages and updating subscriber data in the system.
AMPscriptSalesforce Marketing Cloud’s proprietary scripting language. You use it mainly to customize and automate the content in your marketing messages.
app switcherThe toolbar in Salesforce Marketing Cloud that users use to navigate between apps. It appears when you pause your mouse pointer over the Salesforce Marketing Cloud logo.
attribute groupA group of related data that you keep about your contacts.
audienceThe group of contacts who receive a message. In the strictest sense, an audience is a data extension created by Audience Builder, but the term is sometimes used more generically.
automationA program that runs on a schedule.
beaconA piece of hardware that uses Bluetooth technology to detect when a subscriber’s mobile device is nearby.
bounceEmails that were returned to you undelivered. It might not be worth continuing to maintain information about subscribers who bounce.
business unitA sub-account to your main parent account. For example, you might have multiple business units to represent different departments in your company, sister companies owned by the same parent company, or different locations of a retail corporation.
campaignA set of related marketing activities, such as a series of emails, text messages, and websites related to one another (for example, a President’s Day sale).
canvasThe right side of the screen, below the toolbars. Several apps in Marketing Cloud use a canvas to be your work space in that app.
cardinalityThe relationship between two database tables. If each record in one table has a corresponding record in another table, the cardinality is one-to-one. Alternately, if each record in one table has any number of corresponding records in the second table, the cardinality is one-to-many.
channelA group of apps, all available from the same menu in the app switcher.
clickthrough rate, or CTRThe percentage of people who were sent an email message and who went on to click an email in that message.
collectionSimilar to a folder that you create on your computer’s hard drive to contain related files, a collection is a place to pull together related text, images, and other content in the CloudPages app.
contactA person about whom you collect information. A contact is not necessarily a subscriber, who has given you permission to send them messages.
content blockA tool in Marketing Cloud that lets you create a reusable block of content of a message. A content block might contain text, images, or multimedia content.
customer journeyCustomers’ total experience with your brand.
customer keyA unique value that you assign to a piece of content and then use to refer to the content from API scripts that you write.
data extensionMarketing Cloud’s proprietary name for a relational database table.
delivery profileThe IP address from which the email is sent, as well as the header and footer.
dynamic contentA section in an email where one of several different pieces of content may appear, depending on the attributes of the subscriber.
email blastAn imprecise group message with no targeting or personalization.
email service providerA delivery mechanism for your email marketing efforts. May include tools to assist with design and execution of complex email programs.
engagingCommunicating with the community on social networks, especially by responding to questions or complaints.
entry sourceSomething that feeds subscribers into a journey, such as an audience that starts a subscriber in a journey as soon as the subscriber joins the audience.
geofencingDefining a region within which you will send a message, and then identifying subscribers who enter that region by using their mobile device.
groupA subset of a subscriber list based on either a data filter or a number of randomly selected subscribers. You use groups with the subscriber-and-list data model, not the relational data model.
IP warmA period of methodically controlled sending from an IP address to establish a good reputation with Internet Service Providers (ISPs).
joinMerging multiple branches of a journey.
journeyA path for a subscriber to move through, where different branches can be followed depending on actions (or inactions) of the subscriber.
journeyA process flow that controls how and when Marketing Cloud sends messages to your subscribers.
keywordThe word a subscriber texts to your shortcode.
landing pageA web page with a special objective that stands apart from the rest of your corporate website
listeningMonitoring the discussion of your brand or industry on social media without necessarily contributing to the discussion.
lookalike audienceA group of social media users who have things in common with your current customers.
marketing sendA message whose primary purpose is to promote your business.
micrositeA tool for publishing web page outside the larger context of your corporate web presence.
MMSMultimedia Messaging Service. Similar to SMS messages but can include images, sound, and video and has no character limit.
mobile-originated campaignsA mobile marketing campaign in which you publish a short code and wait to see who texts you.
mobile-terminated campaignsA mobile marketing message that you send to a subscriber’s mobile device.
one-to-many marketing messagesMessages to an entire list of customers, such as a monthly newsletter.
one-to-one marketing messagesMessages to just one customer at a time, such as a thank-you message after an order.
open rateThe percentage of people who open an email.
personaComposite, fictional characters that marketers create based on information about the actual client base.
personalizationA simple tool to add subscriber-specific data, such as a first name, to the content of a messages.
personalized URLAlso called PURL (pronounced “pearl”). A URL that includes a variable that the system replaced with a subscriber-specific value so that each subscriber who clicks the link goes to a personalized web page.
preference attributesWhen using the subscriber-and-list data model, preference attributes contain yes/no choices that subscribers communicate to you about how they want to hear from you.
preference centerA website where subscribers can update the information that you have about them, including their subscriptions to your different types of messages.
preheader textAny text that appears visually above the header in the body of your email.
preview textA snippet of copy from the body of your email that appears below the sender name and subject line in your subscriber’s inbox.
profile attributesWhen using the subscriber-and-list data model, profile attributes contain demographic data about the subscriber.
profile centerFor each subscriber, Marketing Cloud automatically generates a web page that you can link to in the footer of your email. When subscribers click the link, they go to a form where they can update their attribute values and change the lists to which they are subscribed..
proximityHow close two words must be in the same post to meet the criteria of your topic profile.
publishingInitiating a discussion on social media by posting original content.
real timeActions that occur immediately following another action, such as when a customer makes a purchase and receives a confirmation email immediately.
relational data modelAn approach to storing data in Marketing Cloud in which data is stored in relational database tables called data extensions.
renderingHow an email looks in different contexts: Different email applications, operating systems, screen sizes, and other factors affect how an email renders.
roleSet of permissions assigned to a group of users that perform a specific function.
send classificationThe tool you use to categorize email content as commercial or transactional. Commercial messages are more tightly regulated under the CAN-SPAM (Controlling the Assault of Non-Solicited Pornography and Marketing) act.
sendable data extensionA data extension that contains the contact information of subscribers so you can use it to send a message.
sender profileThe From name and email address that appears in your subscriber’s inbox.
short codeA six-digit code that your customers use to send you text messages.
single sendThe sending of an individual email by the API, such as a confirmation message after a person fills out a form on your website.
SMSShort Message Service. Text-only messages sent to a mobile device that are limited to 160 characters.
spamUnwanted marketing messages. Spam is the digital equivalent of all the junk mail you receive in your physical mailbox. Sending spam can have legal repercussions.
split:A decision point in a journey. Splits can be based on the value of a subscriber attribute, based on whether a subscriber engaged with a previous message, or just random.
subscriber/list modelAn approach to storing data in Marketing Cloud where everything is stored in fields in a subscriber record. Lists group subscribers together for sending.
tagsDescriptive keywords that you add to something in Marketing Cloud, such as a campaign, to help categorize it.
topic profileA collection of keywords or phrases that you want to monitor on social media.
transactional sendA message whose primary purpose is not promotional, such as order confirmation messages.
welcome campaignA series of communications that you have with new clients right after they make a purchase or sign up for a communication from you. Also called an onboarding campaign..
wisdom of the crowdThe idea that the aggregate opinion of a large group of people is better than the opinion of any individual member of the group.
workspaceA tool in Social Studio that limits user access to only certain accounts to ensure that the user doesn’t accidentally post in the wrong place.

Tuesday, March 13, 2018

Salesforce Marketing Cloud: How to Reactivate Held Subscriber

In order to change a subscriber's status from Held (undeliverable) back to Active, you will first need to change their status to unsubscribed.
Once they are in a unsubscribed status, you will have the ability to change their record back to active. 


To reactivate within the application (individual subscribers)
1. Log in to the Marketing Cloud application
2. Go to 
Email Studio Email | Subscribers | All Subscribers
3. Click the Search button
4. Select 
Email Address from the Search where: drop-down field
5. Enter the subscriber's email address in the 
Is equal to: field and click the Find Now button
6. Click to highlight the subscriber from the search results list and click the 
View Properties link
7. In the 
General tab, click the Unsubscribe from all button
8. Click the 
OK button in the dialog box
9. In the 
General tab, click the Activate button (activates only on the All Subscribers list) 
10. To activate the subscriber on individual lists, select the 
List tab. 
11. Select the desired list and click the 
Details button 
12. Click the 
Activate button to reactivate the subscriber on the specified list 
13.  Click the 
OK button in the dialog box to exit
***NOTE: To reactivate the subscriber on other lists, repeat steps 10-12 for each list.***


To reactivate via an import (multiple subscribers)
1. Log in to the Marketing Cloud application
2. Go to 
Email Studio Email | Subscribers | Lists or All Subscribers
3. Click the linked name of the list in question (if sublist)
4. Click the 
Search button
5. Select 
Subscriber Status from the Search where: drop-down field
6.Select Undeliverable from the Is equal to: drop-down field and click the 
Find Now button
7. Click the 
Export option
8. Complete the wizard to export the subscribers to a file, selecting the 
Email Address and Subscriber Status fields to be included in the results
9. Edit the exported file and change the 
Email Status field values to Unsubscribed for every subscriber on the list that needs updated 
10. Perform an import to the 
All Subscribers list selecting either Add & Update or Update. This will change their status to unsubscribed for all lists.
11. Edit the export file again and this time change the 
Email Status field to Active for every subscriber on the list that needs updated
12. Perform an import to the 
All Subscribers list selecting either the Add & Update or Update. This will change their status to active for all lists. 
13. Perform an import to any other desired lists to change the subscriber status to 
Active at the list level.

Source : https://help.salesforce.com/articleView?id=000268698&language=en_US&type=1

Monday, February 19, 2018

SalesForce Marketing Cloud - System level variables


Hey All


A quick reference guide for system variables which are always hand to know :

view online = %%view_email_url%%
email address = %%emailaddr%%
name of campaign = %%emailName_%%
forward to a friend = %%ftaf_url%%
unsubscribe = %%unsub_center_url%%
profile center = %%profile_center_url%%
subscription center = %%subscription_center_url%%
sender reply name = %%replyname%%
sender reply email address = %%replyemailaddress%%
business name = %%Member_Busname%%
business address = %%Member_Addr%%
business city = %%Member_City%%
business state = %%Member_State%%
business postal code = %%Member_PostalCode%%
business country = %%Member_Country%% 

And its always good to know how to work with URLS in your e-mail :

URL from list href="%%=RedirectTo(variable)=%%"

Variable as URL parameter
href="https://bob.co.za/?param=%%variable%%"

Variable as part of the URL
%%[set @url = concat("https://bob.co.za/",variable)]%%
href="%%=RedirectTo(@url)=%%"

Remove tracking from a URL
href="%%=concat('link you do NOT want to track')=%%"


Stay tuned as there is so much more to come.

May the force be with you.

Kind Regards
JS

Friday, February 9, 2018

SalesForce Marketing Cloud - Ampscript

Hi All

Below I have added simple coupon code implementation using ampscript.


Some important points to note:


  1. I have the messagecontext as preview - when sending it should be send
  2. My data extension is called Coupons ( this should be replaced with your own if needed)
  3. This is merely a skeleton and you can write so much more to the data extension :-)


 %%[
var @em, @couponRow, @couponCode
if _messagecontext == "PREVIEW" then
set @couponCode = "XX TEST XX"

else
/* include your sendable attribute/column here */
set @em = AttributeValue("emailAddr")

set @couponRow = ClaimRow("Coupons", "IsClaimed", "EmailAddress", @em)

if empty(@couponRow) then

/* You can do other error handling here if you want.*/
/* This aborts the send */
RaiseError("No coupons available", false)

else
SET @couponCode = Field(@couponRow, "CouponCode")
endif

endif
]%%

Here's your coupon code: %%=v(@couponCode)=%%


My the force be with you.

Kind Regards
Jerome

Blogging

Hey All

So in the midst of the crazy rat race one does not always get the opportunity to blog as much as I did before...but as an advocate for knowledge share I  dedicating more time to sharing my many tech adventures in an ever quest to support our global tech community.

Stay tuned as I will be posting more solutions soon.

Kind Regards
J Slinger

Friday, November 21, 2014

ConfigEntine task "wp-create-ldap" failed with SOAP connector problem.

[timestamp] ssl.default.password.in.use.CWPKI0041W
[timestamp] ssl.disable.url.hostname.verification.CWPKI0027I
[timestamp] Client code attempting to load security configuration
[timestamp] ssl.certificate.end.date.invalid.CWPKI0312E
Could not access WebSphere profile using: username=wpsadmin password=PASSWORD_REMOVED portNumber=10025 hostname=myportalserver.ibm.com
com.ibm.websphere.management.exception.ConnectorException: ADMC0016E: The system cannot create a SOAP connector to connect to host myportal.mycompany.com at port 10025.
at com.ibm.websphere.management.AdminClientFactory.createAdminClientPrivileged(AdminClientFactory.java:628)
at com.ibm.websphere.management.AdminClientFactory.access$000(AdminClientFactory.java:122)
...
Caused by: java.lang.reflect.InvocationTargetException
...
Caused by: com.ibm.websphere.management.exception.ConnectorNotAvailableException: [SOAPException: faultCode=SOAP-ENV:Client; msg=Error opening socket: javax.net.ssl.SSLHandshakeException: com.ibm.jsse2.util.g: PKIX path validation failed: java.security.cert.CertPathValidatorException: The certificate expired at Fri Aug 19 05:01:01 EDT 2011; internal cause is:
java.security.cert.CertificateExpiredException: NotAfter: Tue Oct 01 05:01:01 EDT 2014;

Using wsadmin to connect the server with type SOAP, the same exceptions prevented the correct connection.

Cause

The default chained certificate has problems.

Resolving the problem

In WebSphere Application Server (WAS) version 7, a default chained certificate was introduced as a personal certificate. This certificate was created during profile set up and should be valid for a year. It should be renewed when its validity date expires.
When running ConfigEngine, it acts as a client that connects to the server through SOAP connector. It takes the parameters configured in /properties/ssl.client.props that points to the key store file containing the default personal certificate and residing at /etc/key.p12.
To renew the certificate, take the following steps
- Log in to the Integrated Solutions Console as the primary WAS administrative user;
- Navigate to Security > SSL certificate and key management > Key stores and certificates > NodeDefaultKeyStore> Personal certificates;
- Check the box besides "Default", and hit button "Renew". You should see the expiration date now is updated for another year.
- Restart servers.