Reserveamerica (DCR camping) implementation

Summary

This documentation covers the cross-domain implementation between the Department of Conservation and Recreation's (DCR) camping reservations website and Mass.gov. The DCR website is: https://massdcrcamping.reserveamerica.com/

Business problems & callouts

This project's primary point of contact was Michael Orcutt, who works for the the Executive Office of Energy and Environmental Affairs (EOEEA), which is DCR's parent secretariat. Mike wanted to combine the data from the reserveamerica site with data from Mass.gov, and also from MassFishHunt (https://www.ma.wildlifelicense.com/Internetsales/IS/Customer/InternetCustomerSearch), a site where you can purchase hunting and fishing licenses. We'd already done a MassFishHunt tag manager implementation a few years ago.
The Tag Manager container we worked in for this project was implemented by Aspira, which is the vendor who owns reserveramerica (and its subdomains, of which DCR's is one). When we are ready to release new versions we contact them for approval. Here are some useful points of contact:

No test account/development environment access

We didn't have access to any testing environments for this project, and neither did we have fake credentials. As a result, we:
    had to make actual purchases and ask Aspira to refund them
    did not review the post-purchase flow, which is fairly small, as rigorously as other portions of the site

Privacy concerns

The only place on the site we were concerned about privacy was in the account management menu (https://massdcrcamping.reserveamerica.com/memberSignInSignUp.do). On this page, you change your account information by clicking a link whose click text is, depending on the field you choose, your phone number or email.
For this reason, on this page, we are not using the {{ Click Text }} built in macro, but passing in "Account management" for click text.

Tags and variables

This container includes the following tags
    Page view (standard page view trigger)
    Link clicks (all links trigger with exception [see next item])
    Link clicks - My account (see above, all links where page title starts with My Account -)
    Button clicks
    Validation error

Custom dimensions

All tags have a session ID and a timestamp associated with them.

GA setup

We created a new view, DCR camping, in the cross-domain analytics property. We also gave Mike access to the "all data" view so he could include DCR, Mass.gov, and MassFishHunt in his analyses.

Particularities

Deviations from our normal variables/triggers/tags

The biggest difference in how we implemented tags on https://massdcrcamping.reserveamerica.com (compared with our normal configuration) was in the taskPath variable. As a reminder, taskPath is a Javascript function that labels events by where they occur in an application. (This makes it easier to do analysis later.)
Normally, we use the page's path as an indicator of where the user is in the website; a path of /site/shopping-cart might be labeled "shopping cart." However, on the DCR camping site, we found that paths were unpredictable; in some cases, the same content appeared to have multiple paths.
As a result, we inferred the task from the page's title. We use a Javascript variable that returns document.title and employ this in taskPath.

Forms do have validation, but they don't prevent form submissions

We used CSS selectors for button click triggers. Initially, we used the "form submission" trigger, but we found that the site handles validation by reloading the page with errors on it.
This is probably most important for data analysis, as button clicks do not map to "the number of people who did something." Probably the best bet is to determine which page title indicates that someone has completed some flow (e.g. the Order Confirmation page title indicates a successful purchase).

Last modified 4mo ago