印出去之后还能改的 WhatsApp 二维码(活码)
活码是怎么工作的、为什么把 wa.me 链接直接印进二维码是个风险,以及如何在一个已经印出去的码后面挂多个号码,让封号或换手机不再造成损失。
柜台上、传单上、橱窗玻璃上的二维码,印一次就要挂好几年。但它背后的那个号码不会。
大多数 WhatsApp 二维码生成器,直接把 wa.me/65XXXXXXXX 编进图片里。这样做在出事之前都没问题 —— 而出事的时候,它是悄无声息地坏掉的。死掉的二维码不会报错给任何人看:顾客扫开相机,WhatsApp 打开了,聊天窗口通向一片空白或者一个陌生人,然后他们就走了。你要到几周之后,才从「怎么没人来问」里察觉。
Juno 的活码里编的是一条指向我们的链接,扫码时再把人转过去。多出来的这一跳,就是整个功能。
活码到底是什么
创建一个二维码入口时,Juno 会给你一条短链,比如 juno.medpath.com/w/K7M2P9RD —— 二维码图片里装的是它。有人扫码时:
- 手机打开我们这条链接,
- 我们查一下这个码当前应该指向哪里,
- 把人直接送去 WhatsApp,你预设好的那句话已经填在输入框里了。
扫码的人察觉不到这一跳 —— 只有零点几秒,落点和直接链接完全一样。区别在于:目的地现在是你后台里的一个字段,而不是墙上的油墨。
由此带来三件事:
- 换号变成改个表单。 已经印出去的海报、传单、名片、橱窗贴纸,全部继续有效。
- 这个码变得可以度量。 直接印
wa.me的码,在有人真的发消息之前是完全看不见的;而我们的码在扫的那一刻就被记下了,所以你能分清「那张海报根本没人经过」和「海报没问题,是号码坏了」。 - 短链是永久的。 Juno 不会重发它 —— 改名不会,改目的地也不会。重发会让所有已印出去的码当场作废,所以我们根本没做这个操作。
在一个码后面挂多个号码
单一目的地能扛住号码变更,但扛不住号码被拿走:账号被 Meta 限制、手机丢了、员工带着 SIM 卡离职。从那一刻起,所有扫这个码的人都撞进死胡同。
所以一个码可以指向一组号码,每次扫码分配给其中一个。
设置路径:增长入口 → 你的码 → 管理号码 → 添加号码。 给每个号码写个你们同事认得出的备注(「前台」「李医生」「第二条线」)—— 备注只给你们自己看,顾客看不到。
每个号码前面有个勾选框,参与分配。这个勾选框就是这套安排的意义所在:
某个账号被限制的那天早上,把它的勾去掉。所有已经印出去的码会继续走剩下的号码 —— 不用重印,不用第三方跳转服务,不用等。
去勾不等于删除。这个号码的历史数据会留着,你还能看到它出事之前承接了多少流量 —— 这通常是所有人问的第一个问题。
随机,还是轮流
分配方式决定一次扫码怎么挑号码:
- 轮流 —— 每次扫码给列表里的下一个号码,循环往复。流量分得均匀且可预测。号码彼此等价时选它,比如前台共用的三部员工手机。
- 随机 —— 每次扫码随机挑一个。忙碌一整天下来分布会拉平,但某个清闲的上午,某个号码确实可能一个人都没分到。
拿不准就选轮流。随机在数学上没问题,但三个号码十一次扫码,总会有人发现某条线一直很安静,然后得出「这码坏了」的结论。
没勾选的号码,两种方式都一律跳过。
活码做不到的事
有必要直说,因为「多号轮换」有时会被包装成它并不是的东西:
- 它不是绕开 WhatsApp 规则的办法。 池子里的每个号码都必须是你有权使用的,而且 Meta 会对每个号码单独评定质量评级。为了超出规则允许的发送量而把消息摊到多个号码上,恰恰是会让这些号码一起被限制的行为模式。
- 它不会把对话合并。 被分到 A 号码的顾客,聊天记录就在 A 号码上。不过如果这些号码都作为渠道接入了 Juno,所有对话仍然会落进同一个共享收件箱 —— 这也正是大多数人要用多号的原因。
- 它不等于用户同意。 扫码开启了一段对话,但那不是之后可以继续给对方发消息的许可。参见获取同意与退订。
让它看起来像你家的
贴在柜台上的码,是你店面的一部分;而生成器吐出来的黑方块,看上去就是生成器吐出来的黑方块。任意一个码上的自定义外观提供形状、颜色和可选的中心图标。
- 形状 —— 经典(方块)、圆润(圆角)、圆点。每个选项展示的是你自己那张码的真实样子,你选的是一张图,不是一个名字。
- 颜色 —— 六个预置色,或者用取色器选你自己的品牌色。码的底色会依据你选的颜色推导出来,所以自定义色看起来和预置色一样是设计过的。
- 中心图标 —— 可不传。你传什么我们都会缩小,四周留出余量,并把码的纠错等级提高,让被盖住的部分能被重建回来。支持 PNG、JPEG、WebP;放在码中央的图形,简单的远比精细的好用。
颜色太浅会被拒绝,这是唯一一处我们说"不"的地方。 浅色的码在你挑它的那块屏幕上读得出,印在纸上放进橱窗就读不出 —— 而你要几周之后才从"怎么没人来问"里发现。所以颜色会拿它将来真正被印在上面的底色去度量,不达标就一直禁用保存。没有"我就要这么用",因为代价是由一张已经挂上墙的海报来付。
外观是存在这个码上的,所以 PNG 和 SVG 下载下来就是你看到的样子。改外观不会改链接 —— 已经印出去的一切照常有效,只是下次印出来长得不一样。
一个值得保持的习惯:换完外观,先用自己的手机扫一次,再送去印刷。
怎么看统计
查看统计会进入这个码自己的页面。最近 30 天你会看到:
- 总扫码次数,以及每天的走势 —— 回答「这张海报是不是没动静了」。
- 按号码 —— 实际分配的结果。别的号码都在动、只有某个停在零,那就是该去查的号码。
- 来自哪里 —— 国家,以及网络能报出城市时的城市。你会因此发现某个商场里的那叠传单承担了大部分效果。
- 设备与时段 —— 手机还是电脑,以及大家实际在什么时间扫。高峰出现在打烊之后的码,说明该配自动回复,而不是换张更大的海报。
- 最近扫码 —— 逐条列出访问记录,从新到旧,可以用加载更多一页页往回翻。测试完几秒内就能确认这个码是通的;也用来找出扫码是从哪天下午开始停的。
我们记什么,不记什么
位置来自扫码所经过的网络,在边缘节点就已经解析完成,再交给我们。Juno 不保存任何扫码者的 IP 地址,记录里也没有任何字段可以放它。国家和城市已经足够回答海报主人需要知道的一切;而地址本身是一个标识符,属于一位只是拿相机对着贴纸扫了一下、没有同意过任何事情的普通人。
浏览器指纹我们也不留。「手机还是电脑」在扫码那一刻判定完,其余信息随即丢弃。
扫码记录默认保存一年后删除。你的累计计数(每个码、每个号码的总扫码次数)不受影响。
拿去印
数字用途或者尺寸小的场合用 PNG;交给印刷用 SVG,因为它放到多大都不糊。两者编的是同一条永久短链。
两条来自「印坏了的码」的经验:
- 付印之前先自己扫一遍。 用自己的手机扫,然后打开查看统计 —— 你那次扫码应该就在里面。花十秒钟,挡掉那个唯一一个改起来很贵的错误。
- 写清楚这个码是干嘛的。 在图旁边加一句「扫码用 WhatsApp 联系我们」,效果大约是光秃秃一个方块的两倍;而且这也是更诚实的做法 —— 人有权知道扫开之后会发生什么。
码不工作时
- 「This code is not set up yet.」 —— 码本身解析成功了,但背后的号码全被去了勾,或者一个都没配。加一个号码或重新勾上即可;印出去的码本身没问题。
- 「This code is no longer active.」 —— 这个入口被删除了。没有办法把它救回来,删掉的入口链接就是永久失效了 —— 所以删除时我们会先问一次。
- 能扫、能打开 WhatsApp,但没人回。 —— 码在正常工作,问题在更后面。从收不到消息开始查。