首页 » 博客 » 马提尼克岛(法国)短信最佳实践、合规性和功能

马提尼克岛(法国)短信最佳实践、合规性和功能

马提尼克岛(法国)短信市场概览

区域设置名称: 马提尼克岛(法国)
ISO 代码: 消息队列
地区 北美
移动国家代码 (MCC) 340
拨号代码 +596

市场条件:作为法国的海外省,马提尼克岛遵循法国电突尼斯 whatsapp 数据信标准和法规。移动市场由法国运营商主导,包括 Orange Caraïbe、SFR Caraïbe 和 Digicel。虽然 WhatsApp 等 OTT 消息应用程序在个人通信中很受欢迎,但由于其可靠性和普遍覆盖性,短信对于商业通信、通知和身份验证目的仍然至关重要。


马提尼克岛(法国)的主要短信功能和能力

作为法国电信基础设施的一部分,马提尼克岛支持标准短信功能,但对双向消息和串联等高级功能有一些限制。

双向短信支持

马提尼克岛的主要短信提供商不支持双向短信。这意味着企业应该仅围绕单向通信来设计其消息传递策略。

串联消息(分段短信)

支持:马提尼克不支持串联消息传递。
消息长度规则:消息应保持在标准 SMS 长度关岛短信最佳实践、合规性和功能限制内以确保传递。
编码注意事项:建议使用标准 GSM-7 编码以实现最佳字符使用和兼容性。

MMS 支持

MMS 消息会自动转换为 SMS,并嵌入 URL 链接以访问多媒体内容。这确保了丰富的媒体内容仍可共享,同时保持与所有设备的兼容性。

收件人电话号码兼容性

号码可携性

马提尼克岛不提供号码可携性。这意味着电话号码仍与原运营商绑定,从而简化消息路由和传递。

向固定电话发送短信

在马提尼克岛无法向固定电话号码发送短信。尝试向固定电话号码发送消息将导致发送失败并出现 400 响应错误(代码 21614),并且不会产生任何费用。

马提尼克岛(法国)短信合规与监管指南

作为法国的海外省,马提尼克岛遵循法国电信法规和 GDPR 要求。主要监管机构是 ARCEP(电子通信与邮政管理局),并由 CNIL(国家信息与自由委员会)对数据隐私事务进行额外监督。

明确同意要求:

  • 发送营销信息前必须获得书面同意 领导孟加拉国搜索引擎优化
  • 同意必须是自愿的、具体的、知情的、明确的
  • 同意文件必须包括时间戳、来源和范围
  • 不同类型的通信需要分别征得同意

收集同意的最佳做法:

  • 使用清晰、未选中的选择加入框
  • 保存详细的同意记录
  • 提供有关消息频率和内容的透明信息
  • 轻松访问隐私政策和服务条款

HELP/STOP 和其他命令

  • 必需关键字:必须支持 STOP、ARRETER、DESABONNEMENT
  • 语言要求:建议同时支持法语和克里奥尔语
  • 响应时间:选择退出请求需要立即确认
  • 命令处理:必须不区分大小写并支持常见变体

请勿致电/请勿打扰登记

  • 法国 Bloctel 服务适用于马提尼克岛
  • 企业必须根据 Bloctel 注册信息筛选号码
  • 维护选择退出的号码的内部抑制列表
  • 24 小时内尊重退出请求

时区敏感度

  • 允许时间:上午 8:00 至晚上 10:00(大西洋时间 – AST)
  • 限制日:周日和公共假日不发送营销信息
  • 紧急消息:紧急通知不受时间限制
  • 队列管理:允许时间以外的消息应排队等待下一个可用窗口

马提尼克岛(法国)的电话号码选项和短信发件人类型

字母数字发件人 ID

运营商网络能力:支持动态使用
注册要求:无需预先注册 发送
者 ID 保存:发送者 ID 通常在发送后保存

长代码

国内与国际:支持国际长代码;国内不可用
发件人 ID 保存:为国际号码保留原始发件人 ID
配置时间:国际号码立即配置
用例:交易消息、警报和通知

短代码

支持:马提尼克岛不支持
配置时间:N/A
使用案例:N/A


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

禁止内容:

  • 赌博和博彩服务
  • 成人内容或露骨内容
  • 加密货币促销
  • 未经授权的金融服务

受监管行业:

  • 金融服务需要监管免责声明
  • 医疗保健信息必须保持患者隐私
  • 保险服务必须包含牌照信息

内容过滤

已知运营商过滤器:

  • 来自未知域名的 URL 可能会被阻止
  • 包含某些关键字的邮件可能会被过滤
  • 大量相同的消息可能会被标记

最佳实践:

  • 使用经批准的 URL 缩短服务
  • 避免过多的标点符号和特殊字符
  • 保持一致的发送模式
  • 包括明确的业务标识

在马提尼克岛(法国)发送短信的最佳做法

信息传递策略

  • 尽可能将消息控制在 160 个字符以内
  • 包含明确的号召性用语
  • 保持一致的品牌声音
  • 慎重使用个性化

发送频率和时间

  • 每位收件人每周最多可收到 2-3 条消息
  • 尊重当地节日和文化活动
  • 避免在非工作时间发送
  • 分散批量广告活动

本土化

  • 主要语言应为法语
  • 考虑纳入克里奥尔语,以提高可访问性
  • 使用本地日期和时间格式
  • 尊重文化差异和参考

退出管理

  • 实时处理退出
  • 维护集中退出数据库
  • 通过短信确认退出状态
  • 定期审核退出名单

测试和监控

  • 跨主要运营商进行测试(Orange、SFR、Digicel)
  • 监控承运商的运送费率
  • 跟踪参与度指标
  • 定期测试选择退出功能

马提尼克岛(法国)的 SMS API 集成

Twilio

Twilio 提供了强大的 SMS API,用于向马提尼克岛发送消息。身份验证需要您的帐户 SID 和身份验证令牌。

import { Twilio } from 'twilio';

// Initialize Twilio client
const client = new Twilio(
  process.env.TWILIO_ACCOUNT_SID,    // Your Account SID
  process.env.TWILIO_AUTH_TOKEN      // Your Auth Token
);

async function sendSMSToMartinique() {
  try {
    // Send message with proper formatting for Martinique numbers
    const message = await client.messages.create({
      body: 'Votre code de confirmation est: 123456',  // Message in French
      from: 'YourCompany',                            // Alphanumeric sender ID
      to: '+596123456789'                            // Martinique number format
    });

    console.log(`Message sent successfully: ${message.sid}`);
  } catch (error) {
    console.error('Error sending message:', error);
  }
}

辛奇

Sinch 提供带有 RESTful API 集成的 SMS 功能。身份验证使用您的项目 ID 和 API 令牌。

import { SinchClient } from '@sinch/sdk-core';

// Initialize Sinch client
const sinchClient = new SinchClient({
  projectId: 'YOUR_PROJECT_ID',
  apiToken: 'YOUR_API_TOKEN'
});

async function sendSMSViaSinch() {
  try {
    const response = await sinchClient.sms.batches.send({
      sendSMSRequestBody: {
        to: ['+596123456789'],
        from: 'YourBrand',
        body: 'Votre confirmation est requise.',
        delivery_report: 'summary'  // Request delivery report
      }
    });

    console.log('Message sent:', response.id);
  } catch (error) {
    console.error('Sinch API error:', error);
  }
}

信息鸟

MessageBird 提供 SMS API 访问和直接集成。使用 API 密钥验证。

import { MessageBirdClient } from 'messagebird';

// Initialize MessageBird client
const messagebird = new MessageBirdClient('YOUR_API_KEY');

async function sendSMSViaMessageBird() {
  const params = {
    originator: 'YourCompany',
    recipients: ['+596123456789'],
    body: 'Message important de notre service.',
    scheduledDatetime: null,  // Send immediately
  };

  try {
    const response = await messagebird.messages.create(params);
    console.log('Message sent successfully:', response);
  } catch (error) {
    console.error('MessageBird error:', error);
  }
}

普利沃

Plivo 提供短信功能和全面的发送报告。身份验证使用 Auth ID 和 Auth Token。

import { Client } from 'plivo';

// Initialize Plivo client
const client = new Client(
  'YOUR_AUTH_ID',
  'YOUR_AUTH_TOKEN'
);

async function sendSMSViaPlivo() {
  try {
    const response = await client.messages.create({
      src: 'YourBrand',              // Sender ID
      dst: '+596123456789',          // Destination number
      text: 'Votre compte a été mis à jour.',
      url: 'https://your-callback-url.com/status'  // Status callback URL
    });

    console.log('Message sent with UUID:', response.messageUuid);
  } catch (error) {
    console.error('Plivo error:', error);
  }
}

API 速率限制和吞吐量

  • 默认速率限制因提供商而异(通常为每秒 1-10 条消息)
  • 实现重试逻辑的指数退避算法
  • 使用批处理 API 进行批量发送
  • 安排消息时考虑时间窗口限制

吞吐量管理策略:

// Example rate limiting implementation
class RateLimiter {
  private queue: Array<() => Promise<void>> = [];
  private processing = false;
  private rateLimit = 1; // Messages per second

  async add(task: () => Promise<void>) {
    this.queue.push(task);
    if (!this.processing) {
      this.process();
    }
  }

  private async process() {
    this.processing = true;
    while (this.queue.length > 0) {
      const task = this.queue.shift();
      if (task) {
        await task();
        await new Promise(resolve => setTimeout(resolve, 1000 / this.rateLimit));
      }
    }
    this.processing = false;
  }
}

错误处理和报告

// Example error handling implementation
interface SMSError {
  code: string;
  message: string;
  timestamp: Date;
  recipient: string;
}

class SMSErrorHandler {
  private errors: SMSError[] = [];

  logError(error: SMSError) {
    this.errors.push(error);
    console.error(`SMS Error ${error.code}: ${error.message}`);
    
    // Implement specific handling based on error code
    switch(error.code) {
      case '21614': // Invalid number
        this.handleInvalidNumber(error);
        break;
      case '30003': // Queue full
        this.handleQueueFull(error);
        break;
      default:
        this.handleGenericError(error);
    }
  }

  private handleInvalidNumber(error: SMSError) {
    // Implementation for invalid number handling
  }

  private handleQueueFull(error: SMSError) {
    // Implementation for queue full handling
  }

  private handleGenericError(error: SMSError) {
    // Implementation for generic error handling
  }
}

回顾和其他资源

关键要点

  1. 合规第一:始终获得明确同意并尊重退出请求
  2. 时间问题:尊重当地时区和发送窗口
  3. 语言要求:以法语为主要语言
  4. 技术实现:实施适当的错误处理和速率限制

下一步

  1. 审查 ARCEP 和 CNIL 的短信营销法规
  2. 实施适当的同意收集机制
  3. 建立监测和报告系统
  4. 对所有主要运营商进行全面测试。
滚动至顶部