{"id":44,"date":"2015-10-15T13:07:54","date_gmt":"2015-10-15T13:07:54","guid":{"rendered":"http:\/\/www.digitaldatatactics.com\/?p=44"},"modified":"2015-10-19T03:09:41","modified_gmt":"2015-10-19T03:09:41","slug":"beacon-parser-round-one","status":"publish","type":"post","link":"https:\/\/www.digitaldatatactics.com\/index.php\/2015\/10\/15\/beacon-parser-round-one\/","title":{"rendered":"Beacon Parser: Round One"},"content":{"rendered":"<p>I&#8217;ve had two major frustrations while troubleshooting and doing QA for clients lately:<br \/>\n1. The new POST beacons don&#8217;t split up prettily in debuggers (like Charles proxy).<br \/>\n2. Even if they did, it can be hard to compare beacons to each other if they don&#8217;t have the same number of variables.<br \/>\nSo, as a pet project in the evenings, I&#8217;ve been working on a tool to solve for these problems. Today I introduce: <a href=\"http:\/\/digitaldatatactics.com\/beaconParser\/\" target=\"_blank\">the Beacon Parser<\/a>!<\/p>\n<p>I don&#8217;t consider it done yet, but it&#8217;s ready for Beta testing, perhaps. I am positive there are probably better ways to accomplish what I&#8217;ve done- I&#8217;m no development genius- but I must say i&#8217;m pretty happy with the result. I would love for a few folks to provide feedback, if possible.<\/p>\n<p>Current Features:<\/p>\n<ul>\n<li>If you enter multiple beacons, It aligns rows for similar variables across beacons.<\/li>\n<li>You can export the table to a &#8220;csv&#8221; file. Note, in certain browsers (including firefox), you will need to add the &#8220;.csv&#8221; extension to the downloaded filename.<\/li>\n<li>If your beacon includes &#8220;varName.&#8221;\/&#8221;.varName&#8221; variables (clickmap, context data), it will concatenate all the currently &#8220;open&#8221; variables to output one variable\/value pair:<br \/>\n<a href=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2015\/10\/parserExample.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-45\" src=\"http:\/\/digitaldatatactics.com\/wp\/wp-content\/uploads\/2015\/10\/parserExample.png\" alt=\"parserExample\" width=\"784\" height=\"182\" srcset=\"https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2015\/10\/parserExample.png 784w, https:\/\/www.digitaldatatactics.com\/wp\/wp-content\/uploads\/2015\/10\/parserExample-300x70.png 300w\" sizes=\"(max-width: 784px) 100vw, 784px\" \/><\/a><\/li>\n<\/ul>\n<p>Features I&#8217;m still working on (in order of ambitiousness):<\/p>\n<ul>\n<li>I definitely still need to work out some bugs (see bottom of this post).<\/li>\n<li>It doesn&#8217;t currently work great with incomplete beacons.<\/li>\n<li>A &#8220;clear button&#8221;.<\/li>\n<li>I&#8217;d like to sort the variables back to their original order- currently as you add new beacons that have variables the previous beacons did not, it just adds them to the end.<\/li>\n<li>I&#8217;d like to have columns for notes on the purpose of the variable, and data quality if there&#8217;s anything clearly broken (like character limits being exceeded).<\/li>\n<li>I&#8217;d love to connect to the Admin API and return the names of custom variables.<\/li>\n<\/ul>\n<p>I&#8217;d also love to create a W3C data layer parser.<\/p>\n<p>Known bugs (already). I will try to fix sometime this evening:<\/p>\n<ul>\n<li>It breaks when the current or referring URL has query params in it. Kind of a big problem.<\/li>\n<li>It struggles with some products strings.<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve had two major frustrations while troubleshooting and doing QA for clients lately: 1. The new POST beacons don&#8217;t split up prettily in debuggers (like Charles proxy). 2. Even if they did, it can be hard to compare beacons to each other if they don&#8217;t have the same number of variables. So, as a pet &#8230; <a title=\"Beacon Parser: Round One\" class=\"read-more\" href=\"https:\/\/www.digitaldatatactics.com\/index.php\/2015\/10\/15\/beacon-parser-round-one\/\" aria-label=\"Read more about Beacon Parser: Round One\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18],"tags":[19,24,21,20],"_links":{"self":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/44"}],"collection":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/comments?post=44"}],"version-history":[{"count":4,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/44\/revisions"}],"predecessor-version":[{"id":49,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/posts\/44\/revisions\/49"}],"wp:attachment":[{"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/media?parent=44"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/categories?post=44"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.digitaldatatactics.com\/index.php\/wp-json\/wp\/v2\/tags?post=44"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}