در بسیاری از سرورهای استریسک (جز آن ها که از خطوط PRI استفاده می کنند) در کشورما امکان تشخیص زمان جواب دادن تلفن توسط مخاطب وجود ندارد. به طور واضح تر زمانی که سرور شما اقدام به شماره گیری می کند بلافاصله که تلفن مخاطب شروع به زنگ زدن می کند حالت تماس به صورت پاسخ داده شده Answered در می آید. البته برای بسیاری این مشکل چندان اهمیتی ندارد اما برای کسانی که با استفاده از سرورهای استریسک پیام صوتی می فرستند این مشکل حیاتی است. چرا؟
چون که پیام بلافاصله پس از شروع به زنگ خوردن گوشی شروع به پخش می کند و مخاطب از میانه پیام را می شنود و عملا کار را بلا استفاده می کند. برای راه حل ما به شما استفاده از امکان BackgroundDetect را پیشنهاد می کنیم.
تغییرات زیر را اعمال کنید:
Channel: SIP/gw/XXXXXXXX
Context: outbound
Extension: answer_monitor
Priority:1

exten => answer_monitor,n,BackgroundDetect(silence/10,1000,50,4000)
exten => answer_monitor,n,noop(‘machine’)

exten => talk,1,noop(‘human’)

با این دستور دستگاه ده ثانیه منتظر یک صدای ورودی می شود با شنیدن آن به دستور تاک می رود و در آن جا سناریو شما را انجام خواهد داد. به این ترتیب مشکل حل است.
اگر برای حل این مشکل به برنامه نویسی احتیاج داشتید با من تماس بگیرید!