Stop adding email tracking links to phone numbers!

栏目: IT技术 · 发布时间: 5年前

内容简介:My Chinese takeaway delivery was late. Very late. I flipped open the confirmation email sent by Just-Eat to double-check I had all the details correct. At the bottom was a "click to call" link. Hurrah!I clicked dial, and this is what filled my screen:

My Chinese takeaway delivery was late. Very late. I flipped open the confirmation email sent by Just-Eat to double-check I had all the details correct. At the bottom was a "click to call" link. Hurrah!

I clicked dial, and this is what filled my screen:

Stop adding email tracking links to phone numbers!

An absurdly long phone number. Bemused, I went to inspect the link I'd clicked. This is what it showed:

Stop adding email tracking links to phone numbers!

The tel: URl scheme is brilliant . You can write something like:

<a href="tel:07700 900123">Call Me!</a>

And when you click onCall Me! your phone dialler will pick up the phone number and offer to place the call. Nifty!

In this case, the crappy marketing system is adding Urchin Tracking Module parameters to every link. Including the phone numbers.

tel:02083178830?utm_medium=ecrm
&utm_source=email
&utm_campaign=TRAN
&utm_content=UK_TRAN_01_0_ORDER-CONFIRMATION_E_V01
&campaign=TRAN
&adgroup=UK_TRAN_01_0_ORDER-CONFIRMATION_E_V01
&utm_term=restaurant_phone_3_3

To be clear - this is useless . The user clicks on the phone number, the device passes the URl directly to the phone dialler. An HTTP request is never made and those parameters are never sent to a server.

Now, in fairness, perhaps my Android dialler should probably be smart enough to recognise the cruft at the end of a phone number and discard it. This is Postel's Law in action.

Except... My reading of the RFC says that the dialler is handling things correctly.

 If the reserved characters "+", ";", "=", and "?" are used as delimiters between components of the "tel" URI, they MUST NOT be percent encoded. These characters MUST be percent encoded if they appear in tel URI parameter values.

For example, if I wanted to dial +447... I should use tel:%2B447...

The dialler sees the unencoded ? and treats it as a delimiter. It then sees utm and assumes the letters are part of the phone number. Just like you can dial 1-800-FLOWERS , you can write tel:1-800-FLOWERS and have it go through to 1-800-356-9377 .

utm medium on a telephone keypad is 886633486 - which is exactly what appeared on my phone screen.

So, if you're writing link tracking software, please make sure only to add parameter to URls where it makes sense.

In the time it took me to write this post, my meal got delivered and it was delicious!

Thanks for getting in touch and sharing this feedback with us Terence, we appreciate it and we'll be sure to bring this to our tech team's attention. ^EM

— Just Eat UK (@JustEatUK) January 20, 2020

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Real-Time Collision Detection

Real-Time Collision Detection

Christer Ericson / CRC Press / 2004-12-22 / USD 98.95

Written by an expert in the game industry, Christer Ericson's new book is a comprehensive guide to the components of efficient real-time collision detection systems. The book provides the tools and kn......一起来看看 《Real-Time Collision Detection》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换