2017-06-24 13 views
0

私はWebサイトを開発しており、Laravel 5.4を使用してNexmoで複数の電話番号にSMSメッセージを送信したいと考えています。Laravel通知で複数の電話番号にSMSを送信する

私のアプリケーションはUser(Notifiable)とPhoneNumberモデルの間に1対多の関係があります。後者はuser_idフィールドとnumberフィールドです。

私は、エレガントな通知システムLaravelを使用して、$user->notify(new FooNotification())を実行して、特定のユーザーの電話番号すべてにメッセージを送信できるようにしたいと考えています。

UserモデルにrouteNotificationForNexmo関数を追加し、電話番号を文字列の配列として返すことで通知をルーティングしようとしましたが、予想通りエラーが返されます( '配列から文字列への変換')。

アイデア?前もって感謝します。

編集:今のところPhoneNumberはNotifiableを実装していますが、ユーザの電話番号ごとにnotify()を呼び出すだけでいいですが、もっと良い解決策が求められます。

+0

は、私は文字列の配列としてそれらを返すよ、あなたのコード – Rahul

+0

@Rahulを投稿してください。 –

+0

このエラー( '配列から文字列への変換')が表示されます。 – Rahul

答えて

2
  1. モデルにNotifiable特性を追加します。 (あなたはすでにこれをしているのを見て)
  2. PhoneNumberモデルにrouteNotificationForNexmo関数を追加します。
  3. はそうのような通知のファサードを使用します。私が言ったように、あなたが番号を返す方法Notification::send($user->numbers, new FooNotification)
+0

これは私が今やっていることであり、私はこのオプションには満足していません。 'PhoneNumber'モデルに' Notifiable'特性を持たせることは非常に面倒です。 –

+0

はい、問題は解決しますか?論理的にLaravel Notificationsは、どのチャネルがユーザーに届いているかを気にする必要がないため、複数のチャネルにまたがる情報のためのものであることに注意してください。ソリューションが面倒だと思われる場合は、1人のユーザーの複数の有効な電話番号を処理する独自のカスタムSMSサービスに機能を切り替えることです。 –

関連する問題