PDA

View Full Version : ارتباط با خط داخلی در KDtele



e601
پنج شنبه 10 بهمن 1387, 20:53 عصر
با سلام

دوستانی که با کامپوننت KDtele کار کردن میخوام که من رو راهنمایی کنن

سوال من درمورد ارتباط با یک خط داخلی هست. فرض کنید کسی زنگ میزینه برنامه ما گوشی رو بر میداره و یک فایل صوتی رو پخش میکنه
حالا مثلا میخواهیم وقتی کلید 1 رو زد به داخلی 12 وصل بشه.
من دستورات مربوط به جواب دادن یا تشخیص کلید فشرده شده رو میدونم. فقط دستور اتصال به داخلی رو میخوام

با تشکر...

m_shahbazee
یک شنبه 25 مرداد 1388, 01:10 صبح
:تشویق:
سلام.

m_shahbazee
یک شنبه 25 مرداد 1388, 01:14 صبح
منظورت از داخلی 12 چیه؟

mpmsoft
یک شنبه 25 مرداد 1388, 10:46 صبح
شما باید اول خط رو فلش کنید و بعد داخلی رو بگیرید
با تابع GenerateDTMF این کار رو باید انجام بدید

برای ارسال فلش
Kd.GenerateDTMF("!") و بعد داخلی
Kd.GenerateDTMF("12")

Babak.Hassanpour
یک شنبه 25 مرداد 1388, 18:56 عصر
شما باید اول خط رو فلش کنید و بعد داخلی رو بگیرید
با تابع GenerateDTMF این کار رو باید انجام بدید

برای ارسال فلش
Kd.GenerateDTMF("!") و بعد داخلی
Kd.GenerateDTMF("12")

سلام
من هم این مشکل رو دارم.شما هم قبلا همین جواب رو به بنده دادید.منتها پاسخ سوال بعدی من رو کسی نداد.
برای این کار مودم باید حتما Voice داشته باشه؟
من این اررور رو میگیرم

http://barnamenevis.org/forum/attachment.php?attachmentid=35456&stc=1&d=1250432155
من هر کاری کردم نتونستم.
کسی راهنمایی نمی کنه؟
با هر کامپوننت دیگه ای هم باشه مساله ای نیست.چون فقط همین کار رو میخوام نه چیز بیشتر.

alirezash
چهارشنبه 04 شهریور 1388, 11:42 صبح
Dim lvRet As Long
lvRet = KDPhone1.GenerateDTMFDigits("!")

این دستور برای فلش کردن

mpmsoft
چهارشنبه 04 شهریور 1388, 12:05 عصر
بینش 1 ثانیه باید وقفه بدی

sohrab o
چهارشنبه 04 شهریور 1388, 20:15 عصر
میشه نمونه سورس بزاری که بقیه استفاده کنند؟

mpmsoft
چهارشنبه 04 شهریور 1388, 20:38 عصر
Private Sub SwitchLine(Code as long)

KDPhone1.GenerateDTMFDigits("!")
Pause 1
KDPhone1.GenerateDTMFDigits(" & Code &")"
End Sub

Public Sub Pause(NbSec As Single)
Dim Finish As Single
Finish = Timer + NbSec
DoEvents
Do Until Timer >= Finish
DoEvents
Loop
End Sub

sohrab o
پنج شنبه 05 شهریور 1388, 01:32 صبح
دوست عزیز mpmsoft :
اگر سورس و نمونه ای واسه منشی تلفنی داری اینجا بزار دوستان استفاده کنند

mpmsoft
پنج شنبه 05 شهریور 1388, 08:06 صبح
دوست عزیز mpmsoft :
اگر سورس و نمونه ای واسه منشی تلفنی داری اینجا بزار دوستان استفاده کنند

سورسی که دارم مربوط به پروژه ای هست که نمی تونم سورسشو بذارم
ولی خوب اصل کد وصل کردن داخلی همین کد بالا هست

فقط دقت کنید که این سیستم فقط توسط دستگاه سانترال کار می کنه

alirezash
پنج شنبه 05 شهریور 1388, 12:05 عصر
دوست عزیز اگه هنگام وصل کردن و خط داخلی اشغال باشه باید چیکار کرد ؟
kdtele خودش dc می کنه

mpmsoft
پنج شنبه 05 شهریور 1388, 12:22 عصر
خاصیت AutoDesconnect رو برابر false کنید


Private Sub KDPhone1_OnCallState(ByVal CallState As KDTele.TxCallState, ByVal Param1 As Long, ByVal Param2 As Long, ByVal CallHandle As Long)
If CallState = csRingBack Then
'خط داخلي مشغول مي باشد
End If
End Sub

alirezash
پنج شنبه 05 شهریور 1388, 14:38 عصر
دوست عزیز واقعاً دستست درد نکنه . که به همه سوالات بچه ها جواب میدی
اما یک مشکل . فقطی وصل می کتن متلا به داخلی 102 اگه اشغال بود وصل کنه به داخلی 104.

mpmsoft
پنج شنبه 05 شهریور 1388, 14:52 عصر
فقطی وصل می کتن متلا به داخلی 102 اگه اشغال بود وصل کنه به داخلی 104.

باید روی دستگاه سانترال این گزینه رو فعال کنید که وقتی داخلی اشغال بود بوق اشغالی برگردونه

بعد در رویداد Callstete متود اشغالی رو چک کنید

sohrab o
سه شنبه 31 شهریور 1388, 10:29 صبح
من نمیدونم چرا وقتی فلش میکنه و وداخلیو میگیره اون داخلی زنگ میخوره اما صدایی شنیده نمیشه
یعنی ارتباط بین کامپیوتر و خط جدید بر قرار میشه؟!

mostafa_bahar
پنج شنبه 26 آذر 1388, 20:02 عصر
آیا می شه یک خط از سانترال پاناسونیک رو بست یا باز کرد با kdtele

f_2006ir
چهارشنبه 23 تیر 1389, 18:16 عصر
سلام
من كد زير را استفاده مي كنم


dim a as long
KDPhone1.GenerateDTMFDigits ("!")
sleep 1000 'توقف به مدت 1ثانيه
KDPhone1.GenerateDTMFDigits ("102")


خط فلش ميشه ولي وقتي اون طرف گوشي رو برميدارن وصل نميشه
توقفsleep را هم كم و زياد كردم فرقي نكرد .
اينم بگم شايد 4-5 با بصورت شانسي جواب داد.
مشكل كجاست؟؟؟؟

MOJTABAATEFEH
چهارشنبه 23 تیر 1389, 19:52 عصر
آیا با kdtele می توان خط مشخصی را در شرایط خاصی قطع کرد؟

با تشکر

f_2006ir
پنج شنبه 24 تیر 1389, 11:37 صبح
اينطوري مشكل حل شد


dim a as long
KDPhone1.GenerateDTMFDigits ("!")
sleep 2000 'توقف به مدت 2ثانيه
KDPhone1.GenerateDTMFDigits ("102")
sleep 1000 'توقف به مدت 1ثانيه
KDPhone1.hangup

ولي اگه خط داخلي اشغال باشه چه كنيم
در رويداد هاي kdphon ميشه تشخيص داد خط busy هست ولي بعد از اينكه باdtmf عمل فلش انجام شده و خط داخلي اشغال بود چطور دوباه مي شه كنترل خط را در دست گرفت و به يه داخلي ديگه وصل كرد!!!!!!!!!!!!!
چرا كي اينجا جواب نميده!!!!!!!!!!!!

sohrab o
پنج شنبه 21 مرداد 1389, 00:35 صبح
من نمیتونم تشخیص بدم داخلی مشغوله یا نه؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟