0

我有一家客户公司,它有一个简单的网络应用程序,用户可以通过桌面/移动网站与之交互。最近他们要求实现通知功能。用户如果愿意,可以注册来自网络应用程序的实时通知。

真正有趣的要求是通知应该:

  1. 实时交付(60+秒延迟为失败);
  2. 有保证的交付,即我的客户希望确保每个用户都收到他/她的所有通知。
  3. 能够以某种方式从后台通知用户,例如,典型用户不会等待在他/她的 Android 上打开浏览器窗口的通知。首选方式是让手机响铃和/或振动,并将一些消息放入通知区域,以便用户即使在手机放在口袋或包里时也能注意到通知。

笔记:

  • $John一个典型的通知消息是相当短的,这里是一个例子:“你好!你今天有一个会议在$5pm”;
  • 所有用户都拥有启用了 3G 连接的智能手机(iPhone/Android)。

由于现代移动浏览器的当前状态无法满足要求 3 ,因此完全实现规范的唯一两种方法是:

  • A. 制作iOS/Android APP,使用原生API让手机在收到通知时响铃和震动;
  • B. 使用 Asterisk 之类的 IVR 通过 SIP 呼叫用户,播放带有通知的声音,并要求他/她按 1 确认收到通知(声音可能类似于“您今天在下午 5 点。请按 1 确认”)。

但是当我开始测试那些 A 和 B 选项时,我发现(1)和(2)不能通过常规的 3G 连接来满足(公司在欧洲,连接还可以)。例如,Android 设备上的 Jabber 客户端可以长时间延迟(几分钟)获得一些消息,甚至丢失一些消息。

因此,满足要求 1、2 和 3 的唯一选择是使用 B(自动 IVR - Asterisk)。

我的推理正确吗?是否有任何其他机制可以向启用智能手机的用户实时发送简短通知,100% 保证并让智能手机在收到通知时响铃和/或振动?我应该尝试使用其他任何东西来代替自动 IVR 呼叫吗?

PS 在我的研究中我不考虑 SMS 技术,因为据我所知,没有保证消息的传递。

4

1 回答 1

1

如果您的所有用户都有智能手机,您的选择是 IVR、SMS 或推送通知。如果手机网络不可用,IVR 和 SMS 的所有投注都将关闭,但 iOS 和 Android 用户可能会通过 wifi 收到推送通知。如果电话网络存在但很弱(例如,没有 3G 或 LTE),IVR 和 SMS 也差不多 - SMS 可能会稍微好一些,因为电话连接不好会将您的消息变成“您好,您有约会今天与 KRRRZZZZT [通话中断]”。

于 2013-03-05T05:54:22.647 回答