首页 » 博客 » 英国短信最佳实践、合规性和功能

英国短信最佳实践、合规性和功能

英国短信市场概览

区域设置名称: 英国
ISO 代码: 英国
地区 欧洲
移动国家代码 (MCC) 234, 235
拨号代码 +44

市场状况:英国拥有成熟而复杂的短信市场,移动普及率很高。主要移动运营商包括 EE(BT)、沃达丰、O2(Telefonica)和 Three。虽然 WhatsApp 和 Facebook Messenger 等 OTT 消息应用程序在个人通信中很受欢迎,但短信对于商业通信仍然至关重要,尤其是用于身份验证、通知和营销。市场显示 伯利兹 whatsapp 数据和 iOS 用户之间的分配相对均衡,两个平台都有很好的代表性。


英国的主要短信功能和能力

英国支持全面的短信功能,包括双向消息、串联消息和号码可携带性,并拥有强大的运营商基础设施,可实现可靠的消息传递。

双向短信支持

英国完全支持双向短信,没有重大限制。企业可以与客户进有关准备开放参观日的提示或市场行双向沟通,非常适合客户服务和互动活动。

串联消息(分段短信)

支持:是的,所有主要的英国运营商都完全支持串联。
消息长度规则:单条短信支持 160 个字符(GSM-7)或 70 个字符(Unicode)。超过这些限制的消息将自动串联。
编码注意事项:GSM-7 编码是基本拉丁字母的标准,而 Unicode(UCS-2)用于特殊字符和非拉丁字母,字符限制较少。

MMS 支持

发送到英国号码的彩信会自动转换为短信,并嵌入指向媒体内容的 URL 链接。这确保了所有设备的兼容性,同时保持了共享丰富媒体内容的能力。

收件人电话号码兼容性

号码可携性

号码可携性在英国已全面开放。用户在切换运营商时可以保留自己的手机号码,对短信发送或路由的影响极小。

向固定电话发送短信

英国支持向固定电话发送短信,对于固定电话接收者,信息通常会转换为文本转语音。但是,Virgin Mobile 不再支持向英国固定电话号码发送短信,并且发送成功率可能因运营商而异。

英国短信合规与监管指南

英国的短信通信受信息专员办公室 (ICO) 的《隐私和电子通信条例》(PECR) 和《通用数据保护条例》(GDPR) 监管。主要监管框架侧重于同意、数据保护和消费者权利。

明确同意要求:

  • 发送营销信息前必须获得明确、具体的同意 马来西亚号码
  • 同意必须是自愿的、具体的、知情的、明确的
  • 预先勾选的方框或假定同意不符合规定
  • 保留何时以及如何获得同意的详细记录
  • 必须定期更新同意书(建议每 24 个月更新一次)

HELP/STOP 和其他命令

  • 所有营销信息必须包含明确的退出机制
  • 必需关键字:停止、取消订阅、结束、退出
  • 信息必须使用英文;允许使用其他语言,但必须使用英文
  • 选择退出机制必须对消费者免费
  • HELP 回复应包括公司信息和联系方式

请勿致电/请勿打扰登记

  • 英国维护电话偏好服务 (TPS) 和企业 TPS 注册表
  • 强制合规:发送营销信息前必须根据 TPS 筛选号码
  • 维护选择退出的号码的内部抑制列表
  • 最多在 28 天内处理退出请求(建议立即处理)
  • 建议定期清理数据库以删除无效数字

时区敏感度

  • 建议发送时间:英国时间上午 8:00 至晚上 8:00
  • 除非紧急情况,否则避免在英国银​​行假日期间发送
  • 紧急或安全相关的信息可能会在这些时间以外发送
  • 在当地假期期间考虑苏格兰、威尔士和北爱尔兰的不同时区

英国的电话号码选项和短信发件人类型

字母数字发件人 ID

运营商网络能力:全面支持所有主要的英国网络
注册要求:需要预先注册才能受保护的发件人 ID(尤其是银行和金融服务)
发件人 ID 保存:是,在大多数网络上按原样显示,但须遵守运营商过滤规则

长代码

国内与国际

  • 全面支持国内长代码
  • 英国运营商正在逐步淘汰国际长代码(从 2024 年 7 月起全面禁用) 发件人 ID 保存:是,适用于国内号码 配置时间:国内号码为 1-2 个工作日 用例:双向通信、客户服务、交易消息

短代码

支持:英国所有运营商全面支持 配置时间:审批和设置需 8-12 周 用例:大批量营销、2FA、紧急警报、促销活动


受限制的短信内容、行业和用例

限制行业:

  • 大麻相关内容(严格禁止)
  • 赌博(需要特殊许可)
  • 金融服务(需要预先注册发送者 ID)
  • 成人内容(严格限制)

内容过滤

运营商过滤规则:

  • BT/EE 对金融和银行信息实施严格过滤
  • 与赌博、成人内容或金融诈骗相关的关键字受到监控
  • URL 缩短器可能会触发垃圾邮件过滤器

避免阻塞的最佳做法:

  • 使用已注册的发件人 ID
  • 避免过多标点符号或全部大写
  • 限制邮件中的 URL 使用
  • 保持一致的发送模式
  • 使用清晰、直白的语言

在英国发送短信的最佳做法

信息传递策略

  • 尽可能将消息控制在 160 个字符以内
  • 包含明确的号召性用语
  • 使用收件人姓名或相关详细信息进行个性化
  • 保持一致的品牌声音

发送频率和时间

  • 每位收件人每月最多 4-5 条营销信息
  • 尊重安静时间(晚上 8 点至早上 8 点)
  • 考虑英国银行假期和当地活动
  • 间隔发送消息以避免收件人不知所措

本土化

  • 英式英语拼写和术语
  • 考虑地区差异(苏格兰、威尔士、北爱尔兰)
  • 威尔士的服务需要支持威尔士语
  • 清除日期格式 (DD/MM/YYYY)

退出管理

  • 在 24 小时内处理 STOP 请求
  • 维护全面的禁止名单
  • 最后一条消息确认退出
  • 定期审核退出流程

测试和监控

  • 在英国所有主要运营商上进行测试(EE、Vodafone、O2、Three)
  • 监控承运商的运送费率
  • 跟踪退出率和模式
  • 定期测试退出功能

英国的 SMS API 集成

Twilio

Twilio 提供强大的 SMS API,并全面支持英国。集成需要帐户 SID 和身份验证令牌进行身份验证。

import { Twilio } from 'twilio';

// Initialize Twilio client with environment variables
const client = new Twilio(
  process.env.TWILIO_ACCOUNT_SID,
  process.env.TWILIO_AUTH_TOKEN
);

async function sendUKSMS(
  to: string,
  message: string,
  senderId: string
): Promise<void> {
  try {
    // Ensure UK number format compliance
    const formattedNumber = to.startsWith('+44') ? to : `+44${to.slice(1)}`;
    
    const response = await client.messages.create({
      body: message,
      from: senderId, // Alphanumeric or UK number
      to: formattedNumber,
      // Optional parameters for delivery tracking
      statusCallback: 'https://your-webhook.com/status'
    });
    
    console.log(`Message sent! SID: ${response.sid}`);
  } catch (error) {
    console.error('Error sending message:', error);
    throw error;
  }
}

辛奇

Sinch 提供适用于 SMS 的 REST API,并在英国市场获得大力支持。身份验证使用 API 令牌和服务计划 ID。

import axios from 'axios';

interface SinchSMSResponse {
  id: string;
  status: string;
}

async function sendSinchSMS(
  to: string,
  message: string,
  senderId: string
): Promise<SinchSMSResponse> {
  const SINCH_API_TOKEN = process.env.SINCH_API_TOKEN;
  const SERVICE_PLAN_ID = process.env.SINCH_SERVICE_PLAN_ID;
  
  try {
    const response = await axios.post(
      `https://sms.api.sinch.com/xms/v1/${SERVICE_PLAN_ID}/batches`,
      {
        from: senderId,
        to: [to],
        body: message,
        delivery_report: 'summary'
      },
      {
        headers: {
          'Authorization': `Bearer ${SINCH_API_TOKEN}`,
          'Content-Type': 'application/json'
        }
      }
    );
    
    return response.data;
  } catch (error) {
    console.error('Sinch SMS Error:', error);
    throw error;
  }
}

信息鸟

MessageBird 为英国短信提供了一个简单的 API,支持各种发件人 ID 类型。

import { MessageBird } from 'messagebird';

class MessageBirdService {
  private client: MessageBird;
  
  constructor(apiKey: string) {
    this.client = new MessageBird(apiKey);
  }
  
  async sendSMS(
    to: string,
    message: string,
    senderId: string
  ): Promise<any> {
    return new Promise((resolve, reject) => {
      this.client.messages.create({
        originator: senderId,
        recipients: [to],
        body: message,
        // UK-specific parameters
        type: 'sms',
        datacoding: 'plain', // or 'unicode' for special characters
      }, (err, response) => {
        if (err) {
          reject(err);
        } else {
          resolve(response);
        }
      });
    });
  }
}

普利沃

Plivo 提供功能丰富的 SMS API,具有强大的英国支持和详细的交付报告。

import plivo from 'plivo';

class PlivoService {
  private client: plivo.Client;
  
  constructor(authId: string, authToken: string) {
    this.client = new plivo.Client(authId, authToken);
  }
  
  async sendSMS(
    to: string,
    message: string,
    senderId: string
  ): Promise<any> {
    try {
      const response = await this.client.messages.create({
        src: senderId, // Must be a valid UK sender ID
        dst: to,
        text: message,
        // UK-specific options
        powerpack_uuid: process.env.PLIVO_POWERPACK_ID, // Optional
        url: 'https://your-webhook.com/delivery-report'
      });
      
      return response;
    } catch (error) {
      console.error('Plivo SMS Error:', error);
      throw error;
    }
  }
}

API 速率限制和吞吐量

提供商的速率限制:

  • Twilio:每秒 100 条消息(可以增加)
  • Sinch:30 条消息/秒(默认)
  • MessageBird:每秒 60 条消息
  • Plivo:50 条消息/秒

吞吐量管理:

  • 实现重试逻辑的指数退避算法
  • 使用消息队列系统(Redis、RabbitMQ)
  • 尽可能批量发送消息
  • 监控吞吐量指标

错误处理和报告

  • 使用 Winston 或类似工具实现全面日志记录
  • 通过 webhook 跟踪送达收据
  • 监控常见错误代码(无效号码、网络问题)
  • 设置异常错误率警报。
滚动至顶部