سلام
امیدوارم سالی خوبی را داشته باشید
من دو تا مشکل دارم اما دومی تو الویت هستش
1. شماره تماس گیرنده قابل نمایش نبود
2. چرا صدای پیش فرض رو پخش نمی کنه ( در مسیر استارت قرار داره با استاندارد کامپنت هم سازگار هستش )
کلیدهای فشرده شده را به درستی نمایش داد
آخرین ویرایش به وسیله moory1364 : جمعه 09 فروردین 1392 در 23:24 عصر
سلام moory لطف کنید سیستم عامل و مودمتونو ذکر کنید
روی هر مدل مودمی که تو بازار هستش تست کردم
سیستم عامل های که با تک تک مودم ها تست شد 8 7 و Xp
مودمی که بلوتوس برای گوشی می سازه هم تست کردم ثبت کلید و پخش صدای پیش فرض کار نکرد
هر برند مودمی که تو بازار یافت میشه تک تک تست کردم روی موردم ها غیر از پخش صدای پیش فرض تعریف شده و نمایش call id همه ی موارد به درستی کار می کنه در ضمن تفاوتی در نوع سیستم عامل ها نیز وجود نداشت
برای تست گوشی موبایل را به بلوتوس کامپیوتر وصل کردم علاوه بر پابرجا بودن مشکلات بالا کلید ها رو نیز شناسای نمی کرد
نکته : jasper دوست خوبمون نیز گوش زده کرده بود TAPIEx در درایور که سیستم عامل (7 یا 8 ) نصب نیست نصب کنید
آخرین ویرایش به وسیله moory1364 : جمعه 09 فروردین 1392 در 23:26 عصر
خوب من هم روی درایوی غیر از ویندوز نصب و کرکش کردم
سلام مهندس
منظورم wav که بعد از 4 بار بوق باید پخش بشه
سلام دوست عزیز من میخوام وقتی که کسی زنگ میزنه شمارش توفرم اصلی برنامه نشون داده شه باید چی کارکنم؟
دوست عزیز jasper چطوری میتونم صدای طرف و ضبط وذخیره کنم؟
سال نو همه دوستان مبارک.
سوالی برام پیش اومده . از کجا میشه فهمید پخش صدا یا همان playBack کارش به اتمام رسیده؟
هر وقت تموم بشه رویداد OnPlayBackComplete فایر میشه .
سلام دوستان من چطور میتونم تو تلفن گویا یه دکمه رو اختصاص بدم به فکس مثلا طرف زنگ میزنه بعد از شنیدن یه صدایی و با زدن یه دکمه مثلا دکمه 4 بشه فکس دریافت کرد اگه دوستان با کد یا نمونه کد بزارن خیلی ممنون میشم
دوست عزیز شما بهتره برین سراغ کامپوننتی که واسه فکس طراحی شده.
البته میتونینم واسه قسمت تلفن گویاتون از این کامپوننت استفاده کنین و با زدن همون دکمه 4 یه متغیر رو ترو کنین یه یه متود که مال فکس هستو صدا بزنین. که اگه برنامه ایو که در پست های قبلی قرار دادم ببینین خیلی راحت میشه این امکانو توش جا داد.
اما بازم توصیه میکنم از کامپوننت دیگه ای استفاده کنین.
سلام دوستان من چطور میتونم تو برنامه تلفن گویای خودم این امکانات رو اضافه کنم
1-مشتری صدای بوق نشنوه یعنی وقتی تماس برقرار شد مستقیم جمله خوش آمدگویی بگه چون تو برنامه من مشتری بعد از شنیدن 1 یا 2 بوق جمله خوش آمد گویی رو میشنوه
2-چطور میتونم وقتی مشتری زنگ زد ساعت سیستم برنامه رو تشخیص بده مثلا اگه مشتری ساعت 08:45:20 زنگ زد بگه صبح بخیر یا مثلا اگه ساعت 12:50:20 زنگ زد بگه ظهر بخیر
دوستان خواهش میکنم اگه کسی بلده لطفا با کد برام بزاره یه دنیا ممنونش میشم
اگه منظورتونو درست متوجه شدم . میخاین بدونین ان کد رو کجا بزارین یا چه وقت اجرا شه.
که جوابش اینه: به هر روشی که دوس دارین
میتونین تو یه تایمر بزارین که مثلا 30 ثانیه بعد از برقراری تماس باشه
میتونین با برقراری تماس شروع به ضبط کنین و یا این که منطقی ترین راهش اینه که از کاربر بخاین که با زدن فلان دکمه ضبط رو اغاز کنه که در این صورت باید از رویداد OnDTMF استفاده کنین.
ممنون دوست عزیز ولی کاری که شما گفتیم من انجام دادم تو رویداد onringاما باز بعد از 2 بار زنگ خوردم پاسخ میده
یه مشکل دیگه هم برام پیش اومده این فایل صوتی رو پخش نمیکنه مشخصات فایل صوتی من mono -128 bit rate اگه ممکنه راهنماییم کنید فایل صوتی من چه مشخصاتی باید داشته باشه تا tapiex بتونه اونو پخش کنه ممنون میشم
ببخشید یادم رفت خطایی هم که نشون میده اینه
Line:'Smart Link 56K Voice Modem (HCALL:0x10033)' Failed in Playbackfile().
Line:'Smart Link 56K Voice Modem (HCALL:0x10033)' Error in wave I/O:wave/out error in waveOutOpen(), errorcode=4 ('The specified device is already in use. Wait until it is free, and then try again.')
Line:'Smart Link 56K Voice Modem (HCALL:0x10033)' Failed in Playbackfile().
Line:'Smart Link 56K Voice Modem (HCALL:0x10033)' Error in wave I/O:wave/out error in waveOutOpen(), errorcode=4 ('The specified device is already in use. Wait until it is free, and then try again.')
Line:'Smart Link 56K Voice Modem (HCALL:0x10033)' Failed in Playbackfile().
Line:'Smart Link 56K Voice Modem (HCALL:0x10033)' Error in wave I/O:wave/out error in waveOutOpen(), errorcode=4 ('The specified device is already in use. Wait until it is free, and then try again.')
من گفتم شاید مودمم ساپورت نمیکنه اما یه نرم افزار تلفن گویای دیگرو با همین مودم امتحان کردم دیدم برا اون درست کار میکنه
این اررور از چی و کجا میتونه باشه
سورس کد منم برا پخش صدا به این صورت
e.m_Call.PlaybackFile(Application.StartupPath + "\\wellcome.WAV");
آخرین ویرایش به وسیله دل تنها : چهارشنبه 11 اردیبهشت 1392 در 14:31 عصر
دوست عزیز در مورد مطلب اول باید کدهاتونو ببینم .چون همونطور که قبلا گفتم این برنامه نویسه که برنامه رو محدود به تعداد معینی زنگ میکنه. ممنکنه جایی تداخل داشته باشه کدتون. باید ببینم که بتونم نظر بدم
در مورد مطلب بعدیتون هم قبلا مشخصات فایل رو تو پست های قبلی گفتم که میتونین پیداش کنین. ارور مودمتون هم احتمالا برمیگرده به فرمت فایلتون.
سوالی بود بازم در خدمتم
سلام دوست عزیز بنده چند تا سوال دارم :
1- استفاده از چند خط با چند مودم
2-اتصال به داخلی سانترال
3-کار با کارت dialogic
4- ظبط مکالمات
خیلی ممنون می شم اگر راهنمایی بفرمائید
davood86n عزیز
در مورد سوال اول باید بگم که بله این قابلیتو داره اما بنده روش کار نکردم
در مورد 2 سوال دیگه هم بی اطلاعم .
در مورد سوال اخر ؛ ضبط مکالمات با این کامپوننت بسیار سادس و از طریق متدی که واسه این کاره انجام میشه مانند پخش صداس که فقط نیاز به ادرس فایل داره.
در موردش اگه اطلاعات بیشتری خواستید در خدمتم و اما از دوستان کسی باشه که به 3 سوال اولتون پاسخ کامل بده ما هم استفاده میبریم
سلام دوست عزیز
خسته نباشید
میشه نحوه تشخیص شماره تماس گیرنده رو هم بزارید؟ به شدت بهش نیاز دارم :)
سلام بر همگی و خسته نباشید می گوییم به اموزش دهنده گرامی
سه سوال از خدمتتان داشتم:
1.برای اینکه در VS2008 با .Net 3.5 استفاده کنم باید چیکار کنم ..کدام dll را استفاده کنم؟
2.چگونه می تونم TAPIExCT.dll را درون برنامه قرار بدم (من قبلا اینکار را کرده بودم اما .... تا در ToolBox من اضافه شود تا شی آنرا از ToolBox در برنامه قرار بدم) ؟ تا دیگر برای اجرا خروجی در سیستم مشتری لازم به نصب TAPIEx_Setup.exe نباشد؟؟؟
3.برای اینکه خروجی برنامه را بر روی سیستم مشتری نصب کنم چه اقداماتی باید انجام دهم که فایل tapiex را بشناسد یا خطای کرک ندهد(چون به من خطا می دهد و برنامه اجرا نمی شود) ؟ چون من فقط خروج Debug را برای مشتری کپی کردم و خطای زیر می دهد.(آیا لازم است در سیستم مشتری TAPIEx_Setup.exe نصب کردد و آیا راهی هست که لازم به نصب TAPIEx_Setup.exe در سیستم مشتری نباشد؟؟؟؟)
تذکر : .net برنامه را به 3.5 تبدیل کردم.
با تشکر
آخرین ویرایش به وسیله jojoba2010 : پنج شنبه 09 خرداد 1392 در 10:39 صبح
دوستانی که جواب گرفتن البته منظورم به غیر از CallerID هست لطف کنن اسم و مدل مودمشونو بنویسن من 5 تا موذم تست کردم جواب نداد
من هم هر مودمی امتحان کردم کار نکرد !
فایل Dll مربوط به کامپوننت برای دوستانی که در پچ کردن دچار مشکل شدن
فقط کافیه 2 فایل زیر رو در ویندوز رجیستر کنید.
RUN> regsvr32 dllname.dll
سلام jasper عزیز
از تاپیک خوبی که ایجاد کردی ممنون
من برنامه شما رو تست کردم و همهجوره کار می کرد ولی من میخوام مثلا یه منویی ایجاد کنم که دوتا گزینه داره بعد داخل اون دوباره چند تا گزینه داره.
اومدم برنامه رو داخل یه حلقه while نوشتم داخل تابع tp_OnDTMF . که صبر کنه تا کلیدی فضار داده بشه ولی از حلقه بیرون نمیاد که کلید رو تشخیص بده.
به نظر شما باید چیکار کنم.
من پروژه رو ضمیمه کردم
با تشکر
IVRSystem[HB]X2
سلام دباره
ببینید سناریو به این صورته که:
وقتی فایل صوتی تونو اجرا میکنین منتظر رویداد OnDTMF میشین
این رویداد وقتی اجرا میشه که تماس گیرنده کلیدی شامل اعداد ، * و یا # رو فشار بده که در اون صورت میتونین با یه switch اونو تشخیص بدین و کد مربوطه رو اجرا کنین.
یه نمونه میزارم براتون
من از ارگومان KeyCode استفاده کردم که مقدار اسکی رو بر میگردونه من 48 رو ازش کم کردم که در این صورت # میشه 13- و * میشه 6-
شما میتونین مستقیم اونو به Char کانورت کنین و به switch بفرستین.
این قسمت از کدتون ایراد داره، البته من تست نکردم اما طبق چیزی که از گذشته یادم مونده این ارگومان اسکیه
if (KeyCode == '1') m_Call.PlaybackFile(Application.StartupPath + "\\sounds\\Menu_11.wav");
menu برای من نشون دهنده اینه که ایا یه عدد رو بار اوله فشار میدم یا دوم که معرف سطح منوی منه در ابتدا در مکان صفر هستم یعنی 0=menu مثلا اینجا اگه عدد 1 رو فشار بدم یعنی وارد زیر منوی منوی 1 شدم و فایل greeting.wav برام پخش میشه و 1=menu میشه واگر مجددا 1 رو فشار بدم با توجه به کد فایل menu1-1.wav برام پخش میشه که به همراه اون و یا منحصرا هر کد دیگه ای اجرا بشه. باقی منو ها هم به همین صورت...
نمونه :
void tp_OnDTMF(ITAPICall m_Call, int KeyCode, TAPI_DIGITMODE DigitMode, int TickCount)
{
switch (KeyCode - 48)
{
case -13:
case 0:
if ((KeyCode - 48) == 0)
{
cRecordPath = Application.StartupPath + "\\Records\\"+"User"+ (maxKey).ToString() + ".wav";
m_Call.StopPlayBack();
m_Call.Record(cRecordPath);
}
else
{
lstLog.Items.Add("Set Case #");
m_Call.StopRecord();
if (menu==1)
{
menu = 0;
}
}
break;
case 1:
if (menu==0)
{
m_Call.StopPlayBack();
m_Call.PlaybackFile(Application.StartupPath + @"\Sounds\greeting.wav");
menu = 1;
}
else if(menu==1)
{
m_Call.StopPlayBack();
m_Call.PlaybackFile(Application.StartupPath + @"\Sounds\menu1-1.wav");
}
break;
case -6:
menu = 0;
break;
}
}
سلام دوستان
ممنون jasper جان مشکلم خیلی وقت پیش حل شد ولی مشکلات دیگه ای دارم.
اکثر امکانات سورس کار می کنند ولی من چند تا مشکل دارم.
1 - وقتی برنامه رو اجرا می کنم و به اون تماس می گیرم همه چیز به خوبی اجرا میشه ولی وقتی تماس رو قطع می کنم به تابع tp_OnDisConnected نمیره (یعنی نمی فهمه تماس قطع شده!)
2 - من اگر بخوام از توابعی به جز توابع , ()tp_OnDTMF(), tp_OnDisConnected , tp_OnConnected , tp_OnNewCall , tp_OnRing دستور پخش فایل صوتی و یا دستور قطع تماس رو بدیم باید چه جوری این کار رو انجام دهیم؟
3- دیر وارد تابع tp_OnRing میره!!
4 - چه طور میشه کاری کرد که در حین پخش اگر کلیدی زده شد هم بفهمه (در این سورسی که وجود داره تا پخش تمام نشده متوجه نمیشه)
من سورس خودم هم قرار دادم:
IVRSystem[HB]X2
آخرین ویرایش به وسیله sadeghjun : جمعه 11 مرداد 1392 در 23:34 عصر
سلام دوستان برای من این ارور رو میده با اینکه کرکش کردم
Retrieving the COM class factory for component with CLSID {256DE321-02F0-4238-8116-2A40E62DDBFE} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
hrs.1989 عزیز من 2 تا فایل کرک شده رو در پست های قبل قرار دادم اونارو دانلود کرده رجستر کنین. مشکلتون حل میشه..