Q&A

オーディエンスに一部のユーザーを追加できない(Unable to add some user IDs into audience group)

前提・実現したいこと

LIFFを通じて取得したユーザーIDを基に、 ユーザーをオーディエンスに追加したい。

発生している問題・エラーメッセージ

オーディエンスにユーザーを追加する際、一部のユーザーが追加できない。

該当のソースコード

const token = PropertiesService.getScriptProperties().getProperty("TOKEN");
const headers = {
  'Authorization': `Bearer {${token}}`,
  'Content-Type': 'application/json'
}
const res = UrlFetchApp.fetch(
    'https://api.line.me/v2/bot/audienceGroup/upload',
    {
      'headers': headers,
      'muteHttpExceptions': true,
      'method': 'POST',
      'payload': JSON.stringify({
        "description": audienceGroupName,
        "audiences": [
            {
							"id": userId;
            }
          ]
        })
      }
)
Logger.log(res)

audienceGroupNameには適当な値を入れ、 userIdには

  1. 追加が上手くいかないuserId
  2. 追加が上手くいくuserId

をそれぞれ入れて計2つのオーディエンスを作成、 5分経過後にそれぞれのオーディエンスの情報を取得すると、それぞれ以下のようになった。

{"audienceGroup":{"audienceGroupId":4239890700131,"createRoute":"MESSAGING_API","type":"UPLOAD","description":"develop-sample-1","status":"FAILED","failedType":"AUDIENCE_GROUP_AUDIENCE_INSUFFICIENT","audienceCount":0,"created":1655513800,"permission":"READ_WRITE","expireTimestamp":1671065799,"isIfaAudience":false},"jobs":[{"audienceGroupJobId":73714438,"audienceGroupId":4239890700131,"description":null,"type":"DIFF_ADD","status":"FINISHED","failedType":null,"audienceCount":1,"created":1655513800,"jobStatus":"FINISHED"}]}
{"audienceGroup":{"audienceGroupId":8294075022608,"createRoute":"MESSAGING_API","type":"UPLOAD","description":"develop-sample-2","status":"READY","audienceCount":1,"created":1655513861,"permission":"READ_WRITE","expireTimestamp":1671065861,"isIfaAudience":false},"jobs":[{"audienceGroupJobId":73714483,"audienceGroupId":8294075022608,"description":null,"type":"DIFF_ADD","status":"FINISHED","failedType":null,"audienceCount":1,"created":1655513861,"jobStatus":"FINISHED"}]}

仮説

こちらの、2022年3月に改訂されたプライバシーポリシーに同意しているかどうかが絡んでいるのかと考えました(Messaging APIリファレンス | LINE)。 そう仮定して下で試していますが、

試したこと

  • ver. 11.19.2のLINEを使用しているユーザーに新しく友だち登録してもらい、そのuserIdで試したところ上記の問題の再現ができた。

    • その方にアップデートしてもらい端末の再起動も試したが、問題も解決しなかった。
    • 再起動後に、上記仮説の場合に解決に繋がりそうな「プライバシーポリシーに同意するよう促すダイアログ」も表示されなかった。
  • 最新版のLINEを使用しているユーザーに新しく友だち登録してもらい、そのuserIdで試したところ正常に動作した

  • ユーザーからブロックされていないこと及び、同一tokenでuserのプロフィール情報を取得できることは確認済み

  • Messaging APIとLINEログインはしっかり同じProvider内に含まれています

補足情報(FW/ツールのバージョンなど)

Google Apps Scriptを使用

  • 1
  • 0
  • 675
  • twitter facebook

Similar posts

    No similar posts

Are you sure? question.vm