این پست رو تقدیم می کنم به همه راکرها مخصوصا به هادیپاکزاد و مرگ باشکوهش.
سلام
من تونستم که با کامپیوتر با کدهای DTMF کار کنم. تجربه باحالی بود.
به خاطر این پست:
http://forum.ubuntu.ir/index.php/topic,132851.msg1066061.html#msg1066061 گفتم شاید هنوزم کسی بخواهد که یک تلفن گویا با کامپیوتر یا راسپری یا... انجام بده. یا از راه دور با موبایل و خط تلفن کامپیوتر یا چیزهای دیگه ای رو کنترل کنه ...
قبل از شروع چند تا نکته را بگم:
قلب تپنده ی این کار یک نرم افزاری است به اسم multimon-ng که آرچ بیس ها می تونند از مخازن blackarch دانلود کنند. این نرم افزار کدهای زیادی را می تونه دیکد(یا به قول مخابراتی ها دمدولار) کنه که دو تا از معروف هاش DTMF و CW (مورس) هست. این نرم افزار به میکروفون گوش می ده و هر کدی را که شناسایی کنه را چاپ می کنه.
چون این کار با پورت های کامپیوتر کار می کنه ، هم به خاطر اشغال شدن پورت ها و هم به خاطر جلوگیری از آسیب های احتمالی من ار یک کارت صدا اکسترنال استفاده کردم. و توصیه می کنم که شما هم استفاده کنید.
اگر چندتا پورت ورودی/خروجی دارید برای تنظیم اش شاید به نرم افزار pavucontrol نیاز پیدا کنید.
من این پروژه را مدتی انجام دادم و هیچ دستگاهی هم آسیب ندید. ولی هیچ چیزی را ضمانت نمی کنم. با ریسک خودتان انجام دهید.
طرح کار:
باید پورت میکروفون و بلندگو رو به خط تلفن وصل کنیم سپس نرم افزار را اجرا می کنیم و متناسب با هر کدی یک دستور اجرا می شه و اگر یک فایل صوتی را پخش کنیم. صدا وارد خط تلفن می شود و مخاطب (کاربر) این صدا و پیام را می شنوه و اینطوری با مخاطب تعامل داره.
شروع:
ابتدا باید یک مدار ساده بسازید. و فقط کافیه که یک خازن (۳۳۰۰ میکروفاراد) رو به یک مقاومت(۱۰۰ کیلو) وصل کنید! همین.
نقشه مدار:
https://gitlab.com/underground_communication/DTMF/blob/master/Diagram1.jpegاگر از الکترونیک هیچی نمی دونید باید بگم که پورت بلندگو رو مستفیم می زنید به خط تلفن. و یکی از سیم های پورت میکروفون رو هم مستفیم می زنید به خط تلفن و اون سیم دیگه رو به خازن-مقاومت و در آخر به خط تلفن وصل می کنید.
نکته: خودمم نمی دونم چرا باید خازن رو با مقاومت سری کرد (معمولا این کار باعث ایجاد فیلتر پاسیو نمی شه؟!-کسی می دونه بگه). وبدون اینها هم تاجایی که من دیدم کار می کنه ولی توی یک مداری که ۱۳ سال پیش بستم برای اتصال میکروفون ضبط صوت به خط تلفن بهمون می گفتند که همینطوری باید استفاده کنیم. البته شایدم به خاطر گذشت زمان اشتباه کرده باشم.
بعد از این که مدار را ساختید و به خط تلفن و پورت میکروفون/بلندگو وصل کردید. نرم افزار multimon-ng را اجرا کنید
multimon-ng -a DTMF
تموم شد!
بقیه اش دیگه یک خورده اسکریپت نویسی هست.
برای این قسمت هم یک اسکریپت خیلی ساده برای نشان دادن قابلیت هاش نوشتم که از آدرس زیر می تونید بگیرید.
https://gitlab.com/underground_communication/DTMFیک فیلم کوجیک هم برای نمایش کار درست کردم که پایین می تونید بگیرید(حجم ۴ مگابایت)
https://gitlab.com/underground_communication/DTMF/blob/master/demo.mp4در مورد فیلم بگم که اون نویزی که وسط فیلم هست به خاطر بلندگو ها و مشکلات اکو و اینجور چیزهاست و در عمل این جور نویز ها وجود نداره.
و این که مجبور نیستید که حتما یک «تماس تلفنی» با کسی برقرار کنید به راحتی می شه تلفن خونتون رو بردارید و کد رو به کامپیوترتون توی اتاق بغلی بفرستید!
برای اینکه این پروژه تبدیل به یک تلفن واقعی بشه باید یک ترانزیستور اون وسط گذاشت که کار قطع و وصل تماس رو هم انجام بده
اگر کسی چیز بیشتری خواست یا سوالی بود بگه