This changeset is intended to address compatibility issues encountered
when interfacing Asterisk to electromechanical telephone switches that
implement ANI-B, ANI-C, or ANI-D.
In particular the behaviours that this impacts include:
- FGC-CAMA did not work at all when using MF signaling. Modified the
switch case block to send calls to the correct part of the
signaling-handling state machine.
- For FGC-CAMA operation, the delay between called number ST and
second wink for ANI spill has been made configurable; previously
all calls were made to wait for one full second.
- After the ANI spill, previous behavior was to require a 'ST' tone
to advance the call. This has been changed to allow 'STP' 'ST2P'
or 'ST3P' as well, for compatibility with ANI-D.
- Store ANI2 (ANI INFO) digits in the CALLERID(ANI2) channel variable.
- For calls with an ANI failure, No. 1 Crossbar switches will send
forward a single-digit failure code, with no calling number digits
and no ST pulse to terminate the spill. I've made the ANI timeout
configurable so to reduce dead air time on calls with ANI fail.
- ANI info digits configurable. Modern digital switches will send 2
digits, but ANI-B sends only a single info digit. This caused the
ANI reported by Asterisk to be misaligned.
- Changed a confusing log message to be more informative.
ASTERISK-29518
Change-Id: Ib7e27d987aee4ed9bc3663c57ef413e21b404256
ast_log(LOG_WARNING,"Got a non-E911/FGC CAMA input on channel %d. Assuming E&M Wink instead\n",p->channel);
ast_log(LOG_WARNING,"A KP was expected to start signaling for Feature Group C CAMA-MF, but we got something else. Received: %s on channel %d\n",exten,p->channel);
ast_log(LOG_WARNING,"Got a non-Feature Group B input on channel %d. Assuming E&M Wink instead\n",p->channel);
ast_log(LOG_WARNING,"A KP was expected to start signaling for Feature Group B, but we got something else. Received: %s on channel %d\n",exten,p->channel);