こんにちは。 ディベロップメントサービス1課の山本です。
寒くなったり、暑くなったり忙しい季節ですね。
秋は消えてしまったのかもしれません。。。
今回はAmazon SNSの表示名に日本語を利用する場合の注意点を説明します。
61文字以上だとEメールが送信されません。
Amazon SNSの表示名とは
Amazon SNSを利用して、メッセージを送信する時の送信元の名前になります。

通知先としてよく使われる、EメールとSMSでは下記のように見えます。


最大文字数について
マネジメントコンソール上は、最大100文字
と記載があります。

しかし、実はEメール送信時には別の制約もあります。
E メールエンドポイントをサブスクライブする場合、Amazon SNS トピックの表示名と送信 E メールアドレス (例えば、no-reply@sns.amazonaws.com) の合計文字数が 320 UTF-8 文字を超えてはなりません。Amazon SNS トピックの表示名を設定する前に、サードパーティーのエンコードツールを使用して送信アドレスの長さを確認できます。
320 UTF-8 文字を超えてはなりません
の理解がしっくり来なかったので
実際にUTF-8のbyte数による文字数限界を調べてみました。
UTF-8のbyte数に応じた最大文字数
表示名の変更とメール送信を繰り返して確かめました。
こういう時、二分探索は便利ですね。
- 送信元Eメールアドレス:no-reply@sns.amazonaws.com
Eメール送信可能な文字数
UTF-8 byte数 |
送信文字 | 最大文字数 | 備考 |
---|---|---|---|
1 | a | 100 | |
2 | Ѡ | 88 | |
3 | あ | 60 | 日本語は基本3byte文字 |
4 | 🍺 | 50 | 2文字扱いで処理される 最大50文字まで |
まとめ
- Amazon SNS の表示名は、文字の種類によっては最大100文字入れるとEメール送信ができない。
- 表示名を全て日本語にした場合、60文字までならEメール送信可能。
さいごに
こんなに長い表示名をつける人は少ないと思いますがご参考までに。
大切なことはAWSドキュメントの重要
に書いてますね。
本ブログがどなかたのお役に立てれば幸いです。