# Asterisk Project : Asterisk 13 Application_ExtenSpy

Created by wikibot on Aug 08, 2014

# ExtenSpy()

### Synopsis

Listen to a channel, and optionally whisper into it.

### Description

This application is used to listen to the audio from an Asterisk channel. This includes the audio coming in and out of the channel being spied on. Only channels created by outgoing calls for the specified extension will be selected for spying. If the optional context is not supplied, the current channel's context will be used.

While spying, the following actions may be performed:

- Dialing `#` cycles the volume level.

- Dialing `*` will stop spying and look for another channel to spy on.

Note

Icon

The X option supersedes the three features above in that if a valid single digit extension exists in the correct context ChanSpy will exit to it. This also disables choosing a channel based on `chanprefix` and a digit sequence.

### Syntax

    ExtenSpy(exten@[context],[options])

##### Arguments

- `exten`
  - `exten` - Specify extension.
  - `context` - Optionally specify a context, defaults to `default`.
- `options`
  - `b` - Only spy on channels involved in a bridged call.
  - `B` - Instead of whispering on a single channel barge in on both channels involved in the call.
  - `c`
    - `digit` - Specify a DTMF digit that can be used to spy on the next available channel.
  - `d` - Override the typical numeric DTMF functionality and instead use DTMF to switch between spy modes.
    - `4` - spy mode
    - `5` - whisper mode
    - `6` - barge mode
  - `e` - Enable enforced mode, so the spying channel can only monitor extensions whose name is in the ext : delimited list.
    - `ext`
  - `E` - Exit when the spied-on channel hangs up.
  - `g`
    - `grp` - Only spy on channels in which one or more of the groups listed in grp matches one or more groups from the `SPYGROUP` variable set on the channel to be spied upon.
  - `n` - Say the name of the person being spied on if that person has recorded his/her name. If a context is specified, then that voicemail context will be searched when retrieving the name, otherwise the `default` context be used when searching for the name (i.e. if SIP/1000 is the channel being spied on and no mailbox is specified, then `1000` will be used when searching for the name).
    - `mailbox`
    - `context`
  - `o` - Only listen to audio coming from this channel.
  - `q` - Don't play a beep when beginning to spy on a channel, or speak the selected channel name.
  - `r` - Record the session to the monitor spool directory. An optional base for the filename may be specified. The default is `chanspy`.
    - `basename`
  - `s` - Skip the playback of the channel type (i.e. SIP, IAX, etc) when speaking the selected channel name.
  - `S` - Stop when there are no more extensions left to spy on.
  - `v` - Adjust the initial volume in the range from `-4` to `4`. A negative value refers to a quieter setting.
    - `value`
  - `w` - Enable `whisper` mode, so the spying channel can talk to the spied-on channel.
  - `W` - Enable `private whisper` mode, so the spying channel can talk to the spied-on channel but cannot listen to that channel.
  - `x`
    - `digit` - Specify a DTMF digit that can be used to exit the application while actively spying on a channel. If there is no channel being spied on, the DTMF digit will be ignored.
  - `X` - Allow the user to exit ChanSpy to a valid single digit numeric extension in the current context or the context specified by the `SPY_EXIT_CONTEXT` channel variable. The name of the last channel that was spied on will be stored in the `SPY_CHANNEL` variable.

### See Also

- Asterisk 13 Application_ChanSpy
- Asterisk 13 ManagerEvent_ChanSpyStart
- Asterisk 13 ManagerEvent_ChanSpyStop

### Import Version

This documentation was imported from Asterisk Version SVN-branch-13-r420538