[英]Web service providing notifications over multiple transports
我想為我的客戶啟用事件通知。 有許多可能的方式來發送通知:電子郵件,短信,XMPP /其他IM,通過SIP預先錄制的語音消息,特定於電話的消息推送服務,REST回調等。
我不想自己開發所有這些傳輸,因此我需要一個可以為客戶管理這些通知的Web服務。 此外,我不想存儲電子郵件/電話/其他個人身份信息。
通知是交易性的(即它不是向每個人傳遞相同的消息)。 歡迎付費解決方案。
有http://pagerduty.com,但確實如此
因此,它給受訪者帶來了更多的負擔,我想要一些用戶無需設置就能完成的工作。
Monitis是另一個例子。 它有多種傳輸方式,包括Twitter,但它又是為內部人員設計的,而不是為大量號碼的服務訂戶設計的。
亞馬遜SNS似乎太低級別,因為它只管理推送通知的傳遞,但是為了延遲它們,我必須編寫一個我不想要的移動應用程序。
如何最好地向各種IM /通知服務發送通知中描述的XMPP服務器? 傳統上支持不同傳輸的想法,但我想要第三方托管服務。
Twilio只有2個傳輸:短信和語音呼叫,更多的是完全雙向通信。
我甚至找不到合適的谷歌關鍵字來搜索我想要的服務/ SaaS。
問題是,有沒有這樣的服務? 一些樣本會讓我知道要尋找什么。
這來得太晚了,也許為時已晚......
您不需要實現任何傳輸,但可能需要構建一些網關,並且您很可能需要組裝與每個網關通信的應用程序。 您不太可能為此找到單一服務。
你已經概述了這個策略。 你基本上有這些作品:
每個傳輸都可以通過API或CLI通過某個客戶端訪問 - 因此您需要弄清楚您的環境是什么。 Java可能是一個不錯的選擇,但其他跨平台環境可能會起作用。 Apache ServiceMix等現有基礎架構支持其中一些傳輸:
https://cwiki.apache.org/confluence/display/SM/Components+list
並且可能還有其他具有相似,不同運輸的中間件。
對於每種傳輸類型,您可能需要為每個提供程序提供網關。 您可以找到一個能夠為多種傳輸提供充分服務的提供商,例如Twilio的短信和語音,但這可能是個例外。 您可能還會發現,由於傳輸(以及功能)的不同,為每種傳輸類型構建網關更方便。 因此,您的SMS網關中可能有兩個已配置的提供程序,一個用於Twilio,另一個用於Kannel,您可能在SMS網關和SIP網關中使用了Twilio帳戶。
最后一步是將您的應用程序組裝成有意義的東西。 這可能是這樣的:
sent.......: "Thanks for your purchase, ${username}!"
發送到可能由用戶配置並且能夠從用戶收集響應的信道(即,提供者 - 傳輸對):
response...: "It was a pleasure! --Bob"
您需要存儲每個傳輸端點的基礎知識,例如,SMS的電話號碼,聊天的用戶名等,因此如果您有PII安全問題需要解決,您需要考慮這一點。 一種選擇可能是將所有PII轉交給每個提供商,但您仍需要為每個提供商中的用戶保留每個帳戶,並且您可能需要了解有關該用戶的信息,例如上面的“$ {username}” ,在您的申請中適當地個性化您的通知。 因此,從您的應用程序中刪除所有PII似乎不太可能。
我不確定這有多大幫助,但也許它會給你一些想法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.