テキストの文字数のカウント
Messaging APIでは、テキストの文字数は、UTF-16の符号単位(16ビット)でカウントします。複数の符号単位で表現する文字(例:一部の漢字やUnicode絵文字)は、複数の文字としてカウントします。たとえば、Unicode絵文字の🍎は、2つの符号単位で表現されます。そのため、1文字ではなく、2文字としてカウントします。
また、LINE絵文字を含むテキストの文字数は、テキスト中の絵文字プレースホルダ($
)を、使用するLINE絵文字の代替テキストで差し替えた状態でカウントします。代替テキストとは、LINE絵文字の表示ができない端末向けのテキストのことです。そのため、LINE絵文字を含むテキストメッセージを送信する場合に、テキストの文字数が意図せず最大文字数を超えてしまい、メッセージの送信に失敗することがあります。なお、各LINE絵文字に対応する代替テキストは開示しておりません。
ただし、以下のプロパティは、UTF-16の符号単位ではなく、書記素クラスタ単位でカウントします。
種別 | プロパティ |
---|---|
すべてのアクションオブジェクト |
|
ポストバックアクションオブジェクト |
|
メッセージアクションオブジェクト |
|
ボタンテンプレートメッセージ |
|
確認テンプレートメッセージ |
|
カルーセルテンプレートメッセージ |
|
リッチメニューオブジェクト |
|