Q&A

一斉送信等複数ユーザーに対してメッセージを送信する際に、送信対象ユーザーのユーザー名をメッセージ内に入れる方法はありますか?

前提・実現したいこと

一斉送信等の複数ユーザーを対象にしたメッセージ送信時に、 <ユーザー名>さん。友達登録ありがとうございます。 のようなメッセージを送信したいと考えています。

メッセージ送信時に置換するという方法はできるのですが、 一斉送信など対象ユーザーが多い場合置換の処理をそのユーザー分実行しなければいけないため、時間がかかってしまいます。

このようなユーザー名の置換のような機能は公式のsdk等に用意されていますでしょうか??

備考

もし同様の処理を実装している方がいらっしゃいましたら、 その実装方法をご教授いただけますと幸いです。

  • 0
  • 1
  • 514
  • twitter facebook

時間がかかってしまいます <- 本当ですか?ユーザーの名前を取得する回数は送信する回数と同じでパフォーマンスがとても悪くなるとは思えません。(計測しないとわかりませんが。) 並列に動作させられるはずなので何も問題ないように思います。

sdkからは提供されない気がします。独自に関数を定義していけば良いと思います。

for userId in userIds:
  display_name = get_profile(userId).display_name
  push_message(userId, text.replace(<ユーザー名>, display_name))
  • 1
Are you sure? question.vm