PDA

View Full Version : آموزش: روش طراحی یک نرم افزار تلفن گویا ( منشی تلفن ) با KDTele



dark-man
چهارشنبه 14 بهمن 1388, 18:03 عصر
با سلام خسته نباشید خدمت همه دوستان .

نکته : این آموزش کامل نیست و در طی گذر زمان تکمیل خواهد شد . حتما" نواقصی در این آموزش هست که ممنون میشم اطلاع بدید . با این آموزش فقط سعی دارم مشکل خیلی از دوستان رو حل کنم . بروز رسانی این آموزش ممکن کمی طول بکشه اونم به خاطر مشغله کاری بنده است پس لطفا" کمی صبر پیشه کنید . این آموزش رو هم روی ویندوز 7 و هم xp تست کردم و از کارش مطمئن هستم . سعی کنید در خوندن مطالب کمی دقت کنید . سعی می کنم شیوا و بلیغ بنویسم .

خیلی از دوستان هستند که می خوان نرم افزارهای تلفن گویا بسازند و تا بخشهایی هم پیش رفتند اما در مواردی به مشکلاتی خوردند که کار رو رها کردند . می خوام در این بخش آموزش ساخت یه تلفن گویا رو قرار بدم تا همه از ازش استفاده کنند . من برای این آموزش از Delphi 7 ، KDTele 3.6.71 و مودم Intel 3Chip یا Zoltrix 3 chip یا Alfex $chip استفاده کردم این آموزش با هر سه این مودم ها سازگاره . کمی تفاوت هست که اون ها رو هم توضیح می دم . برای شروع به چند تا ابزار نیاز داریم و کمی توضیحات


1-مطمئن بشید که درایور مودمی که روی سیستم نصب دارید به روز باشه برای بروز رسانی کافیه به سایت سازنده مودم برید و درایور جدید رو دانلود کنید و نصب کنید .


2-به برنامه Hyper Terminal نیاز هست . اگه از Windows xp استفاده می کنید می تونید از مسیر زیر به Hyper Terminal دسترسی داشته باشید



Hyper Terminal : Start > All Programs > Accessories > Comunication > Hyper Terminal





برای اجرای Hyper Terminal یک راه دیگه هم هست . از مسیر زیر هم می تونید Hyper Terminal رو باز کنید



Hyper Terminal : Start > Run > hypertrm





اگه از ویندوزی غیر از xp استفاده می کنید این فایل (http://www.box.net/shared/ej10effqkg) رو دانلود کنید و فقط برنامه رو اجرا کنید



Hyper Terminal





نکته : این مطلب رو توجه داشته باشید برای اجرای صحیح Hyper Terminal روی ویندوز 7 و ویستا روی فایل اجرایی راست کلیک کنید و Run as Administrator رو بزنید .


3-به کامپوننت KDTele هم نیاز دارید . چون توی سایت فعالیت warez ممنوع هست برای همین به این ایمیل درخواست بزنید تا براتون ارسال کنم .


4-دلفی 7 هم حتما" نصب دارید دیگه و اونو نیازی نیست براتون بذارم .


5-برای نصب KDTele هم که باید به منوی Component برید . در تصویر زیر این منو نمایش داده شده . بعد از باز کردن منوی Component گزینه Install Packages رو انتخاب کنید . تا پنجره تصویر باز بشه .

http://img1.imagehousing.com/100203/a271e6c20effd8e1a1590b22ba392781.jpg


7-با زدن Install Component این پنجره باز میشه

http://img1.imagehousing.com/100203/7856703bc55e24ab9106298c5b2dc938.jpg


8-گزینه Add رو بزنید تا این پنجره باز بشه بعد از باز شدن این پنجره به مسیری برید که KDTele رو اونجا قرار دادید . مثلا" D:\KDTele\lib\Delphi7
http://img1.imagehousing.com/100203/6dd631de8715ce94b5e9a697ec391e8a.png


9-بعد از این کار فایل KDTeleDelphi7.bpl رو انتخاب کنید و open رو بزنید . به همین راحتی KDTele رو نصب کردید .


10-دلفی رو ببندید . چون الان باهاش کاری نداریم . می خوایم یکی از مشکلات رو بررسی و حل کنیم . اون مشکل هم چیزی جز Caller ID نیست . برای بررسی و حل این مشکل فارغ از منطقه مخابراتی باید بررسی کنیم که مودم Caller ID رو پشتیبانی می کنه یا نه . برای این که اینو بفهمیم اول Hyper Terminal رو به یکی از روش هایی که گفتم باز کنید .

http://img1.imagehousing.com/100203/49574dde371d86f18ba6affc7b648738.png





11-اگه دقت کنید من برای باز کردن Hyper Terminal روی برنامه راست کلیک کردم و Run as Administrator رو زدم . بعد از باز شدن برنامه این پنجره میاد

http://img1.imagehousing.com/100203/4873781f2c115e9eea548561dad0c7f4.jpg


12-وقتی این پنجره اومد گزینه No رو بزنید تا پنجره بعدی باز بشه .
http://img1.imagehousing.com/100203/99607cc313960d4687d21c9e2c0d464d.png


13-وقتی این پنجره باز شد گزینه Cancel رو بزنید تا بتونید کار کنید .


a.نکته : الان هر چی شما اینجا تایپ کنید رو نمی بینید . پس به دقت به دستوراتی که در ادامه آوردم دقت کنید . برای بررسی Caller ID از AT Command استفاده می کنیم . این دستورات رو همونطور که نوشتم تو Hyper Terminal تایپ کنید تا پیغام OK بگیرید . اگه بعد از تایپ و زدن Enter براتون Error اومد یعنی مودم شما این دستور رو پشتیبانی نمی کنه البته نگران نباشید اکثر مودم ها این دستورات رو پشتیبانی می کنند .


14-خب اولین دستور برای آماده سازی مودم هست به ترتیب دستورات زیر را تایپ کنید بعد از تایپ هر دستور Enter رو بزنید تا تایید بشه . دقت کنید که حتما ok بگیرید .



AT






AT&F&C1&D2






AT+FCLASS=?






AT+GCI=B4






AT+VCID=1





می خوام این دستورات رو توضیح بدم که چی هستند و چه می کنند . اگه برای همه این ها OK گرفتید مطمدن باشید مودمتون Caller ID رو پشتیبانی می کنه


AT : این اولین دستور هست که مودم رو برای دریافت دستورات AT آماده می کنه . اگه بعد از وارد کردن این دستور OK دریافت کردید یعنی مودم شما از AT Command پشتیبانی می کنه .


AT&F&C1&D2 : این گزینه این امکان رو به شما می ده که تمام اتفاقات توی مودم رو بتونید ببینید حتی کلماتی رو که تایپ می کنید رو هم می تونید با این دستور ببینید .


AT+FCLASS=? : این دستور وضعیت و امکانات واقعی مودم رو براتون بر می گردونه . اگه توی اعدادی که برگشت داده عدد 8 وجود داشته باشه یعنی مودم شما هم از Caller ID و هم از Voice پشتیبانی می کنه .


AT+GCI=B4 : این دستور وضعیت جغرافیایی و منطقه ای مودم را فعال می کنه . این گزینه برای فعال سازی Caller ID الزامی هست .


AT+VCID=1 : این گزینه هم Caller ID رو فعال می کنه . اگه به جای 1 عدد 0 رو بزنید Caller ID غیر فعال میشه و اگه عدد 2 رو بزنید بصورت فرا منطقه ای تنظیم میشه .


نکته : برای اینکه وضعیت هر کدوم از این دستورات رو ببینید کافیه به جای اون عدد یه علامت ؟ بذارید تا وضعیت رو براتون برگردونه . بعد از اینکه مطمئن شدید که همه دستورات رو ok داده سیم تلفن رو به مودم وصل کنید و با اون شماره ارتباط برقرار کنید اگه همه چی رو درست انجام داده باشید باید یه همچین پیغامی رو روی Hyper Terminal دریافت کنید :



Ring








Date=0201






Time=1520






NMBR=09123456789








Ring





Ring : بهتون می گه که خط داره زنگ می خورم .


Date : تاریخ تماس رو بر می گردونه .


Time : زمان تماس رو برمی گردونه .


NMBR : هم که شماره تماس گیرنده رو بر میگردونه .



خب کارمون با Hyper Terminal تموم شد . می تونید اونو ببندید . در بخش بعدی ساختن یه تلفن گویا یا همون منشی تلفنی رو شروع می کنیم .

ایمیل بنده جهت دریافت KDTele : hadi.jami@gmail.com

dark-man
شنبه 17 بهمن 1388, 14:23 عصر
در بخش اول امکانات مودم رو بررسی کردیم و با چند تا دستور AT تونستیم بفهمیم که آیا مودم ما Caller ID و Voice داره یا نه . در این بخش می خوام شروع به ساخت برنامه بکنم . توجه داشته باشید که من از روش تجربی و تحقیقی خودم برای ایجاد این برنامه استفاده می کنم . البته سعی می کنم عمومیت بیشتری بهش بدم . اما شما می تونید این کدها رو هر جور که صلاح می دونید استفاده کنید . ممنون میشم اگه اشکالات روبهم گوشزد کنید تا این آموزش بهتر و بهتر بشه .

ایجاد برنامه :

1- دلفی رو باز کنید و یه پروژه جدید ایجاد کنید .

2- مانند شکل زیر به KDTele Tab برید و KDSerialPort رو انتخاب کنید و روی فرمتون قرار بدید .
http://varooneh.persiangig.com/image/1.jpg





http://varooneh.persiangig.com/image/2.jpg


3- در مرحله بعد نیاز داریم که KDSerialPort رو تنظیم کنیم . برای این کار KDSerialPortی که روی فرم گذاشتید انتخاب کنید و به پنجره object inpector برید . در لیست Property های KDSerialPort Propertyی به نام ManualSettings هست . بازش کنید و در قسمت Port عدد 3 رو وارد کنید .

نکته : این عدد 3 چی هست ؟ هر مودمی که روی سیستم نصب میشه یک Port رو برای خودش اشغال می کنه . در حالت عادی مودم Port 3 یا Com 3 رو برای خودش اشغال می کنه که پیش فرض اکثر مودمها هم هست . به همین دلیل من خواستم عدد 3 رو وارد کنید . اما از کجا بفهمیم Port مودم ما چی هست . برای اینکار به مسیر زیر برید :


Control Panel > Phone And Modem Option > Modems Tab >

در این پنجره نام مودم های نصب شده بر روی سیستم لیست شده و در مقابلش هم لیست portهایی که مودم اشغال کرده هم لیست شده . از اینجا می تونید بفهمید که مودم روی کدام Port نصب هست . تصاویر زیر مطالب بالا رونشان می دهند .


http://varooneh.persiangig.com/image/4.jpg

http://varooneh.persiangig.com/image/3.jpg







http://varooneh.persiangig.com/image/5.jpg






4- خب Port که تنظیم شد . نیاز به نوشتن مقداری کد داریم . از این به بعد تصور من اینه که شما می دونید Property و Event چی هستند و در دلفی کجا قرار دارند . با این تصور من فقط توضیح متنی میذارم . خب اول KDSerialPort رو انتخاب کنید . به object inspector برید و Events رو انتخاب کنید . onPortState رو از بخش Events دوبار کلیک کنید تا محیط کد نویسی دلفی باز بشه . این Event این امکان رو به شما میده که وضعیت port ی که روش کار می کنید رو براتون مانیتور کنه . حالا این دستور رو براش بنویسید :
procedure TForm1.KDSerialPort1PortState(Sender: TObject;
PortState: TPortState; Param1: Integer);
begin
case PortState of
psOpened : ShowMessage('پورت باز شد');
psClosed : ShowMessage('پورت بسته شد');
psError : ShowMessage('خطا در فعاليت پورت');
end;
end;


این قطعه کد وضعیت Port رو براتون بر می گردونه من از MessageBox استفاده کردم . شما از هر چی که دوست دارید می تونید استفاده کنید .

5- روی فرمتون کلیک کنید . به object inspector برید و از Events های فرمتون OnShow رو انتخاب کنید و دوبار کلیک کنید تا محیط دلفی باز بشه . این کد رو در این بخش بنویسید :
procedure TForm1.FormShow(Sender: TObject);
var
pORes : Integer;
begin
if KDSerialPort1.IsOpened then
begin
KDSerialPort1.Close;
end
else if not KDSerialPort1.IsOpened then
begin
pORes := KDSerialPort1.Open(0);
if pORes = 0 then
begin
KDSerialPort1.SendString('AT' + #13);
KDSerialPort1.SendString('AT&F*C1&D2' + #13);
KDSerialPort1.SendString('AT+GCI=B4' + #13);
KDSerialPort1.SendString('AT+VCID=1' + #13);
end;
end;
end;

نکته :

1- اگر کمی دقت کنید می بینید که این کدها همان دستورات AT هستند که در بخش قبل در Hyper Terminal نوشتیم و اجرا کردیم . پس اگر مودم شما این دستورات را پشتیبانی می کنه این ها رو اینجا بنویسید .

2- در این کد من اول بررسی کردم که Port باز هست یا نه . دلیلش هم اینه که ممکنه مودم توسط برنامه دیگه ای در حال اجرا باشه . در اینصورت Port در حالت Busy هست . برای همین اول بررسی می کنم که باز هست یا نه و اگه باز بود با دستور KDSerialPort1.Close; پورت رو می بندم .

3- در بخش بعدی بررسی می کنم اگه پورت باز نبود . ابتدا پورت رو با دستور KDSerialPort.Open(0); باز می کنم . و بعد دستورات AT رو توسط KDSerialPort.SendString(); به مودم ارسال می کنم تا مودم رو برای فعالیت آماده کنم .

نکته : اگر دقت کنید میبینید که قبل از KDSerialPort.Open(0); یک متغیر عددی آوردم . این دستور در صورت موفقیت یا عدم موفقیت یک عدد رو بر می گردونه که با اون عدد میشه در مورد خطاها تصمیم گیری کرد . لیست خطا های مربوط به KDTele رو در پایان این آموزش براتون میارم.

i. در آخر اگر مقدار pORes = 0 بود دستورات AT رو به مودم ارسال می کنم تا مودم به محض برقراری تماس ورودی بتونه شماره تماس گیرنده رو شناسائی کنه .

6- ما دستورات مورد نیاز رو به مودم ارسال کردیم . اما در برنامه چه جوری بفهمیم که مودم در حال زنگ خوردن هست و چه اتفاقی برای مودم داره میفته . برای اینکار ابتدا باید KDSerialPortی که روی فرم گذاشتید رو انتخاب کنید و به object inspector برید و Events رو انتخاب کنید . در بخش Events یک Event به نام onReciveData وجود داره که اطلاعات روی پورت یا مودم رو براتون می خونه .اما چه جوری باید این اطلاعات رو ببینیم . اول از همه یک Memo از Standard Tab روی فرمتون بذارید . سپس روی onReciveData مربوط به KDSerialPort 2 بار کلیک کنید تا محیط کد نویسی دلفی باز بشه . حالا این کد رو در این بخش بنویسید :
procedure TForm1.KDSerialPort1ReceiveData(Sender: TObject;
DataPtr: Pointer; DataSize: Integer; var DisplayHandle: HWND;
var IsDisplayUNICODE: Boolean);
begin
DisplayHandle := Memo1.Handle;
KDSerialPort1.BufferIn.FindString(0, '', False);
end;

نکته : حتما در بخش Property مربوط به KDSerialPort در object inspector در گزینه Bufferln گزینه Enabled = True باشه . اما در مورد این کد :

1- در این Event 2 تا متغیر داریم به نام های DisplayHandle و IsDiplayUNICODE که یکی از نوع HWND هست و یکی از نوع Boolean .

DisplayHandle : این امکان رو به شما میده تا اتفاقات روی پورت و یا مودم در یک Memo یا ListBox نمایش بدید و از اتفاقات مطلع بشید .

IsDisplayUNICODE : این متغیر برای زمانی هست که روی پورت و یا مودم اطلاعات غیر از کاراکترهای English روی مودم ارسال باشه . با True یا False کردن این گزینه این امکان رو می تونید کنترل کنید .

2- DisplayHandle که مشخص هست من به Memo نسبت دادم . اما خط دوم این Event اطلاعات مورد نیاز از روی پورت یا مودم رو می خونه . عدد 0 به نشانه اینه که از Index 0 رشته هایی که برگشته اند شروع به خوندن کن . ‘’ در این بخش شما هر کاراکتری رو می تونید قرار بدید کثلا" اگر دنبال کلماتی که با N شروع می شوند می گردید . اونجا باید ‘N’ رو وارد کنید . اما گزینه آخر این گزینه برای اینه که مشخص کنید که حساس به کلمات باشه یا نه . یعنی Case Sensetive باشه یا نه من اینجا False گذاشتم تا حساسیتی به بزرگی و کوچکی کلمات نشان نده و همه رو برام لیست کنه . خب از اینجا به بعد می خوام شماره سریال رو پیدا کنم و تو یک MessageBox نمایش بدم . در ادامه همون کد قبلی این کد رو هم اضافه کنید .

نکته : این روش اختصاصیه منه . شما از هر روش دیگه که دوست دارید می تونید استفاده کنید .

dark-man
سه شنبه 27 بهمن 1388, 15:31 عصر
در 2 بخش قبلی یه سری مطالب در مورد مودم و کار با پورت رو براتون نوشتم . اینجا می خوام اون مطالب رو ادامه بدم . به انتهای بخش قبل برگردیم :
procedure TForm1.KDSerialPort1ReceiveData(Sender: TObject;
DataPtr: Pointer; DataSize: Integer; var DisplayHandle: HWND;
var IsDisplayUNICODE: Boolean);
var
TTelNumber : String;
begin
DisplayHandle := Memo1.Handle;
KDSerialPort1.BufferIn.FindString(0, '', False);
end;

اینجا ما تونستیم اطلاعات رو نشون بدیم . حالا من از روش اختصاصی خودم برای نمایش Caller ID استفاده می کنم . بعد از کد KDSerialPort1.BufferIn.FindString(0, '', False); این دستور یا هر دستوری که احساس می کنید درست هست رو قرار بدید :
if Memo1.Lines.Count = 13 then
begin
KDSerialPort1.Close;
// این بخش توضیح دارد
TTelNumber := Memo1.Lines.ValueFromIndex[12];
Delete(TTelNumber, 0, 7);
ShowMessage(TTelNumber);
end;

فکر می کنم درک کد ساده باشه !؟ اینجا گفتم اگه تعداد خط های موجود در Memo1 به 13 رسید . پورت رو ببند . اینکار باعث میشه که پورت دیگه فعال نباشه .

نکته ( مهم ) : از همون KDTele Tools Tab یک KDPhone روی فرم قرار بدید تا بتونید بعدا" ازش استفاده کنید .

یک متغیر رشته ای دارم که باید خط مورد نظر رو در اون قرار بدم . حالا از کجا بفهمم این خط کجاست و چیه ! ؟

وقتی که دستورات AT رو به سمت مودم ارسال می کنید و اونو آماده می کنید بعد از اعلان Ring در Hyper Terminal زمان و تاریخ تماس و یه گزینه دیگه که NMBR = XXXXXXX هست رو نشون می ده . من تصور کردم که این گزینه در خط 12 هست ممکنه در کد نویسی شما در خط دیگه ای باشه که می تونید اینو به راحتی پیدا کنید . در بخش بعد با دستور DELETE مقداری که نیاز نبود رو حذف کردم و در پایان هم توسط ShowMessage اونو نمایش دادم . براتون یک نمونه از کدی که از اول تا الان در موردش صحبت شده رو می ذارم تا بهتر درک کنید .

توضیح : سعی میکنم از این به بعد سریعتر این مطالب رو در اختیارتون بذارم تا استفاده کنید .


دانلود نمونه برنامه (http://barnamenevis.org/forum/attachment.php?attachmentid=44200&stc=1&d=1266323466)

dark-man
شنبه 22 اسفند 1388, 08:52 صبح
از همه بابت تاخیر در بروز رسانی این مطالب عذرخواهی می کنم . آخر سال هست و حجم کار زیاد و وقت کم . سعی می کنم در طول تعطیلات این بخش رو کامل کنم . می خوام این بخش به صورت یه FAQ در بیاد تا همه بتونن سوالات و مشکلاتشون در مورد تلفن گویا رو بپرسند و جواب بدم . اینجوری با کمک شما میشه یه مرجع کامل ساخت تا مشکل همه حل بشه . مجدد بابت تاخیر در بروز رسانی عذر خواهم .

Pr0grammer
دوشنبه 24 اسفند 1388, 10:40 صبح
دوستان پرسش و پاسخ در مورد این آموزش رو در تاپیک زیر مطرح کنید :
http://barnamenevis.org/forum/showthread.php?t=211396

موفق باشید/

Site Admin
جمعه 06 فروردین 1389, 11:08 صبح
آقايون ما كه به دلمون موند يه نفر در سايت برنامه نويس بياد آموزش ساخت تلفن گويا رو بي نقص بگه هر كي مياد يه كم توضيح ميده و ميره اين صاحب تاپيك هم رفته عيد ديدني

به قول قديميها ميگن كار اون كرد كه تمام كرد

dark-man
سه شنبه 31 فروردین 1389, 08:24 صبح
آقايون ما كه به دلمون موند يه نفر در سايت برنامه نويس بياد آموزش ساخت تلفن گويا رو بي نقص بگه هر كي مياد يه كم توضيح ميده و ميره اين صاحب تاپيك هم رفته عيد ديدني

به قول قديميها ميگن كار اون كرد كه تمام كرد

جناب Site Admin عزیز . بنده قصد نیمه کاره رها کردن این آموزش رو نداشتم و ندارم . اما بعضی مواقع اتفاقاتی پیش میاد که .... . در ضمن فکر کنم شما هم موافق باشید با این نظر که بهتره کمی هم خود دوستان با توجه به این همه راهنمائی تو این سایت خودشون تلاش کنند و ذوق به خرج بدن . من تلاش می کنم که بزودی این آموزش رو تموم کنم تا بقیه کاربران اذیت نشن .

Modernidea
سه شنبه 31 فروردین 1389, 10:28 صبح
آقا این فایل exe موجود در مثالتون رو آنتی ویروس من ویروس شناخت!


http://barnamenevis.org/forum/attachment.php?attachmentid=47368&stc=1&d=1271744630

سيد مجتبي هاشمي
یک شنبه 09 آبان 1389, 22:19 عصر
جناب dark-man من بنا به نیازم امروز این تاپیک رو مطالعه کردم و فایل رو دانلود کردم. انتی ویروس من هم همین پیام رو میده.
فکر میکنم شش ماه زمان برای از سر گرفتن آموزش و کامل کردنش زمان خوبی باشه. لطفا آموزش رو نیمه کاره رها نکنید.
باز هم ممنون از توضیحات کاملتون.

سيد مجتبي هاشمي
دوشنبه 10 آبان 1389, 10:01 صبح
آنتی ویروس من هم همین پیام رو میده. لطفا راهنمایی کنید

بعد از شش ماه نمیخواهید آموزش رو ادامه بدین؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

dark-man
جمعه 21 آبان 1389, 00:02 صبح
آنتی ویروس من هم همین پیام رو میده. لطفا راهنمایی کنید

بعد از شش ماه نمیخواهید آموزش رو ادامه بدین؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟


بنده خیلی علاقه دارم این بحث کامل بشه . اما چون خودم درگیر بودم نتونستم . هر کدام از دوستان که در این مورد سوال دارند می تونند به بنده ایمیل بزنند تا اگه تونستم کمکشون کنم . سعی می کنم یه PDF آماده کنم و اینجا قرار بدم تا همه دوستان استفاده کنند .

ایمیل بنده : hadi.jami@gmail.com

در مورد این ویروس هم باید عرض کنم من هم همین مشکل رو داشتم که با جستجو در سایت برنامه نویس مشکلم رو حل کردم .

بابت تاخیر از همه عذر میخوام .

maddahi.m.p
پنج شنبه 27 آبان 1389, 17:45 عصر
با سلام خدمت دوستان عزیز
تقریبا با کمی سعی و تلاش همه چیز روشن میشه اما یک سوال که هرجا گشتم جواب قانع کننده ای ندیدم:
اینکه چطور میشه فهمید گوشی رو طرف برداشته یا نه ؟ مشغولی رو تشخیص میده مششکلی نیست .
اما چطور بفهمیم گوشی رو برداشته ...؟؟ چون فرقی بین اینکه زنگ خورده جواب نداده یا جواب داده نمیذاره !!!
با تشکر خیلی گیر این مورد هستم پیشاپیش سپاسکذارم .

aptin_22
یک شنبه 07 آذر 1389, 09:34 صبح
:تشویق:از شما دوست عزیز تشکر می کنم بابت این آموزش :تشویق:
اما من یک برنامه منشی دیگه ای دارم که با KD Phone کار کرده و کالر آی دی اون کار نمی کنه . من این کاری رو که شما یاد دادید داخلش انجام دادم . (البته این آموزش شما با KD Serialport کار می کنه) ولی وقتی از KD Serialport توی این برنامه استفاده می کنم دیگه عمل نمی کنه (یعنی دستورات AT رو داخل Memo نشون نمی ده) ممنون می شم اگه منو راهنمایی کنین.

farshid1361
پنج شنبه 12 اسفند 1389, 18:40 عصر
با سلام
نرم افزار تماس خودكار رو با KDTELE و زبان دلفي7 نوشتم . مشكل : پيام تلفني خودم رو ميخام زماني ارسال به طرف مقابل كنم كه اون گوشيشو جواب بده و يا برداره .آخه پيامو زماني ارسال ميكند كه Csconnect تشخيص آزادي خط رو ميده .
در اين صورت ممكنه اون گوشيشو برنداره و يا بعد از 3 يا .. باز زنگ خوردن جواب بده . كه در اين صورت يا پيامو نشنيده يا ناقص بهش رسيده و گزارش نرم افزارم با مشكل مواجه ميشه .
farsoft1361@yahoo.com با ايميل راهنماييييييييي كنيد

mazgal2009
یک شنبه 14 فروردین 1390, 16:10 عصر
سلام

در مورد سوالی که فرمودین :
++ چطور میشه فهمید گوشی رو طرف برداشته یا نه ؟ مشغولی رو تشخیص میده مششکلی نیست ++

این امکان با یک کامپوننت دیگه امکان پذیر هست . اگر اطلاعات بیشتری نیاز داشتین به این سایت مراجعه کنید :
www.versa.ir (http://www.versa.ir)

morTeza.cs
چهارشنبه 04 خرداد 1390, 21:03 عصر
سلام به همگی.
میدونم این تاپیک یکم قدیمیه، ولی یه سوال داشتم که مرتبط با با همین موضوه بود.
من یه مودم اکسترنال خریدم و نصب کردم و با هایپر ترمینال باش کار کردم خوب بود و مشکلی نداشت. اما بعد از اینکه هاپیر ترمینالو بستم انگار مودم هنوز قطع نشده. هر وقت سیم تلفن رو بهش وصل می کنم(حتی اگه به USB وصل هم نباشه) تلفن مشغول میشه.
یعنی اگه سیم تلفن رو بهش بزنم و به اون خط زنگ بزنم بوق اشغال میزنه . با خود هایپر ترمینال هم دیگه نمیشه به جایی زنگ زد. کسی می دونه مشکل از چیه؟

razi.sadeq
یک شنبه 27 شهریور 1390, 22:16 عصر
سلام
چطوری میشه توی KDTele با فشار دادن یه عدد تلفن ثابت زنگ بخوره (یعنی به اپراتور وصل بشه) ؟

NaserHadi
یک شنبه 18 دی 1390, 12:50 عصر
سلام
یکی از دوستان گفته که برای اطلاعات بیشتر به www.versa.ir (http://www.versa.ir) و یا http://www.telguya.blogfa.com مراجعه کنید ولی من توصیه می کنم هرگز گول تبلیغات اینگونه سایتها را نخورید در کل برای خرید اینترنتی در ایران عجله نکنید!!!
اولین دروغی که در اول تبلیغاتشون نوشتند این جمله است " برای اینکار نیاز به هیچ دستگاه یا مودم خاصی نیست" در صورتی که اکثر شما همانطور که دیدید با هر مودمی نمیشه کار کرد
حتی در مورد مودمی که caller idرا ساپورت می کنه کلی تنظیمات لازم است با این وجود باز هم کار نمی کنه
فایلهایی هم که براتون می فرستن رو اگه بگردین تو اینترنت هست

NaserHadi
چهارشنبه 19 بهمن 1390, 15:03 عصر
من در مورد این سایت www.versa.ir (http://www.versa.ir) توضیحان کامل دادم لطفا آنها را بخونید

NaserHadi
چهارشنبه 19 بهمن 1390, 15:06 عصر
بازدید از وبلاگ زیر را هم توصیه می کنم
http://telephonegooya.blogfa.com

benyaminrahimi
شنبه 17 تیر 1391, 18:17 عصر
من متوجه نمیشم

2 تا سوال دارم

1 اگه میخوای از کامپوننت استفاده کنی چرا میری سراغ at command
2 اگه میخوای از at command استفاده کنی پس kd tele چیه

چرا خودتونو اذیت میکنین ؟ مگه سمپل answer machin رو ازتون گرفتن که میاین اینجا کار تحقیقاتی آموزشی میکنین؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
یا اون دوستمون لینک بلاگشو میده؟ یا مگه این کامپوننت هلپ نداره ؟؟؟؟