Salesforce विपणन क्लाउड वरीयता केंद्र: AMPScript और क्लाउड पृष्ठ उदाहरण

AMPscript Salesforce- एकीकृत मार्केटिंग क्लाउड वरीयता पृष्ठ कोड

सच्ची कहानी… मेरा करियर वास्तव में एक दशक पहले ही खत्म हो गया था, जब मैंने एक्ज़ेक्टटार्ग (अब सेल्सफोर्स मार्केटिंग क्लाउड) के लिए एक एकीकरण सलाहकार के रूप में एक पद शुरू किया था। मेरी नौकरी ने मुझे दुनिया भर की कंपनियों को प्लेटफॉर्म के साथ गहन एकीकरण विकसित करने में सहायता प्रदान की और मैंने प्लेटफ़ॉर्म के इतने संस्थागत ज्ञान का निर्माण किया कि मुझे उत्पाद प्रबंधक के रूप में पदोन्नत किया गया।

पहले से डेवलपर-स्वामित्व वाले संगठन के लिए उत्पाद प्रबंधक की चुनौतियां अंततः मुझे आगे बढ़ने के लिए प्रेरित करती थीं। यह एक महान संगठन था, लेकिन मैं वास्तव में कभी नहीं स्वामित्व उत्पाद। इसलिए, जब समर्थन, बिक्री और उत्पाद विपणन में मेरे साथियों ने मुझे एक वास्तविक बदलाव करने के लिए देखा ... वास्तविकता यह थी कि विकास टीम अक्सर एक अलग समाधान लागू करती थी और मुझे रिलीज से पहले दिन मिलते थे।

मेरी अंतिम परियोजनाओं में से एक आंतरिक स्क्रिप्टिंग प्लेटफ़ॉर्म पर काम कर रही थी जो हमारे ग्राहकों को अपने ईमेल में स्क्रिप्ट जोड़ने में सक्षम करेगी। मैंने एक अन्य उत्पाद प्रबंधक के साथ काम किया और हमने एक टन अनुसंधान किया ... आखिरकार अपने स्वयं के कार्यों के साथ एक JQuery- शैली दृष्टिकोण विकसित करने का निर्णय लिया, लेकिन सरणियों को पारित करने और उपभोग करने की क्षमता, JSON का उपयोग करना, आदि सहित यह काफी होने जा रहा था। समाधान ... जब तक यह विकास को हिट नहीं करता। उत्पाद चक्र के आरंभ में, मेरी लाइब्रेरी को हटा दिया गया और एक वरिष्ठ डेवलपर ने इसे बदल दिया एएमपीस्क्रिप्ट.

वर्षों बाद, सेल्सफोर्स पार्टनर जिस कंपनी में मैं भागीदार हूं, वह अब जटिल, उद्यम एकीकरण कर रही है, और मैं अपने आप को एक दैनिक आधार पर एएमपीस्क्रिप्ट में मिल जाता हूं - या तो ईमेल सामग्री तर्क को बढ़ाता हूं या क्लाउड पेज को रोल आउट करता हूं। बेशक, AMPscript के साथ दिन और दिन में काम करने की निराशा मुझे यह सुनिश्चित करती है कि उन दिनों में गलत निर्णय वापस किया गया था ... मेरा समाधान कहीं अधिक सुरुचिपूर्ण रहा होगा। मुझे ऐसा लग रहा है कि मैं BASIC में TRS-80 की प्रोग्रामिंग कर रहा हूं।

क्लाउड पेज के लिए आपके द्वारा उपयोग किया जाने वाला संपादक अक्षम्य है। यह आपके कोड के साथ चर या सिंटैक्स त्रुटियों की घोषणा जैसे सरल मुद्दों को नहीं पकड़ता है। वास्तव में, आप वास्तव में एक पृष्ठ प्रकाशित कर सकते हैं जो केवल 500 सर्वर त्रुटि उत्पन्न करेगा। आपके पृष्ठों के लिए दो नामकरण फ़ील्ड भी हैं ... मुझसे यह क्यों न पूछें।

प्रो - टिप: यदि क्लाउड पेज कभी भी सैंपल डेटा नहीं लौटाते हैं जब आप प्रकाशित करने वाले होते हैं और ऐसा लगता है कि यह हमेशा के लिए संसाधित हो रहा है ... आप एक त्रुटि फेंकने जा रहे हैं। यदि आप किसी भी तरह से प्रकाशित करते हैं, तो आप संभवतः क्लाउड पेज को पूरी तरह से हटा देंगे और शुरू कर देंगे। मेरा अनुमान है कि यह जो बुनियादी ढाँचा है, वह कोड परिवर्तन की पहचान करने के लिए पर्याप्त बुद्धिमान नहीं है और बस कैश्ड कोड को संसाधित करता रहता है।

इसके अलावा, आपको यह जानकर ख़ुशी होगी कि बहुत से प्रलेखित कोड नमूनों की अपनी सिंटैक्स त्रुटियाँ हैं। वाह! यह एक भयानक अनुभव है ... लेकिन फिर भी आपको इसका उपयोग करना चाहिए क्योंकि यह कुछ अद्भुत लचीलापन प्रदान करता है।

पक्षीय लेख: एक नया क्लाउड पेज है अनुभव... जहां यह दिखता है कि वे पृष्ठ को फिर से चमकाते हैं और यह कोई अतिरिक्त जानकारी प्रदान नहीं करता है। मैं वास्तव में बहु-चरण प्रकाशन अनुक्रम के लिए पुराने संस्करण को बेहतर पसंद करता हूं।

जबकि मेरी कंपनी है Highbridge जटिल, अजाक्स-सक्षम समाधान बनाता है जो कई सिस्टम को एकीकृत करता है और एएमपीस्क्रिप्ट, एसएसजेएस, क्लाउड पेज और ईमेल के साथ डेटा एक्सटेंशन को शामिल करता है ... मैं एक सरल उदाहरण साझा करना चाहता था कि आप कैसे एएमपीस्क्रिप्ट का उपयोग करके अपनी सेल्सफोर्स आवृत्ति को खींच सकते हैं और कैसे शुरू कर सकते हैं वापस डेटा। इस मामले में, एक साधारण बूलियन क्षेत्र जो एक मास्टर को बनाए रखता है ध्वज को हटा देता है। आप निश्चित रूप से, इस कोड को एक संपूर्ण वरीयता पृष्ठ या प्रोफ़ाइल केंद्र का निर्माण करने के लिए बढ़ा सकते हैं जिसका आप उपयोग कर सकते हैं।

सब्सक्राइबर डेटा के साथ एक क्लाउड-पेज लिंक जेनरेट करें

यदि आप अपने क्लाउड पृष्ठ का विवरण देखते हैं, तो आप उस पृष्ठ के लिए अद्वितीय पेज आईडी प्राप्त कर सकते हैं जिसे आप अपने ईमेल में शामिल कर सकते हैं।

क्लाउड पेज आईडी

सिंटैक्स इस प्रकार है:

<a href="%%=RedirectTo(CloudPagesURL(361))=%%">View My Preferences</a>

डेटा एक्सटेंशन के माध्यम से क्लाउड पेज के माध्यम से Salesforce डेटा के लिए AMPscript

पहला चरण चर को घोषित करने के लिए आपकी AMPscript का निर्माण कर रहा है और Salesforce के डेटा को आपके पृष्ठ में उपयोग करने के लिए पुनः प्राप्त करता है। इस उदाहरण में, मेरा Salesforce बुलियन फ़ील्ड जो सही या गलत है, का नाम दिया गया है बाहर जाने का विकल्प चुना:

%%[

/* Declare EVERY variable */
VAR @contactKey,@agent,@referrer,@unsub
VAR @rs,@updateRecord,@checked
 
/* Request your ContactKey from the querystring */
Set @contactKey = Iif(Empty([_subscriberKey]),RequestParameter("contactKey"),[_subscriberKey])

/* Set unsub to false unless it is passed in the querystring */
SET @unsub = Iif(Not Empty(RequestParameter('unsub')),RequestParameter('unsub'),'false')
 
/* If unsub, then update the Salesforce field OptedOut */ 
IF NOT Empty(@unsub) THEN
  SET @updateRecord = UpdateSingleSalesforceObject('contact',@contactKey,'OptedOut', @unsub)
ENDIF

/* Retrieve the Salesforce Contact record */
Set @rs = RetrieveSalesforceObjects('contact', 'FirstName,LastName,OptedOut', 'Id', '=', @contactKey);
 
/* Get the fields from the record */
 IF RowCount(@rs) == 1 then
  var @record, @firstName, @lastName, @optout
  set @record = Row(@rs, 1)
  set @firstName = Field(@record, "FirstName")
  set @lastName = Field(@record, "LastName")
  set @optout = Field(@record, "OptedOut")
ENDIF

/* Build a string for your checkbox to be checked or not
 set @checked = '';
 IF (@optout == 'true') THEN
  set @checked = 'checked'
 ENDIF
 
]%%

अब आप अपने HTML का निर्माण कर सकते हैं और अनुरोध के लिए प्रक्रिया तैयार कर सकते हैं:

<!DOCTYPE html>
<html>
   <title>Profile Center</title>
   <body>
      <h2>Your Profile:</h2>
      %%[ if RowCount(@rs) == 1 then ]%%
      <ul>
         <li><strong>First Name:</strong> %%=v(@firstName)=%%</li>
         <li><strong>Last Name:</strong> %%=v(@lastName)=%%</li>
         <li><strong>Unsubcribed:</strong> %%=v(@optout)=%%</li>
      </ul>
      <form method="get">
       <div>
         <input type="hidden" id="contactKey" name="contactKey" value="%%=v(@contactKey)=%%">
         <input type="checkbox" id="unsub" name="masterUnsub" value="true" %%=v(@checked)=%%>
         <label for="masterUnsub">Unsubscribe From All</label>
        </div>
       <div>
         <button type="submit">Update</button>
        </div>
     </form>
      %%[ else ]%%
      <p>You don't have a record.</p>
      %%[ endif ]%%
   </body>
</html>

यही है ... इसे सब एक साथ रखें और आपको एक वरीयता पृष्ठ मिला है जो आपके ग्राहक रिकॉर्ड के साथ अपडेट किया गया है और Salesforce में बूलियन फ़ील्ड (सही / गलत) को अपडेट करने का अनुरोध पास करता है। अब आप उस फ़ील्ड के आसपास कस्टम क्वेश्चन बना सकते हैं ताकि हमेशा यह सुनिश्चित किया जा सके कि जो कॉन्टैक्ट आउट हो गए हैं उन्हें कोई ईमेल न भेजा जाए!

अपना वरीयता पृष्ठ या प्रोफ़ाइल केंद्र कैसे बढ़ाएँ

बेशक, यह एक वरीयता पृष्ठ के साथ क्या संभव है का सिर्फ एक टीज़र है। ऐसे संवर्द्धन जिनके बारे में आप सोचना चाहते हैं:

  • किसी अन्य डेटा एक्सटेंशन से वास्तविक पाठ को पॉप्युलेट करें ताकि आपकी मार्केटिंग टीम पृष्ठ की सामग्री को अपडेट कर सके जब भी वे कोड को छुए बिना चाहें।
  • प्रकाशन सूची डेटा एक्सटेंशन और लूप को मास्टर अनसब्सक्राइब के अलावा वरीयताओं पर ऑप्ट-इन या ऑप्ट-आउट पेश करने के लिए प्रचारित करें।
  • अपने ग्राहकों को सदस्यता रद्द करने के कारण क्यों कैप्चर करने के लिए एक कारण डेटा एक्सटेंशन पॉप्युलेट करें।
  • अतिरिक्त प्रोफ़ाइल जानकारी प्रदान करने के लिए Salesforce रिकॉर्ड से अन्य प्रोफ़ाइल जानकारी पॉप्युलेट करें।
  • पृष्ठ को अजाक्स के साथ संसाधित करें ताकि आप मूल रूप से इसे आबाद कर सकें।
  • पंजीकरण का एक साधन प्रदान करें ताकि आपका उपयोगकर्ता किसी भी समय अपने व्यक्तिगत प्रोफ़ाइल केंद्र तक पहुंच सके।

AMPscript के लिए अतिरिक्त संसाधन

यदि आप AMPscript सीखने और तैनात करने के लिए कुछ अतिरिक्त सहायता मांग रहे हैं, तो कुछ महान संसाधन हैं:

  • AMPscript गाइडई - सेल्सफोर्स के कुछ कर्मचारियों द्वारा आयोजित, यह एएमपीस्क्रिप्ट सिंटैक्स का एक पूर्ण डेटाबेस है, हालांकि उदाहरण वास्तव में हल्के हैं। यदि यह अधिक मजबूत था, तो यह निवेश के लायक हो सकता है।
  • ट्रेलहेड एएमपीस्क्रिप्ट - Salesforce का ट्रेलहेड एक नि: शुल्क सीखने का संसाधन है और आप AMPscript, SSJS, और दोनों कैसे बातचीत कर सकते हैं, के साथ भाषा की मूल बातें के माध्यम से चल सकते हैं।
  • Salesforce के लिए स्टैक एक्सचेंज - एएमपीस्क्रिप्ट कोड नमूनों की एक टन के साथ सहायता का अनुरोध करने के लिए एक महान ऑनलाइन समुदाय।

बेहतर उपयोगकर्ता अनुभव प्रदान करने के लिए Salesforce के साथ अपने क्लाउड पेज को एकीकृत करने में एक टन का अवसर है। और अगर आपकी कंपनी संघर्ष कर रही है, तो आप हमेशा सहायता के लिए हमसे संपर्क कर सकते हैं!

संपर्क करें Highbridge

तुम्हें क्या लगता है?

यह साइट स्पैम को कम करने के लिए अकिस्मेट का उपयोग करती है। जानें कि आपका डेटा कैसे संसाधित किया जाता है.