简体中文
在 OTP Route 号码上接收 LINE 短信验证码:清单与步骤
团队可以在 OTP Gateway 中为 linemessenger 服务订购一个一次性号码,在 LINE 的注册或登录页面输入它,然后从控制台或签名 Webhook 读取验证码,从而用 OTP Route 接收 LINE 验证码。价格每条验证码 $0.20 起,如果 20 分钟窗口内没有任何内容到达,费用会自动退回你的钱包。
LINE 用手机号做什么?
LINE 把账号绑定到手机号。新注册通过短信验证码确认,当账号迁移到新设备,或有人在重新安装后登录时,应用可能再次要求输入号码。这个号码在找回访问权限时也起作用,所以账号是用哪个号码创建的很重要。
最后一点决定了你该选哪种产品:一次性号码适合单次验证步骤,而几个月后还要再次登录的账号,需要你仍然掌控的号码。
订购 LINE 号码前的预检清单
- 来自开发者控制台的 API 密钥(前缀
or_live_);每个账号最多 10 个密钥。 - 钱包余额充足,可用
GET /api/v1/balance确认。 - 选择与账号或测试用例所在市场相符的国家。
- 查询该组合的实时价格,因为各国价格不同。
- 已注册 Webhook 端点并测试过它的签名校验,或者已准备好轮询循环。
- 判断该账号之后是否还需要再次登录;如果需要,请阅读下方的专属号码部分。
- 快速再读一遍 LINE 对你所创建账号类型的条款。
LINE 可以选哪些国家,为什么这很重要?
LINE 服务在 197 个国家提供。这款应用在东亚和东南亚部分地区拥有最强的用户基础,所以在那里发布产品的团队常常从日本、泰国、台湾、印度尼西亚、中国香港或马来西亚开始。其他选择包括新加坡、菲律宾、越南、韩国、澳大利亚、美国、英国、德国、巴西和罗马尼亚。
请选择你真实用户所在的国家。面向泰国市场的构建应使用泰国号码验证,这样国家区号、手机号格式和任何地区性入驻页面才会与生产环境中的表现一致。覆盖多个市场几乎不费额外力气,因为每次运行之间只有 country 的取值在变。
分步说明:LINE 验证码 API 流程
- 调用
GET /api/v1/prices?country=<id>&service=linemessenger,确认线路可用。 - 用
POST /api/v1/activations创建激活,请求体例如{"service": "linemessenger", "country": "th"}。 - 在 LINE 的手机号验证页面输入返回的号码。
- 等待
activation.sms_received,或在每分钟 300 次请求的限制内,每隔几秒轮询一次GET /api/v1/activations/{id}。 - 如果运行被放弃,调用
POST /api/v1/activations/{id}/cancel。
接口详情见开发者文档。
Webhook 处理程序应如何对待 LINE 事件?
读取格式为 t=<unix>,v1=<hex> 的 X-OTPRoute-Signature 请求头,用端点密钥对 <t>.<raw body> 计算 HMAC-SHA256,以恒定时间比较,并丢弃时间戳过旧的任何请求。然后以 activation id 为键进行处理,这样重试投递会更新同一条记录,而不会让你的测试步骤触发两次。在同一张表里,把 activation.expired 和 activation.cancelled 视为干净的结果。HMAC 指南有完整的演示。
在控制台订购 LINE 号码
登录后打开 OTP Gateway,选择 LINE 和国家,查看显示的价格并下单。把号码输入 LINE,然后保持激活卡片处于打开状态;收到后验证码会显示在那里。产品经理和客服人员常用这个视图,在自动化测试套件接手之前,手动检查本地化的 LINE 入驻页面。同样适用 20 分钟窗口和退款规则。
故障排查:LINE 验证码为什么可能没有到达
LINE 可能拒绝部分虚拟号码,早些时候可用的线路也可能在一天晚些时候不可用。如果没有短信到达,窗口结束或你取消时,激活会全额退款。之后:
- 尝试另一个仍符合测试用例的国家;
- 稍后重试,而不是在循环中频繁重新下单;
- 确认号码输入时带有正确的国家区号。
什么时候专属号码更适合 LINE?
如果测试环境账号或共享的团队登录需要持续登录,一次性号码就是错误的工具。美国和加拿大的专属号码每月 $1.95 起,在控制台和通过 number.sms_received 在你的 Webhook 上接收短信,并从钱包续费,直到你释放为止。详情见虚拟号码页面。
请仅将 OTP Route 用于你自己的合法产品和账号:每个真实的人或企业一个账号,遵守 LINE 的条款,并遵循《可接受使用政策》。
常见问题
OTP Route 为 LINE 使用什么服务 ID?
ID 是 linemessenger。在价格查询和创建激活时的 service 字段中使用它。
没有实体 SIM 卡,也能做用于测试的 LINE 短信验证吗?
可以。OTP Gateway 号码可以接收 LINE 验证码,你可以通过 API、Webhook 或控制台读取。
LINE 虚拟号码应该选哪个国家?
选择你的用户或测试用例所属的市场,例如在日本或泰国发布产品,就选对应的国家。
LINE 会接受每一个 OTP Route 号码吗?
不一定。LINE 可能拒绝部分虚拟号码,没有验证码到达时,你会自动获得退款。
接收 LINE 验证码需要多少钱?
每条验证码 $0.20 起,取决于国家;实时价格来自 GET /api/v1/prices。
以后登录可以继续使用同一个 LINE 手机号吗?
只有专属号码可以,它在美国和加拿大提供。一次性号码仅对应一条验证码。
接收 LINE 验证码需要 Webhook,还是轮询就够了?
对小规模运行,轮询 GET /api/v1/activations/{id} 效果很好。一旦有许多激活并行运行,Webhook 的扩展性更好。
服务名称均为其各自所有者的商标,OTP Route 与其无任何关联。请合法使用号码,并遵守各服务的条款及我们的可接受使用政策。