نوشته شده توسط
habil_57
اولا : قربان هر کی که جواب میده
ثانبا: فقط کد بدین راهنمایی شفاهی هم خودتون خسته میشید هم تو این مورد نتیجه نمیده من راه رو بلدم که چی باید از کجا چطور بشه کد ندارم مهربونای باصفا .
...من الان تمام کدهای لازم برای تماس و قطع تماس و ... رو دارم و دارم توی نرم افزار اداره از اونها استفاده میکنم.اما اگه قبلش خط مشکل داشته باشه برنامه برا خودش الافه
مودم من مثلا zoltrix internal و روی com3 نصبه
دوست عزیز، جناب habil_57 :
آخه شما لطف کنید یکمی از اون "تمام کدهای لازم"، کامپوننتی که استفاده میکنی، و بخشی که مشکل دارید رو بفرمایید تا بهتر بشه راهنمایی کرد، اولین قدم همون تشخیص آزاد بودن خط (یعنی وجود سیگنال 6 کیلوهرتز ممتد روی خط) هست که شما میگی من اینو از کجا بفهمم! دوستان هم که راهنمایی می کنن شما میخواهید براتون کد کامل یه Call Center بفرستن، این که نمیشه راهنمایی همینجوری میشه دیگه؛
بگذریم، مثلاً (با فرض اینکه شما تمام کدهای لازم رو دارید) من نحوه تشخیص وجود خط آزاد (بقول شما فعال بودن) رو برای نمونه با کامپوننت TeleTools v3.7، این پایین میارم ولی بالطبع نمیشه اون الگوریتم شما رو یه لقمه آماده کرد و تحویل داد :
'************************************************* ***************
' CheckActive_Click - Activate and Deactivate the TAPI Line device
'************************************************* ***************
Private Sub CheckActive_Click()
If CheckActive.Value = 0 Then
If etLine1.DeviceActive Then
WriteLog ("etLine1.DeviceActive = False")
etLine1.DeviceActive = False
If Not etLine1.DeviceActive Then
CommandDial.Enabled = False
Else
WriteLog (vbTab & "Error = " & etLine1.ErrorText)
CheckActive.Value = 1
End If
End If
Else
If Not etLine1.DeviceActive Then
CommandHangup.Enabled = False
WriteLog ("etLine.DeviceActive = True")
etLine1.DeviceActive = True
If etLine1.ErrorNumber = INVALID_SERIAL_NUMBER Then
MsgBox ("Error opening line device: " & etLine1.ErrorText & vbCrLf & vbCrLf & _
"See the help topic:" & vbCrLf & vbCrLf & _
vbTab & "Why Serial Numbers Are Important")
End If
' Check for invalid_mediamode error and check tsp property for a non compliant modem
If (Not etLine1.DeviceActive) And (etLine1.ErrorNumber = LINEERR_INVALMEDIAMODE) And _
(InStr(1, etLine1.TAPITSP, "Modem", 1) > 0) Then
etLine1.PrivilegeNone = True 'set proper priviledge for incompatible modems
etLine1.DeviceActive = True
MsgBox ("The program has detected that your device is a (" + etLine1.DeviceName & _
") DATA modem and therefore has no voice capabilities." & vbCrLf & vbCrLf & _
"We will now force a compatibility mode in order to allow you to " & _
" continue while greying out options your modem may not support." & vbCrLf & vbCrLf & _
"This device will be able to:" & vbCrLf & vbCrLf & vbTab & "DIAL" & vbCrLf & vbCrLf & _
"If you think you have a voice modem, expected more functionality, " & _
"or other programs provide more functionality with this modem, see the " & _
"topic 'Working with Modems' in the Appendix of the TeleTools help file.")
End If
If etLine1.DeviceActive Then
CommandDial.Enabled = True
Else
WriteLog ("Error = " & etLine1.ErrorText)
CheckActive.Value = 0
End If
End If
End If
End Sub
اینجا هم میتونی سورس کامل نمونه برای این کامپوننت رو ببینی، در مورد KDTele هم بی شمار کد و نمونه هست که فقط باید بدونی چی میخوای ...
موفق باشید.