马里短信市场概览
区域设置名称: | 马里 |
---|---|
ISO 代码: | 机器学习 |
地区 | 中东和非洲 |
移动国家代码 (MCC) | 610 |
拨号代码 | +223 |
市场状况:马里的移动市场主要由 Orange Mali 主导。短信仍然是一个重要的沟通渠道,尤其是对于商业消息和通知而言。虽然 WhatsApp 等 OTT 消息应用程序在城市地区越来越受欢迎,但由于其可靠性和通用设备支持,短信在农村和城市地区都保持着强大的渗透率。市场上的 Android 设备数量远远超过 iOS,使短信成为接触更广泛人群的特别有效的渠道。
马里的主要短信功能和能力
Mali 支持标准短信功能,但对双向消息传递有一些限制,并且对发件人 ID 有特定要求,尤其是通过 Orange 网络。
双向短信支持
马里不支持通过标准 A2P 渠道发送双向短信。企业应围绕单向通信设计消息传递策略。
串联消息(分段短信)
支持:是的,支持串联消息,但可用性可能因发件人 ID 类型而异。
消息长度规则:适用标准短信长度限制 – GSM-7 编码为 160 个字符,Unicode 为 70 个字符。
编码注意事项:支持 GSM-7 和 UCS-2 编码,根据所选编码在不同的阈值处进行消息拆分。
MMS 支持
Mali 不直接支持彩信。发送彩信内容时,会自动转换为短信,并嵌入 URL 链接,收件人可从中查看多媒体内容。这确保了所有设备类型的兼容性,同时仍支持富媒体共享。
收件人电话号码兼容性
号码可携性
马里不提供号码可携性。这意味着电话号码仍与原来的移动网络运营商绑定,这有助于确保可靠的消息路由。
向固定电话发送短信
在马里,无法向固定电话号码发送短信。尝试向固定电话号码发送消息将导致失败响应(400 错误,代码为 21614),并且不会产生任何费用。
马里短信合规与监管指南
马里的电信部门受马里电信监管局/TIC et des Postes (AMRTP) 监管。虽然具体的短信营销法律仍在不断发展,但 Orange Mali 等运营商强制执行了某些要求,以保护消费者并确保消息传递质量。
同意和选择加入
明确同意要求:
- 发送营销信息前必须获得书面或电子同意
- 同意记录应保存并易于获取
- 在选择加入时应明确说明消息传递的目的
- 选择加入流程应记录时间戳和来源
最佳实践:
- 使用双重选择加入营销活动
- 维护详细的同意日志,包括同意的日期、时间和方法
- 明确传达订阅者将收到的消息类型和频率
- 在选择加入过程中提供明确的条款和条件
HELP/STOP 和其他命令
- STOP 和 HELP 命令必须同时支持法语和当地语言
- 常见关键字包括:STOP、ARRET、AIDE、HELP
- 所有退出请求必须在 24 小时内处理
- 自动回复应以法语提供
请勿致电/请勿打扰登记
马里没有设立集中式“禁止致电”登记处。但是,企业应该:
- 维护自己的抑制名单
- 立即尊重退出请求
- 保留退出号码记录至少 12 个月
- 定期清理联系人列表,删除不活跃或选择退出的号码
时区敏感度
- 消息只能在当地时间 (GMT) 上午 6:00 至晚上 10:00 之间发送
- 每位用户每天最多可发送 3 条短信
- 尊重当地节日和宗教仪式
- 紧急信息不受时间限制
马里的电话号码选项和短信发件人类型
字母数字发件人 ID
运营商网络能力:支持
注册要求:一般用途不需要,但 Orange 要求对特定流量类型进行注册
发送人 ID 保存:是,发送人 ID 按规定保存
长代码
国内与国际:均支持
发件人身份保存:国内支持,国际不支持
配置时间:1-2 个工作日
用例:适用于交易信息和双因素身份验证
短代码
支持:支持
配置时间:4-6 周
用例:最适合大批量营销活动和客户服务
受限制的短信内容、行业和用例
限制行业及内容:
- 赌博及投注(除特殊联系外)
- 成人内容
- 加密货币促销
- 未经适当授权的政治信息
- WhatsApp 相关流量已被阻止
内容过滤
已知承运人规则:
- 包含与限制行业相关的某些关键字的邮件会被屏蔽
- URL 应来自批准的域
- 内容不得违反当地文化和宗教敏感性
避免阻塞的提示:
- 避免使用 URL 缩短器
- 使用清晰、直白的语言
- 避免过多的标点符号或特殊字符
- 在邮件内容中包含发件人身份
在马里发送短信的最佳实践
信息传递策略
- 尽可能将消息控制在 160 个字符以内
- 包含明确的号召性用语
- 避免使用俚语或口语
- 在各个活动中保持一致的发件人 ID
发送频率和时间
- 每位收件人每天最多 3 条消息
- 尊重斋月和其他宗教仪式
- 避免在重大节假日期间发送
- 间隔发送消息以防止收件人疲劳
本土化
- 主要语言:法语和班巴拉语
- 考虑使用双语信息进行重要沟通
- 使用适当的字符编码来支持本地语言
- 尊重信息内容中的文化差异
退出管理
- 24 小时内处理退出
- 保留清晰的退出记录
- 在营销信息中包含退出说明
- 定期审核退出名单的合规性
测试和监控
- 在所有主要运营商(Orange、Malitel)上进行测试
- 监控承运商的运送费率
- 跟踪退出率和模式
- 定期测试退出功能
马里的 SMS API 集成
Twilio
Twilio 提供了强大的 SMS API,支持向 Mali 发送消息。实现方法如下:
import { Twilio } from 'twilio';
// Initialize the client with your credentials
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
// Function to send SMS to Mali
async function sendSMSToMali(
to: string,
message: string,
senderId: string
): Promise<void> {
try {
// Ensure proper formatting for Mali numbers (+223)
const formattedNumber = to.startsWith('+223') ? to : `+223${to}`;
const response = await client.messages.create({
body: message,
from: senderId, // Alphanumeric sender ID
to: formattedNumber,
// Optional parameters for delivery tracking
statusCallback: 'https://your-callback-url.com/status'
});
console.log(`Message sent successfully! SID: ${response.sid}`);
} catch (error) {
console.error('Error sending message:', error);
throw error;
}
}
辛奇
Sinch 为马里提供全面的短信功能,支持交易信息和营销信息:
import axios from 'axios';
class SinchSMSService {
private readonly apiToken: string;
private readonly serviceId: string;
private readonly baseUrl: string;
constructor(apiToken: string, serviceId: string) {
this.apiToken = apiToken;
this.serviceId = serviceId;
this.baseUrl = 'https://sms.api.sinch.com/xms/v1';
}
async sendSMS(to: string, message: string): Promise<void> {
try {
const response = await axios.post(
`${this.baseUrl}/${this.serviceId}/batches`,
{
from: 'YourSenderID',
to: [to],
body: message,
delivery_report: 'summary'
},
{
headers: {
'Authorization': `Bearer ${this.apiToken}`,
'Content-Type': 'application/json'
}
}
);
console.log('Message sent:', response.data.id);
} catch (error) {
console.error('Sinch SMS error:', error);
throw error;
}
}
}
信息鸟
MessageBird 为马里提供可靠的短信传递服务,并提供详细的传递报告:
import messagebird from 'messagebird';
class MessageBirdService {
private client: any;
constructor(apiKey: string) {
this.client = messagebird(apiKey);
}
sendSMS(to: string, message: string): Promise<any> {
return new Promise((resolve, reject) => {
this.client.messages.create({
originator: 'YourBrand',
recipients: [to],
body: message,
datacoding: 'auto' // Automatic handling of special characters
}, (err: any, response: any) => {
if (err) {
reject(err);
} else {
resolve(response);
}
});
});
}
}
普利沃
Plivo 提供了一个简单的 API,用于向马里发送短信:
import plivo from 'plivo';
class PlivoSMSService {
private client: any;
constructor(authId: string, authToken: string) {
this.client = new plivo.Client(authId, authToken);
}
async sendSMS(to: string, message: string): Promise<void> {
try {
const response = await this.client.messages.create({
src: 'YourSenderID', // Your registered sender ID
dst: to, // Destination number
text: message,
url: 'https://your-callback-url.com/status', // Optional status callback
method: 'POST'
});
console.log('Message sent:', response.messageUuid);
} catch (error) {
console.error('Plivo error:', error);
throw error;
}
}
}
API 速率限制和吞吐量
- 默认速率限制:每秒 30 条消息
- 建议每小时处理量超过 1000 件时进行批量处理
- 实现重试逻辑的指数退避算法
- 高峰时段(当地时间上午 10 点至下午 2 点)排队消息
错误处理和报告
- 为所有 API 调用实现全面日志记录
- 监控送达收据并跟踪退回率
- 设置异常错误模式警报
- 存储消息元数据以进行故障排除
- 针对临时故障实现自动重试
回顾和其他资源
关键要点
- 合规重点
- 获得明确同意
- 遵守时间限制(上午 6 点至晚上 10 点)印度尼西亚 whatsapp 数据
- 24 小时内尊重退出请求
- 技术考虑
- 使用正确的数字格式 (+223) 航空公司提升线上影响力的数字营销技巧
- 实施适当的错误处理
- 监控配送率
- 最佳实践
- 本地化内容(法语/班巴拉语)
- 保持一致的发件人 ID
- 定期跨运营商测试
下一步
- 请访 看 AMRTP 法规 意大利电话号码
- 咨询当地法律顾问以确保合规性
- 使用首选短信提供商设置测试账户
- 实施配送监控系统。