اكتشف المكالمة الواردة مع النجمة ومن ستذهب المكالمة

StackOverflow https://stackoverflow.com/questions/2375885

  •  24-09-2019
  •  | 
  •  

سؤال

أقوم حاليًا بكتابة خدمة Windows التي تستخدم AMI AMI لاكتشافها عند إجراء مكالمة ثم إجراء طلب ويب بناءً على من هو المكالمة ومن ستذهب. هل يعرف أي شخص حدث في العلامة النجمية التي يمكنني الاستماع إليها تتضمن كل من هذه التفاصيل؟ أحتاج إلى عدد الشخص خارج النظام الذي يتصل ولكن أي شيء يمكنني استخدامه لتحديد رقم الهاتف الداخلي الذي يتم استدعاؤه سيكون جيدًا ، طالما أنه يمكن استخدامه خارج النجمة.

كنت أنظر إلى الأحداث ولديهم جميعًا عدد المتصل الخارجي عليها ، ومع ذلك لا يرتبط أي منهم بالمتصل الداخلي بخلاف المعدل الذي لا إلا إذا قمت ببناء قاموس من هذه الخدمة في الخدمة لن أتمكن من ذلك استعمال.

هل كانت مفيدة؟

المحلول

لذلك في النهاية تمكنت من القيام بذلك من خلال استخدام AMI فقط والاستماع إلى أحداث الاتصال. مع ما أردنا الوصول إليه ، استمعت إلى أحداث NewChannel ، وأحداث الاتصال وأحداث Hangup ، على الرغم من أنه إذا كان كل ما تتبعه هو عدد من يتصل وعدد من يتصلون ، فأنا متأكد من أنك يمكن أن تفلت من المراقبة فقط أحداث الاتصال.

في كل مرة تم استلام حدث NewChannel ، قمت بإنشاء كائن قناة وأضفته إلى قائمة القنوات التي كانت حاليًا على خادم العلامة النجمية. بعد ذلك ، من خلال الاستماع إلى أحداث الاتصال الهاتفي مع الجدير الفرعي لـ BEGIN ، تمكنت من استخراج معرف القناة الفريد لكلا الطرفين المشاركين في المكالمة ثم الحصول على الأرقام المعنية. عندما تم استلام حدث تعليق ، قمت بإزالة القناة التي تم تدميرها. يبدو أن هذا يعمل بشكل رائع في الوقت الحالي على الرغم من أننا لم يكن لدينا بدوام كامل لاختباره ، ونأمل أن يكون هذا صحيحًا.

نصائح أخرى

لدي فكرة ولكن ربما لا تحب الإجابة :)

حاولنا أن نفعل هذا وفشلنا لذلك فعلنا شيئًا شريرًا :)

ما فعلناه هو كتابة البرامج النصية AGI واتصلوا بها باستخدام واجهة المدير ثم كشط سطر الأوامر.

أشياء مثل Core Show Channels موجزة وما إلى ذلك ، إنها ikky لكنها تعمل .. استخدمنا Regex لتحليل إخراج السلسلة ثم أمسكوا بالمعلومات من هناك ، وهي المشكلة الوحيدة في القيام بأشياء من هذا القبيل هي أنه يتعين عليك مشاهدتها في كل مرة تقوم فيها بالتصحيح مثل يميل الإخراج من سطر الأوامر إلى تغيير التصحيح إلى التصحيح.

إذا اكتشفت طريقة للقيام بذلك باستخدام C# API وعدم استخدام Agi ، فسأكون مهتمًا جدًا ولكننا لم نتمكن من فعل ما أردنا مع واجهة برمجة التطبيقات دون اللجوء إلى نصوص AGI في النهاية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top