我需要一个相对便宜的解决方案来从.net平台拨打电话(特别是C#)。它必须能够拨打一个号码并确定线路是否断开连接,是否有人接听,以及是否有人应答可能会播放信息。感谢您的任何信息。
答案 0 :(得分:10)
您可以使用Twilio拨打电话。他们可以从您的应用程序中调用REST API。查看Making Calls section。
我与Twilio无关 - 它只是我使用的一项有用的服务。
答案 1 :(得分:4)
根据您手头的资源,您需要使用的资源,您拥有的预算类型,有很多不同的选择。有些会根据每次通话向您收费,有些会让您在内部运行时设置一些内容,而您只需支付前期硬件成本和支持费用。
正如Tai Squared所说,Twilio是一个坚实的答案。我也知道思科有一些自动拨号选项。
电话树也是我过去使用的另一种,虽然与它们的集成可能很毛茸茸。 http://www.phonetree.com/
祝你好运。答案 2 :(得分:0)
另一个解决方案是http://wwww.talksoftonline.com - 它与大多数允许导出文件的调度系统集成。
答案 3 :(得分:0)
以下代码在我工作的公司工作了一段时间。但是,最近TAPI无法初始化,因为我们的电话系统发生了一些重大变化,其中我还不知道发生了什么变化。
Public Class MakeACall
Private m_tobj As TAPIClass
Private m_array_ITAdresses(10) As ITAddress
Private m_bcc As ITBasicCallControl
Public Sub New()
initializetapi3()
End Sub
Dim m_nIPPHONEline As Integer
Dim m_nGetIPPhoneLineNumber As Integer
Public Sub initializetapi3()
Try
For Each ob1 As ITAddress In m_array_ITAdresses
Next
m_tobj = New TAPIClass()
m_tobj.Initialize()
Dim ea As IEnumAddress = m_tobj.EnumerateAddresses()
Dim ln As ITAddress
Dim arg3 As UInteger = 0
m_nGetIPPhoneLineNumber = -1 'Must initialze to -1 because the phone lines start counting from zero.
m_nIPPHONEline = -1
'm_tobj.EventFilter = DirectCast(TAPI_EVENT.TE_CALLNOTIFICATION | TAPI_EVENT.TE_DIGITEVENT |TAPI_EVENT.TE_PHONEEVENT |TAPI_EVENT.TE_CALLSTATE |TAPI_EVENT.TE_GENERATEEVENT |TAPI_EVENT.TE_GATHERDIGITS | TAPI_EVENT.TE_REQUEST, integer)
For i As Integer = 0 To 10
ea.Next(1, ln, arg3)
m_array_ITAdresses(i) = ln
If (ln Is Nothing) = False Then
m_nGetIPPhoneLineNumber += 1
If m_array_ITAdresses(i).AddressName.ToUpper().IndexOf("IP PHONE") > -1 Then
m_nIPPHONEline = m_nGetIPPhoneLineNumber
End If
End If
Next
Catch ex As Exception
End Try
End Sub
Public Sub MakeCall(ByVal stPhoneNumber As String)
If stPhoneNumber.Length > 6 Then
Try
m_bcc = m_array_ITAdresses(m_nIPPHONEline).CreateCall(stPhoneNumber, TapiConstants.LINEADDRESSTYPE_IPADDRESS, TapiConstants.TAPIMEDIATYPE_AUDIO)
m_bcc.Connect(False)
Catch ex As Exception
MessageBox.Show("Failed to create call.")
End Try
End If
m_tobj.Shutdown()
End Sub
结束班