البحث عن ترددات DTMF لأزرار الهاتف
تمثل نغمة DTMF زر الهاتف بتشغيل ترددين في الوقت نفسه: أحدهما من صف الترددات المنخفضة والآخر من عمود الترددات المرتفعة.
شغّل الأداة مجانًا
أدخلوا أي رقم من 0 إلى 9، أو علامة النجمة، أو علامة المربع، لتحصلوا على الزوج القياسي الدقيق بوحدة الهرتز. يجري البحث فورًا وبنتيجة ثابتة، ولذلك يفيد في فحص برمجيات الاتصالات ومولدات النغمات وأجهزة فك الترميز والوثائق وبيانات الاختبار من دون الرجوع يدويًا إلى مصفوفة لوحة المفاتيح.
كيف يتحول زر واحد إلى ترددين
يرتب نظام الإشارات متعددة الترددات ثنائية النغمة، المعروف اختصارًا باسم DTMF، لوحة مفاتيح الهاتف على هيئة مصفوفة ترددات. لكل صف أفقي تردد منخفض، ولكل عمود رأسي تردد مرتفع. عند الضغط على زر، يُجمع تردد صفه مع تردد عموده ليحصل ذلك الموضع على زوج مميز. فعلى سبيل المثال، تشترك الأزرار 1 و2 و3 في التردد المنخفض نفسه، لكنها تستخدم ترددات مرتفعة مختلفة. تعيد أداة البحث كلا المكونين بصورة منفصلة، كما تعيدهما في زوج مرتب يبدأ بالتردد المنخفض. يلائم هذا الشكل من يقرأ مواصفة فنية، وكذلك البرامج التي تهيئ مذبذبًا أو كاشفًا أو شرطًا ضمن اختبار. تعرض النتيجة الترددات بوحدة الهرتز؛ ولا تنشئ ملفًا صوتيًا، ولا تقدر مدة النغمة، ولا تحلل تسجيلًا. ولأن الجدول محدد وفق مخطط لوحة DTMF الشائع، فإن الزر المقبول نفسه يعطي النتيجة نفسها دائمًا، من دون تقريب أو اتصال بالشبكة أو حساب يعتمد على الجهاز المستخدم.
المحارف المقبولة من لوحة الهاتف
يجب أن يتكون الإدخال من محرف واحد فقط موجود في لوحة هاتف قياسية ذات 12 زرًا: رقم من 0 إلى 9، أو علامة النجمة، أو علامة المربع. يُعامل المحرف كما هو حرفيًا، ولذلك ينبغي إرسال الرقم كنص عند استدعاء API. تؤدي المسافات والكلمات والسلاسل متعددة المحارف والإشارات السالبة وأي علامات ترقيم غير رمزي اللوحة إلى خطأ في الإدخال. تصف بعض مواصفات DTMF التقنية أيضًا عمودًا رابعًا يضم أزرار التحكم A وB وC وD. استُخدمت هذه الأزرار في معدات عسكرية وأنظمة متخصصة للتحكم في الشبكات، لكنها غير موجودة في لوحة الهاتف القياسية التي تغطيها هذه الإمكانية؛ لذا تُرفض عمدًا. يمنع حصر القيم المقبولة افتراض تصميم مختلف عن المقصود. عند إنشاء نموذج، يمكنكم عرض الخيارات المعلنة في قائمة اختيار. أما عند الدمج برمجيًا، فتحققوا من الزر المطلوب أو حولوه صراحة إلى نص قبل الإرسال، بدل الاعتماد على تحويل رقمي تلقائي قد يغير نوع القيمة.
استخدام النتيجة في أعمال الاتصالات الهاتفية
يصلح الترددان المنخفض والمرتفع المعادان كبيانات مرجعية كلما احتاج برنامج إلى التوافق مع لوحة مفاتيح الهاتف. يستطيع مولد النغمات استعمال الزوج لتهيئة مذبذبين قبل تطبيق إعداداته الخاصة بالسعة ومعدل أخذ العينات والمدة. ويمكن لاختبار جهاز فك الترميز أن يربط زوجًا معلومًا بالزر الذي ينبغي التعرف عليه. كما تستطيع فرق ضمان الجودة تحويل الاستجابة إلى بيانات اختبار ثابتة لقوائم الاستجابة الصوتية التفاعلية وبرامج الاتصال والهواتف البرمجية والبوابات والأجهزة المضمنة. ويساعد البحث أيضًا في تفسير التباس الأزرار المتجاورة على الكاشف؛ إذ تشترك أزرار الصف الواحد في المكون المنخفض، بينما تشترك أزرار العمود الواحد في المكون المرتفع. لا تقيس هذه الإمكانية فرق المستويات أو السماحية أو الإيقاع أو شدة الإشارة، ولا تحكم على مطابقة صوت مسجل لمعيار اتصالات؛ فهذه المسائل تتطلب قياسات من إشارة حقيقية. إنها تقدم هوية التردد الاسمية فقط. يمكنكم تشغيلها في المتصفح لفحص عارض، أو استدعاء API مقابل $0.002 لكل طلب حين يحتاج سير العمل إلى استجابة JSON صغيرة ومتوقعة.
حالات الاستخدام
تهيئة مولد نغمات DTMF
احصلوا على الترددين الاسميين المنخفض والمرتفع للمذبذبين من أجل الزر الذي يحتاج تطبيقكم إلى إرساله.
إعداد بيانات اختبار لأجهزة فك الترميز
أنشئوا قيمًا متوقعة واضحة تربط محرف لوحة الهاتف بزوج الترددات القياسي الخاص به.
مراجعة وثائق الاتصالات الهاتفية
أكدوا زوج الترددات عند مراجعة مسارات IVR أو برامج الاتصال أو إعدادات البوابات أو الملاحظات التقنية.
الأسئلة الشائعة
ما المحارف التي يمكنكم إدخالها؟
أدخلوا محرفًا واحدًا بالضبط: رقمًا من 0 إلى 9، أو علامة النجمة، أو علامة المربع.
لماذا تُرفض أزرار DTMF المسماة A وB وC وD؟
تنتمي هذه الأزرار إلى عمود DTMF رابع متخصص، وهي غير موجودة في لوحة الهاتف القياسية ذات 12 زرًا التي تغطيها هذه الأداة.
هل تنشئ هذه الأداة نغمة مسموعة؟
لا. إنها تعيد زوج الترددات الاسمي في صورة بيانات، ولا تنشئ صوتًا أو تشغله أو تتيح تنزيله.
هل يمكنها تحليل تسجيل لنغمات لوحة الهاتف؟
لا. يتطلب تحليل الصوت جهاز فك ترميز يقيس ترددات الإشارة. تبحث هذه الإمكانية فقط عن زوج ترددات زر معلوم.
ما تكلفة طلب API؟
تبلغ تكلفة كل طلب API مقدار $0.002. ويمكن أيضًا تنفيذ البحث الثابت نفسه في متصفحكم.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/audio/dtmf-tone-lookup \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"key":"5"}'const res = await fetch("https://api.kit.forhosting.com/audio/dtmf-tone-lookup", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"key": "5"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/dtmf-tone-lookup",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"key": "5"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/dtmf-tone-lookup", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"key":"5"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"key":"5"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/dtmf-tone-lookup", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"key": "5"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.dtmf_tone_lookup",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_mb | 200 |
max_minutes | 180 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |