2017-06-24 157 views
0

我正在開發一個網站,並希望使用Laravel 5.4向Nexmo發送短信至多個電話號碼。通過Laravel通知發送短信至多個電話號碼

我的應用程序在User(應呈報)和PhoneNumber模型之間具有一對多關係。後者有user_idnumber字段。

我想使用Laravel提供的優雅通知系統,只需通過執行$user->notify(new FooNotification())就可以向給定用戶的所有電話號碼發送消息。

我試圖通過添加routeNotificationForNexmo功能我User模型和返回的電話號碼作爲字符串數組路由的通知,但預計會返回一個錯誤(「數組字符串轉換」)。

任何想法?提前致謝。

編輯:現在,我已經使PhoneNumber實現了Notifiable,然後我只需要爲用戶的每個電話號碼調用notify() ...我仍然希望有更好的解決方案。

+0

你怎麼回來的數字,發佈您的代碼 – Rahul

+0

@Rahul正如我所說的,我要回他們作爲一個字符串數組。 –

+0

因此鑑於你得到這個錯誤('數組到字符串轉換')。 – Rahul

回答

2
  1. Notifiable特徵添加到您的PhoneNumber型號。 (我看你已經這樣做了)
  2. routeNotificationForNexmo函數添加到PhoneNumber模型中。
  3. 使用的通知門面像這樣:Notification::send($user->numbers, new FooNotification)
+0

這就是我現在正在做的事情,我對這個選項並不滿意。 「PhoneNumber」模型上的Notifiable特徵讓人覺得非常尷尬。 –

+0

它確實可以解決問題/問題嗎?我認爲這將有助於記住,邏輯上Laravel Notifications是用於跨多個頻道發送信息的,因爲您不在乎哪個頻道到達用戶。如果解決方案似乎對您而言最爲麻煩的做法是將功能切換到您自己的自定義SMS服務,該服務可爲一位用戶處理多個有效的電話號碼。 –