I have been having issues where a DID assigned to an extension(user) is getting sent to the "any DID/ Any CID" Route. It is doing this because it is detecting "talking" and sending the call to the "talk" context, instead of sending it to the next line in the current context. This causes the call to ring to the front desk, even though the person is calling someone;s DID. THis has caused greatissues with a few of my clients. I have this fix runnign on 5 servers, and everything is running perfectly with this. I found these notes that halped me figure out the reason.
I was doing a bit of research on the NXFaxdetect application and I found this:
YOU ARE FINISHED IF YOU SEE A CLI MESSAGE SAYING:
This application listens for fax tones (on IAX and SIP channels too)
for waitdur seconds of time. In addition, it can be interrupted by digits,
or non-silence. Audio is only monitored in the receive direction. If
digits interrupt, they must be the start of a valid extension unless the
option is included to ignore. If fax is detected, it will jump to the
'fax' extension. If a period of non-silence greater than 'mindur' ms,
yet less than 'maxdur' ms is followed by silence at least 'sildur' ms
then the app is aborted and processing jumps to the 'talk' extension.
If all undetected, control will continue at the next priority.
waitdur: Maximum number of seconds to wait (default=4)
IF YOU LOOK AT IT THERE ARE 3 DESTINATIONS.......................
If fax is detected, go to "Fax" context
If it hears talking, go to the "talk" Context
And if it detects nothing, it will continue to the next line in the current context. By adding the |t to the detection, it will disable the listening for talk, so it will not send the call to the "talk" extension (which by the way is the main default Incoming DID/CID) for us anyway..
I got a sample patch from Phillipel, but changed it around toinclude the proper "|" signal. it follows:
Index: functions.inc.php
===================================================================
--- functions.inc.php (revision 5765)
+++ functions.inc.php (working copy)
@@ -791,7 +791,7 @@
if ($item['answer'] == "2") { // NVFaxDetect
$ext->add($context, $exten, '', new ext_answer(''));
$ext->add($context, $exten, '', new ext_playtones('ring'));
- $ext->add($context, $exten, '', new ext_nvfaxdetect($item['wait']));
+ $ext->add($context, $exten, '', new ext_nvfaxdetect($item['wait']."|t"));
}
if ($item['privacyman'] == "1") {
$ext->add($context, $exten, '', new ext_macro('privacy-mgr'));