Implementation of Inter-Asterisk eXchange, version 2 parser.c parser.h chan_iax2.c.
More...
Go to the source code of this file.
|
enum | iax_frame_subclass {
IAX_COMMAND_NEW = 1
, IAX_COMMAND_PING = 2
, IAX_COMMAND_PONG = 3
, IAX_COMMAND_ACK = 4
,
IAX_COMMAND_HANGUP = 5
, IAX_COMMAND_REJECT = 6
, IAX_COMMAND_ACCEPT = 7
, IAX_COMMAND_AUTHREQ = 8
,
IAX_COMMAND_AUTHREP = 9
, IAX_COMMAND_INVAL = 10
, IAX_COMMAND_LAGRQ = 11
, IAX_COMMAND_LAGRP = 12
,
IAX_COMMAND_REGREQ = 13
, IAX_COMMAND_REGAUTH = 14
, IAX_COMMAND_REGACK = 15
, IAX_COMMAND_REGREJ = 16
,
IAX_COMMAND_REGREL = 17
, IAX_COMMAND_VNAK = 18
, IAX_COMMAND_DPREQ = 19
, IAX_COMMAND_DPREP = 20
,
IAX_COMMAND_DIAL = 21
, IAX_COMMAND_TXREQ = 22
, IAX_COMMAND_TXCNT = 23
, IAX_COMMAND_TXACC = 24
,
IAX_COMMAND_TXREADY = 25
, IAX_COMMAND_TXREL = 26
, IAX_COMMAND_TXREJ = 27
, IAX_COMMAND_QUELCH = 28
,
IAX_COMMAND_UNQUELCH = 29
, IAX_COMMAND_POKE = 30
, IAX_COMMAND_PAGE = 31
, IAX_COMMAND_MWI = 32
,
IAX_COMMAND_UNSUPPORT = 33
, IAX_COMMAND_TRANSFER = 34
, IAX_COMMAND_PROVISION = 35
, IAX_COMMAND_FWDOWNL = 36
,
IAX_COMMAND_FWDATA = 37
, IAX_COMMAND_TXMEDIA = 38
, IAX_COMMAND_RTKEY = 39
, IAX_COMMAND_CALLTOKEN = 40
} |
|
Implementation of Inter-Asterisk eXchange, version 2 parser.c parser.h chan_iax2.c.
Definition in file iax2.h.
◆ IAX_AUTH_MD5
#define IAX_AUTH_MD5 (1 << 1) |
◆ IAX_AUTH_PLAINTEXT
#define IAX_AUTH_PLAINTEXT (1 << 0) |
◆ IAX_AUTH_RSA
#define IAX_AUTH_RSA (1 << 2) |
◆ IAX_DEFAULT_PORTNO
#define IAX_DEFAULT_PORTNO 4569 |
◆ IAX_DEFAULT_REG_EXPIRE
#define IAX_DEFAULT_REG_EXPIRE 60 |
By default require re-registration once per minute
Definition at line 123 of file iax2.h.
◆ IAX_DPSTATUS_CANEXIST
#define IAX_DPSTATUS_CANEXIST (1 << 1) |
◆ IAX_DPSTATUS_EXISTS
#define IAX_DPSTATUS_EXISTS (1 << 0) |
◆ IAX_DPSTATUS_IGNOREPAT
#define IAX_DPSTATUS_IGNOREPAT (1 << 14) |
◆ IAX_DPSTATUS_MATCHMORE
#define IAX_DPSTATUS_MATCHMORE (1 << 15) |
◆ IAX_DPSTATUS_NONEXISTENT
#define IAX_DPSTATUS_NONEXISTENT (1 << 2) |
◆ IAX_ENCRYPT_AES128
#define IAX_ENCRYPT_AES128 (1 << 0) |
◆ IAX_ENCRYPT_KEYROTATE
#define IAX_ENCRYPT_KEYROTATE (1 << 15) |
Keyrotation support
Definition at line 202 of file iax2.h.
◆ IAX_FIRMWARE_MAGIC
#define IAX_FIRMWARE_MAGIC 0x69617879 |
◆ IAX_FLAG_FULL
#define IAX_FLAG_FULL 0x8000 |
◆ IAX_FLAG_RETRANS
#define IAX_FLAG_RETRANS 0x8000 |
◆ IAX_FLAG_SC_LOG
#define IAX_FLAG_SC_LOG 0x80 |
◆ IAX_IE_ADSICPE
#define IAX_IE_ADSICPE 12 |
CPE ADSI capability - short
Definition at line 142 of file iax2.h.
◆ IAX_IE_AESPROVISIONING
#define IAX_IE_AESPROVISIONING 30 |
AES Provisioning info
Definition at line 160 of file iax2.h.
◆ IAX_IE_APPARENT_ADDR
#define IAX_IE_APPARENT_ADDR 18 |
Apparent address of peer - struct sockaddr_in
Definition at line 148 of file iax2.h.
◆ IAX_IE_AUTHMETHODS
#define IAX_IE_AUTHMETHODS 14 |
Authentication method(s) - short
Definition at line 144 of file iax2.h.
◆ IAX_IE_AUTOANSWER
#define IAX_IE_AUTOANSWER 25 |
Request auto-answering – none
Definition at line 155 of file iax2.h.
◆ IAX_IE_CALLED_CONTEXT
#define IAX_IE_CALLED_CONTEXT 5 |
Context for number - string
Definition at line 135 of file iax2.h.
◆ IAX_IE_CALLED_NUMBER
#define IAX_IE_CALLED_NUMBER 1 |
IAX Information elements Number/extension being called - string
Definition at line 131 of file iax2.h.
◆ IAX_IE_CALLING_ANI
#define IAX_IE_CALLING_ANI 3 |
Calling number ANI for billing - string
Definition at line 133 of file iax2.h.
◆ IAX_IE_CALLING_NAME
#define IAX_IE_CALLING_NAME 4 |
Name of caller - string
Definition at line 134 of file iax2.h.
◆ IAX_IE_CALLING_NUMBER
#define IAX_IE_CALLING_NUMBER 2 |
Calling number - string
Definition at line 132 of file iax2.h.
◆ IAX_IE_CALLINGANI2
#define IAX_IE_CALLINGANI2 57 |
Calling Originating Line Information (ANI2) digits
Definition at line 190 of file iax2.h.
◆ IAX_IE_CALLINGPRES
#define IAX_IE_CALLINGPRES 38 |
Calling presentation (u8)
Definition at line 168 of file iax2.h.
◆ IAX_IE_CALLINGTNS
#define IAX_IE_CALLINGTNS 40 |
Calling transit network select (u16)
Definition at line 170 of file iax2.h.
◆ IAX_IE_CALLINGTON
#define IAX_IE_CALLINGTON 39 |
Calling type of number (u8)
Definition at line 169 of file iax2.h.
◆ IAX_IE_CALLNO
Call number of peer - short
Definition at line 151 of file iax2.h.
◆ IAX_IE_CALLTOKEN
#define IAX_IE_CALLTOKEN 54 |
Call number security token
Definition at line 185 of file iax2.h.
◆ IAX_IE_CAPABILITY
#define IAX_IE_CAPABILITY 8 |
Actual codec capability - unsigned int
Definition at line 138 of file iax2.h.
◆ IAX_IE_CAPABILITY2
#define IAX_IE_CAPABILITY2 55 |
Actual codec capability - u8 version + integer array
Definition at line 187 of file iax2.h.
◆ IAX_IE_CAUSE
Cause - string
Definition at line 152 of file iax2.h.
◆ IAX_IE_CAUSECODE
#define IAX_IE_CAUSECODE 42 |
Hangup cause (u8)
Definition at line 172 of file iax2.h.
◆ IAX_IE_CHALLENGE
#define IAX_IE_CHALLENGE 15 |
Challenge data for MD5/RSA - string
Definition at line 145 of file iax2.h.
◆ IAX_IE_CODEC_PREFS
#define IAX_IE_CODEC_PREFS 45 |
Codec Negotiation
Definition at line 175 of file iax2.h.
◆ IAX_IE_DATETIME
#define IAX_IE_DATETIME 31 |
Date/Time
Definition at line 161 of file iax2.h.
◆ IAX_IE_DEVICETYPE
#define IAX_IE_DEVICETYPE 32 |
Device Type – string
Definition at line 162 of file iax2.h.
◆ IAX_IE_DNID
Originally dialed DNID - string
Definition at line 143 of file iax2.h.
◆ IAX_IE_DPSTATUS
#define IAX_IE_DPSTATUS 20 |
Dialplan status - short
Definition at line 150 of file iax2.h.
◆ IAX_IE_ENCKEY
Encryption key (raw)
Definition at line 174 of file iax2.h.
◆ IAX_IE_ENCRYPTION
#define IAX_IE_ENCRYPTION 43 |
Encryption format (u16)
Definition at line 173 of file iax2.h.
◆ IAX_IE_FIRMWAREVER
#define IAX_IE_FIRMWAREVER 34 |
Firmware revision – u16
Definition at line 164 of file iax2.h.
◆ IAX_IE_FORMAT
Desired codec format - unsigned int
Definition at line 139 of file iax2.h.
◆ IAX_IE_FORMAT2
#define IAX_IE_FORMAT2 56 |
Desired codec format - u8 version + integer array
Definition at line 188 of file iax2.h.
◆ IAX_IE_FWBLOCKDATA
#define IAX_IE_FWBLOCKDATA 36 |
Firmware block of data – raw
Definition at line 166 of file iax2.h.
◆ IAX_IE_FWBLOCKDESC
#define IAX_IE_FWBLOCKDESC 35 |
Firmware block description – u32
Definition at line 165 of file iax2.h.
◆ IAX_IE_IAX_UNKNOWN
#define IAX_IE_IAX_UNKNOWN 23 |
Unknown IAX command - byte
Definition at line 153 of file iax2.h.
◆ IAX_IE_LANGUAGE
#define IAX_IE_LANGUAGE 10 |
Desired language - string
Definition at line 140 of file iax2.h.
◆ IAX_IE_MD5_RESULT
#define IAX_IE_MD5_RESULT 16 |
MD5 challenge result - string
Definition at line 146 of file iax2.h.
◆ IAX_IE_MSGCOUNT
#define IAX_IE_MSGCOUNT 24 |
How many messages waiting - short
Definition at line 154 of file iax2.h.
◆ IAX_IE_MUSICONHOLD
#define IAX_IE_MUSICONHOLD 26 |
Request musiconhold with QUELCH – none or string
Definition at line 156 of file iax2.h.
◆ IAX_IE_OSPTOKEN
#define IAX_IE_OSPTOKEN 53 |
OSP token
Definition at line 184 of file iax2.h.
◆ IAX_IE_PASSWORD
#define IAX_IE_PASSWORD 7 |
Password for authentication - string
Definition at line 137 of file iax2.h.
◆ IAX_IE_PROVISIONING
#define IAX_IE_PROVISIONING 29 |
Provisioning info
Definition at line 159 of file iax2.h.
◆ IAX_IE_PROVVER
#define IAX_IE_PROVVER 37 |
Provisioning Version (u32)
Definition at line 167 of file iax2.h.
◆ IAX_IE_RDNIS
Referring DNIS – string
Definition at line 158 of file iax2.h.
◆ IAX_IE_REFRESH
#define IAX_IE_REFRESH 19 |
When to refresh registration - short
Definition at line 149 of file iax2.h.
◆ IAX_IE_RR_DELAY
#define IAX_IE_RR_DELAY 49 |
Max playout delay for received frames (in ms) u16
Definition at line 180 of file iax2.h.
◆ IAX_IE_RR_DROPPED
#define IAX_IE_RR_DROPPED 50 |
Dropped frames (presumably by jitterbuf) u32
Definition at line 181 of file iax2.h.
◆ IAX_IE_RR_JITTER
#define IAX_IE_RR_JITTER 46 |
Received jitter (as in RFC1889) u32
Definition at line 177 of file iax2.h.
◆ IAX_IE_RR_LOSS
#define IAX_IE_RR_LOSS 47 |
Received loss (high byte loss pct, low 24 bits loss count, as in rfc1889
Definition at line 178 of file iax2.h.
◆ IAX_IE_RR_OOO
Frames received Out of Order u32
Definition at line 182 of file iax2.h.
◆ IAX_IE_RR_PKTS
#define IAX_IE_RR_PKTS 48 |
Received frames (total frames received) u32
Definition at line 179 of file iax2.h.
◆ IAX_IE_RSA_RESULT
#define IAX_IE_RSA_RESULT 17 |
RSA challenge result - string
Definition at line 147 of file iax2.h.
◆ IAX_IE_SAMPLINGRATE
#define IAX_IE_SAMPLINGRATE 41 |
Supported sampling rates (u16)
Definition at line 171 of file iax2.h.
◆ IAX_IE_SERVICEIDENT
#define IAX_IE_SERVICEIDENT 33 |
Service Identifier – string
Definition at line 163 of file iax2.h.
◆ IAX_IE_TRANSFERID
#define IAX_IE_TRANSFERID 27 |
Transfer Request Identifier – int
Definition at line 157 of file iax2.h.
◆ IAX_IE_USERNAME
#define IAX_IE_USERNAME 6 |
Username (peer or user) for authentication - string
Definition at line 136 of file iax2.h.
◆ IAX_IE_VARIABLE
#define IAX_IE_VARIABLE 52 |
Remote variables
Definition at line 183 of file iax2.h.
◆ IAX_IE_VERSION
#define IAX_IE_VERSION 11 |
Protocol version - short
Definition at line 141 of file iax2.h.
◆ IAX_LINGER_TIMEOUT
#define IAX_LINGER_TIMEOUT 10 |
How long to wait before closing bridged call
Definition at line 126 of file iax2.h.
◆ IAX_MAX_CALLS
#define IAX_MAX_CALLS 32768 |
◆ IAX_MAX_OSPBLOCK_NUM
#define IAX_MAX_OSPBLOCK_NUM 4 |
◆ IAX_MAX_OSPBLOCK_SIZE
#define IAX_MAX_OSPBLOCK_SIZE 254 |
Max OSP token block size, 255 bytes - 1 byte OSP token block index
Definition at line 192 of file iax2.h.
◆ IAX_MAX_OSPBUFF_SIZE
◆ IAX_MAX_OSPTOKEN_SIZE
◆ IAX_MAX_SHIFT
#define IAX_MAX_SHIFT 0x3F |
◆ IAX_META_TRUNK
Trunk meta-message
Definition at line 204 of file iax2.h.
◆ IAX_META_TRUNK_MINI
#define IAX_META_TRUNK_MINI 1 |
This trunk frame contains trunked mini frames
Definition at line 208 of file iax2.h.
◆ IAX_META_TRUNK_SUPERMINI
#define IAX_META_TRUNK_SUPERMINI 0 |
This trunk frame contains classic supermini frames
Definition at line 207 of file iax2.h.
◆ IAX_META_VIDEO
Video frame
Definition at line 205 of file iax2.h.
◆ IAX_PROTO_VERSION
#define IAX_PROTO_VERSION 2 |
◆ IAX_RATE_11KHZ
#define IAX_RATE_11KHZ (1 << 1) |
11.025khz sampling
Definition at line 211 of file iax2.h.
◆ IAX_RATE_16KHZ
#define IAX_RATE_16KHZ (1 << 2) |
16khz sampling
Definition at line 212 of file iax2.h.
◆ IAX_RATE_22KHZ
#define IAX_RATE_22KHZ (1 << 3) |
22.05khz sampling
Definition at line 213 of file iax2.h.
◆ IAX_RATE_44KHZ
#define IAX_RATE_44KHZ (1 << 4) |
44.1khz sampling
Definition at line 214 of file iax2.h.
◆ IAX_RATE_48KHZ
#define IAX_RATE_48KHZ (1 << 5) |
48khz sampling
Definition at line 215 of file iax2.h.
◆ IAX_RATE_8KHZ
#define IAX_RATE_8KHZ (1 << 0) |
8khz sampling (default if absent)
Definition at line 210 of file iax2.h.
◆ IAX_WINDOW
◆ iax2_format
iax2 format bit field for handling codecs the old way
Definition at line 224 of file iax2.h.
◆ iax_frame_subclass
Subclass for AST_FRAME_IAX
Enumerator |
---|
IAX_COMMAND_NEW | |
IAX_COMMAND_PING | |
IAX_COMMAND_PONG | |
IAX_COMMAND_ACK | |
IAX_COMMAND_HANGUP | |
IAX_COMMAND_REJECT | |
IAX_COMMAND_ACCEPT | |
IAX_COMMAND_AUTHREQ | |
IAX_COMMAND_AUTHREP | |
IAX_COMMAND_INVAL | |
IAX_COMMAND_LAGRQ | |
IAX_COMMAND_LAGRP | |
IAX_COMMAND_REGREQ | Registration request
|
IAX_COMMAND_REGAUTH | Registration authentication required
|
IAX_COMMAND_REGACK | Registration accepted
|
IAX_COMMAND_REGREJ | Registration rejected
|
IAX_COMMAND_REGREL | Force release of registration
|
IAX_COMMAND_VNAK | If we receive voice before valid first voice frame, send this
|
IAX_COMMAND_DPREQ | Request status of a dialplan entry
|
IAX_COMMAND_DPREP | Status reply of a dialplan entry status request
|
IAX_COMMAND_DIAL | Request a dial on channel brought up TBD
|
IAX_COMMAND_TXREQ | Transfer Request
|
IAX_COMMAND_TXCNT | Transfer Connect
|
IAX_COMMAND_TXACC | Transfer Accepted
|
IAX_COMMAND_TXREADY | Transfer ready
|
IAX_COMMAND_TXREL | Transfer release
|
IAX_COMMAND_TXREJ | Transfer reject
|
IAX_COMMAND_QUELCH | Stop audio/video transmission
|
IAX_COMMAND_UNQUELCH | Resume audio/video transmission
|
IAX_COMMAND_POKE | Like ping, but does not require an open connection
|
IAX_COMMAND_PAGE | Paging description
|
IAX_COMMAND_MWI | Stand-alone message waiting indicator
|
IAX_COMMAND_UNSUPPORT | Unsupported message received
|
IAX_COMMAND_TRANSFER | Request remote transfer
|
IAX_COMMAND_PROVISION | Provision device
|
IAX_COMMAND_FWDOWNL | Download firmware
|
IAX_COMMAND_FWDATA | Firmware Data
|
IAX_COMMAND_TXMEDIA | Transfer media only
|
IAX_COMMAND_RTKEY | Command to rotate key
|
IAX_COMMAND_CALLTOKEN | Call number token
|
Definition at line 51 of file iax2.h.
51 {
64
66
68
70
72
74
76
78
80
82
84
86
88
90
92
94
96
98
100
102
104
106
108
110
112
114
116
118
120};
◆ iax2_getformatname()