如何创建此应用程序?
twilio中的哪种技术可以解决这个问题?
如何在桌面和手机之间进行窗口化?
我如何开始编写这种应用程序?
这可能是为了保持康卡斯特的电话服务和现有的诊所电话号码而不受任何干扰吗?
谢谢.
解决方法
为了确保我理解,您希望弹出窗口(“屏幕弹出”)在电话响铃时或之前显示在计算机上?您可以通过使用TwiML中的<Dial>
verb和<Sip>
来路由呼叫以及一些服务器端代码来将屏幕弹出到用户来实现此目的.
我将这样做的方法是构建一个C#Web应用程序(MVC是一个很好的方法)负责路由我的调用.它有两个关键卷:
>回应关于来电的Twilio请求.
>显示屏幕弹出给呼叫中心用户.
要处理传入呼叫,您需要从Twilio获取一个数字,并将其指向C#Web应用程序的URL.当打电话给您的Twilio号码时,Twilio会向您的应用程序URL with some data about the call发出请求.Init参数在这里最重要,因为我们可以使用它来查询您的数据库以获取客户的信息.
获得该数据后,您需要创建一个屏幕弹出窗口.如果您的用户始终打开网页,则可以使用JavaScript库(如Pusher或Socket.IO)创建屏幕弹出窗口.如果桌面或系统托盘上有C#应用程序,则可以使用它来显示通知.这实际上取决于您的用户使用他们的屏幕做什么.在Pusher中,使用their C# helper:
var result = pusher.Trigger( "incoming","call",new { customer_name = "Fred Blogs" /* etc */ } );
现在,一旦您将该通知发送到您要通知用户的任何系统,您需要将呼叫定向到用户电话.您的Web应用程序现在需要使用一些TwiML(XML)来响应Twilio,告诉Twilio如何处理呼叫.您将需要设置SIP with Twilio,以便它知道如何与您的手机通话,然后这是一个简单的指导通话:
<Response> <Dial> <Sip>sip:jack@example.com</Sip> </Dial> </Response>
Full documentation on <Sip>
可在Twilio的网站上找到.
在Building Screen Pops with Twilio Client and FullContact API上有一篇Twilio博客文章.这是用NodeJS和用户Twilio Client而不是物理VOIP手机编写的,但它应该让你很好地实现上述功能.有关使用Twilio C# Helper Library和good quick start for getting up and running with C#的更多信息.