Generic Advice of Charge.
authorRichard Mudgett <rmudgett@digium.com>
Wed, 2 Jun 2010 18:10:15 +0000 (18:10 +0000)
committerRichard Mudgett <rmudgett@digium.com>
Wed, 2 Jun 2010 18:10:15 +0000 (18:10 +0000)
commitafd4454c4446ee1889616d09541171fc6355bbf7
tree985bf496a795d25e80f0f4948c0f68cbadb0f7ac
parent266db9fa8c43f9e3c8c55e2f5bd44e432a7b91ee
Generic Advice of Charge.

Asterisk Generic AOC Representation
- Generic AOC encode/decode routines.
  (Generic AOC must be encoded to be passed on the wire in the AST_CONTROL_AOC frame)
- AST_CONTROL_AOC frame type to represent generic encoded AOC data
- Manager events for AOC-S, AOC-D, and AOC-E messages

Asterisk App Support
- app_dial AOC-S pass-through support on call setup
- app_queue AOC-S pass-through support on call setup

AOC Unit Tests
- AOC Unit Tests for encode/decode routines
- AOC Unit Test for manager event representation.

SIP AOC Support
- Pass-through of generic AOC-D and AOC-E messages to snom phones via the
  snom AOC specification.
- Creation of chan_sip page3 flags for the addition of the new
  'snom_aoc_enabled' sip.conf option.

IAX AOC Support
- Natively supports AOC pass-through through the use of the new
  AST_CONTROL_AOC frame type

DAHDI AOC Support
- ETSI PRI full AOC Pass-through support
- 'aoc_enable' chan_dahdi.conf option for independently enabling
  pass-through of AOC-S, AOC-D, AOC-E.
- 'aoce_delayhangup' option for retrieving AOC-E on disconnect.
- DAHDI A() dial string option for requesting AOC services.
  example usage:
  ;requests AOC-S, AOC-D, and AOC-E on call setup
  exten=>1111,1,Dial(DAHDI/g1/1112/A(s,d,e))

Review: https://reviewboard.asterisk.org/r/552/

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@267096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
19 files changed:
apps/app_dial.c
apps/app_queue.c
channels/chan_dahdi.c
channels/chan_sip.c
channels/sig_pri.c
channels/sig_pri.h
channels/sip/include/sip.h
configs/chan_dahdi.conf.sample
configs/manager.conf.sample
configs/sip.conf.sample
doc/advice_of_charge.txt [new file with mode: 0644]
include/asterisk/aoc.h [new file with mode: 0644]
include/asterisk/frame.h
main/aoc.c [new file with mode: 0644]
main/asterisk.c
main/channel.c
main/features.c
main/manager.c
tests/test_aoc.c [new file with mode: 0644]