Re: Add to Calendar (Google) Zoom Unique Member URL Space

tm_intellimize
Level 1

Add to Calendar (Google) Zoom Unique Member URL Space

Hey everyone,

 

I have created a custom Add to Calendar link for Zoom webinar registrants, however there is a problem with the Location. I would like the location to be {{member.webinar url}}, but the link cannot have spaces in it. Trying to substitute space with "+" or "%20" does not help as Marketo can no longer recognize new token such as {{member.webinar+url}} or {{member.webinar%20url}}. I have also tried creating a token {{my.webinar-url}} to pull info from {{member.webinar url}}, but it seems like you can't have a token within a token. In this case, calendar location is just "{{member.webinar url}}" and not the actual value. I am running out off options here and was hoping someone could help.

 

http://www.google.com/calendar/r/eventedit?text={{my.Event-Title}}&dates={{my.calDateStart}}T{{my.calTimeStart}}Z/{{my.calDateEnd}}T{{my.calTimeEnd}}Z&ctz=PST&details={{my.Event-Description}}&location={{member.webinar url}}&trp=true" target="_blank

Tags (2)
2 REPLIES 2
Darshil_Shah1
Level 10 - Community Advisor + Adobe Champion

Re: Add to Calendar (Google) Zoom Unique Member URL Space

Well, IMO when the email will be sent all the tokens will have values in it, i.e., although you'd create the calendar link with {{member.webinar url}} token in it, but in the recipient's inbox, it'd be replaced with the actual member specific webinar join link (which won't have spaces in it).

 


I have also tried creating a token {{my.webinar-url}} to pull info from {{member.webinar url}}, but it seems like you can't have a token within a token.

Yes, you cannot nest tokens as of now, apart from the velocity tokens which supports implicit nesting.

 

SanfordWhiteman
Level 10 - Community Moderator

Re: Add to Calendar (Google) Zoom Unique Member URL Space

Think you’re misidentifying the problem.

 

There is a problem when you try to embed the {{member.webinar url}} inside the query string of another URL (as you’re doing here, trying to set the location param to the token value).

 

But the problem isn’t the space in the token name. That never appears in the final output, as Marketo replaces any {{my.token}}/{{lead.token}}/{{member.token}} for its underlying value. It doesn’t matter that the token has a space because the final href doesn’t have a space.

 

And for the record, an <a href> is allowed to have a literal space. A URL cannot have a space. But those aren’t the same thing. In lots of my blog posts I dig into what’s allowed, what’s disallowed, and what needs to be encoded per the HTML spec. Spaces are allowed because the browser turns them into %20 for you — that doesn’t mean it’s not safer and wiser to pre-percent-encode them, but it’s not required.

 

The real problem is that your {{member.webinar url}} value itself contains a query string. If the token value is https://www.zoom.us/id=123&uid=abc then you can’t just put that inside the Google Calendar URL and expect it to stay intact. location=https://www.zoom.us/id=123&uid=abc contains 2 different query params, location and uid. The uid=abc is not part of the location because you haven’t encoded it. If it were location=https%3A%2F%2Fwww.zoom.us%2Fid%3D123%26uid%3Dabc then you’d be properly encapsulating the entire token value to pass the whole thing to the Calendar popup.

 

It’s for this very reason that Agical’s /alt_sep/ option was created. If you search past posts you’ll see numerous references to it.