.net 플랫폼 (특히 C#)에서 전화를 걸려면 비교적 저렴한 솔루션이 필요합니다. 전화를 걸고 회선이 끊어 졌는지, 누군가 응답했는지, 그리고 누군가가 대답 할 가능성이 있는지를 결정할 수 있어야합니다. 모든 정보 주셔서 감사합니다.C#으로 전화 걸기
답변
Twilio를 사용하여 전화를 걸 수 있습니다. 신청서에서 전화 할 수있는 REST API이 있습니다. Making Calls section을 확인하십시오.
저는 Twilio와 관련이 없습니다. 제가 사용하는 유용한 서비스 일뿐입니다.
좋은 대답은 명시된 목표에 대해 라이선스 오버 헤드가 문제가되지 않아야한다는 것입니다. 대량 전화 걸기는 받아 들일 수 없을 것입니다. –
Twilio에 또 다른 투표. 방금 비슷한 개발 도구를 연구 중이므로 [여기] (http://stackoverflow.com/questions/4203211/replacement-technology-for-tapi/6485541#6485541)에 대한 다른 의견을 게시했습니다. – TonyG
보유하고있는 리소스, 사용하고자하는 예산, 보유하고있는 예산 유형에 따라 다양한 옵션이 있습니다. 일부 고객은 한 통화 기준으로 요금을 부과 할 수 있으며, 일부는 집에서 실행하고 소프트웨어 하드웨어 비용과 지원 비용 만 지불하면됩니다.
Tai Squared가 말한 것처럼, Twilio는 확실한 답변입니다. 또한 시스코에는 자동 다이얼러 옵션이 있습니다.
전화 트리도 내가 과거에 사용한 적이 있지만, 그와의 통합은 털이있을 수 있습니다. http://www.phonetree.com/
행운을 빈다.
다른 솔루션은 http://wwww.talksoftonline.com입니다.이 솔루션은 파일을 내보낼 수있는 대부분의 스케줄링 시스템과 통합되어 있습니다.
아래 코드는 제가 일하는 회사에서 잠시 동안 일하고있었습니다. 그러나 최근 TAPI는 전화 시스템에 몇 가지 중요한 변경 사항이 있었기 때문에 초기화 할 수 없었습니다. 아직 변경된 사항을 알지 못합니다.
공공 클래스 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
최종 클래스
하드웨어 및 전화 회선 또는 VOIP 및 인터넷 전화 제공 업체 또는 모바일 장치, 또는 다른 뭔가를 사용하십니까? (또한이 악마가 아닌가요?) – Rup
다행히도 좋은 이유가 있습니다. 하지만 비즈니스에 대한 전화 번호가 끊임없이 바뀌지는 않습니까? – Rup
여러분,이 질문에 대답하고 싶지 않다면 대답하지 마십시오. 나는이 논평과 관련된 12 가지의 깃발을 정리했다. –