希腊短信市场概况
区域设置名称: | 希腊 |
---|---|
ISO 代码: | 生长素 |
地区 | 欧洲 |
移动国家代码 (MCC) | 202 |
拨号代码 | +30 |
市场状况:希腊拥有成熟的移动市场,短信采用率很高。该国的主要移动运营商包括 Cosmote、Vodafone 和 Wind。虽然 WhatsApp 和 Viber 等 OTT 消息应用程序在个人通信中很受欢迎,但短信对于商业通信仍然至关重要,尤其是用于身份验证和通知。移动市场显示 Android 和 iOS 设备之间的分配相对均衡,Android 在市场份额上略有优势。
希腊的主要短信功能和能力
希腊支持大多数标准短信功能,包括字母数字发件人 ID 和串联消息,但双向短信功能有限。
双向短信支持
在希腊,大多数主要短信提供商都不支持双向短信。这意味着企业应该围绕单向通信流程设计短信策略。
串联消息(分段短信)
支持:是的,支持串联,但可用性可能因发件人 ID 类型而异。
消息长度规则:GSM-7 编码的标准短信长度为 160 个字符,Unicode (UCS-2) 编码的标准短信长度为 70 个字符。
编码注意事项:GSM-7 支持基本拉丁字符,而希腊字符和特殊符号则需要 UCS-2。
MMS 支持
MMS 消息会自动转换为带有内嵌 URL 链接的 SMS。此转换可确保交付兼容性,同时仍允许企业通过链接资源共享丰富的媒体内容。
收件人电话号码兼容性
号码可携性
希腊提供号码可携性。这意味着接收者在移动运营商之间切换时可以保留自己的电话号码。虽然这不会对传送或路由产生很大影响,但保持最新的路由表以获得最佳传送率非常重要。
向固定电话发送短信
在希腊,无法向固定电话号码发送短信。尝试向固定电话号码发送消息将导致发送失败,并且通常会从 SMS API 生成 400 响应错误(错误代码 21614)。这些消息不会出现在日志中,也不会产生费用。
希腊短信合规与监管指南
希腊遵守希腊电信和邮政委员会 (EETT) 监督的严格电信法规。由于希腊是欧盟成员国,因此短信营销和通信必须符合希腊电信法和 GDPR 要求。
同意和选择加入
明确同意要求:
- 发送营销信息前必须获得书面或电子同意
- 必须保留同意记录并方便获取
- 在选择加入时必须明确说明沟通目的
- 建议在营销活动中使用双重选择
文档的最佳实践:
- 存储时间戳和同意来源
- 保留选择加入方法的详细记录
- 保留同意记录至少 2 年
- 定期审核同意数据库
HELP/STOP 和其他命令
- 所有营销信息必须包含明确的退出说明
- STOP 命令必须同时支持希腊语和英语
- 必须尊重的常见希腊关键词:
- 停止 (停止)
- ΒΟΗΘΕΙΑ(帮助)
- 消息应在收到后 24 小时内处理
请勿致电/请勿打扰登记
希腊设有一个由 EETT 管理的国家“禁止致电”登记处。
- 企业在发送营销信息之前必须对照登记册检查号码
- 应每月进行一次注册检查
- 维护选择退出的号码的内部抑制列表
- 根据 STOP 请求立即实施删除
时区敏感度
希腊使用东欧时间 (EET/EEST)
- 建议发送时间:当地时间 09:00 – 20:00
- 限制时间:避免在 22:00 – 08:00 之间发送
- 周末注意事项:将周末消息限制为仅紧急通信
- 节日意识:尊重希腊国家和宗教节日
希腊的电话号码选项和短信发件人类型
字母数字发件人 ID
运营商网络能力:完全支持
注册要求:需预先注册并提供文件:
- 公司注册文件
- 品牌所有权证明
- 用例描述
- 预计月销量
发件人 ID 保存:是的,注册 ID 会在网络上保存
长代码
国内与国际:
- 国内长代码:支持但可用性有限
- 国际长代码:不支持 A2P 消息传递
发件人 ID 保存:国内号码保留,国际号码可能被修改 配置时间:国内号码为 3-5 个工作日 用例:适用于双向通信和交易信息
短代码
支持:可通过希腊移动运营商获得 配置时间:批准和激活需 8-12 周 使用案例:
- 大规模营销活动
- 时间敏感的通知
- 优质费率服务
- 双重身份验证
受限制的短信内容、行业和用例
禁止内容:
- 未获得希腊牌照的赌博
- 成人内容
- 加密货币促销
- 未经适当授权的政治信息
- 未取得适当许可的药品
内容过滤
运营商过滤规则:
- 包含特定关键字的邮件可能会被屏蔽
- URL 必须来自批准的域
- 每个号码的消息频率限制
避免阻塞的提示:
- 避免过多标点
- 使用注册的 URL 缩短服务
- 保持一致的发件人 ID
- 将消息频率保持在合理范围内
在希腊发送短信的最佳做法
信息传递策略
- 尽可能将消息控制在 160 个字符以内
- 包含明确的号召性用语
- 慎重使用个性化标记
- 保持一致的品牌声音
发送频率和时间
- 每位收件人每月最多可发送 4-5 条消息
- 至少间隔 24 小时发送消息
- 尊重安静时间和假期
- 围绕高峰参与时间规划活动
本土化
- 本地号码默认使用希腊语
- 考虑在旅游区提供双语信息
- 对希腊字母使用正确的字符编码
- 尊重文化差异和节日
退出管理
- 24 小时内处理退出
- 维护集中退出数据库
- 在每条营销信息中都包含退出说明
- 定期清理联系人列表
测试和监控
- 在所有主要的希腊运营商上进行测试
- 监控承运商的运送费率
- 跟踪参与度指标
- 定期测试退出功能
希腊的 SMS API 集成
Twilio
Twilio 提供强大的 SMS API,对希腊数字和字母数字发件人 ID 提供出色的支持。身份验证使用帐户 SID 和身份验证令牌凭据。
import { Twilio } from 'twilio';
// Initialize Twilio client with credentials
const client = new Twilio(
process.env.TWILIO_ACCOUNT_SID,
process.env.TWILIO_AUTH_TOKEN
);
async function sendSMSToGreece(
to: string,
message: string,
senderId: string
): Promise<void> {
try {
// Ensure number is in E.164 format for Greece (+30)
const formattedNumber = to.startsWith('+30') ? to : `+30${to}`;
const response = await client.messages.create({
body: message,
from: senderId, // Alphanumeric sender ID or Twilio number
to: formattedNumber,
// Optional parameters for delivery tracking
statusCallback: 'https://your-webhook.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 SinchSMSClient {
private readonly apiToken: string;
private readonly serviceId: string;
private readonly baseUrl = 'https://sms.api.sinch.com/xms/v1';
constructor(apiToken: string, serviceId: string) {
this.apiToken = apiToken;
this.serviceId = serviceId;
}
async sendSMS(to: string, message: string, senderId: string): Promise<void> {
try {
const response = await axios.post(
`${this.baseUrl}/${this.serviceId}/batches`,
{
from: senderId,
to: [to],
body: message,
// Greek character support
encoding: 'AUTO'
},
{
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(原名 Bird)在希腊提供可靠的短信传递服务,并大力支持当地法规。
import messagebird from 'messagebird';
class MessageBirdClient {
private client: any;
constructor(apiKey: string) {
this.client = messagebird(apiKey);
}
sendSMS(
to: string,
message: string,
senderId: string
): Promise<any> {
return new Promise((resolve, reject) => {
this.client.messages.create({
originator: senderId,
recipients: [to],
body: message,
// Enable delivery reports
reportUrl: 'https://your-webhook.com/delivery',
// Greek language support
type: 'unicode'
}, (err: any, response: any) => {
if (err) {
reject(err);
} else {
resolve(response);
}
});
});
}
}
API 速率限制和吞吐量
- 默认速率限制:
- Twilio:每秒 250 条消息
- Sinch:每秒 100 条消息
- MessageBird:每秒 60 条消息
吞吐量管理策略:
// Example rate limiting implementation
class RateLimiter {
private queue: Array<() => Promise<void>> = [];
private processing: boolean = false;
private readonly rateLimit: number;
private readonly interval: number;
constructor(rateLimit: number, intervalMs: number) {
this.rateLimit = rateLimit;
this.interval = intervalMs;
}
async add(task: () => Promise<void>): Promise<void> {
this.queue.push(task);
if (!this.processing) {
this.processing = true;
await this.processQueue();
}
}
private async processQueue(): Promise<void> {
while (this.queue.length > 0) {
const batch = this.queue.splice(0, this.rateLimit);
await Promise.all(batch.map(task => task()));
await new Promise(resolve => setTimeout(resolve, this.interval));
}
this.processing = false;
}
}
错误处理和报告
interface SMSError {
code: string;
message: string;
timestamp: Date;
recipient: string;
}
class SMSErrorHandler {
private errors: SMSError[] = [];
logError(error: SMSError): void {
this.errors.push(error);
// Implement your logging logic here
console.error(`SMS Error [${error.code}]: ${error.message}`);
}
async retryFailedMessages(
smsClient: any,
maxRetries: number = 3
): Promise<void> {
// Implement retry logic for failed messages
}
}
回顾和其他资源
关键要点
- 合规重点:
- 注册字母数字发件人 ID
- 维护选择加入同意记录 伊朗 whatsapp 数据
- 24 小时内尊重退出请求
- 注册字母数字发件人 ID
- 技术考虑:
- 对希腊文本使用正确的字符编码 您可以通过搜索关键字进行跟踪
- 对大容量发送实施速率限制
- 监控交付率和错误
- 下一步:
- 查看 EETT 指南 意大利电话号码
- 实施适当的错误处理
- 设置送达报告。