24#ifndef _ASTERISK_DUNDI_H
25#define _ASTERISK_DUNDI_H
30#define DUNDI_PORT 4520
42} __attribute__((__packed__));
48} __attribute__((__packed__));
50#define DUNDI_FLAG_RETRANS (1 << 16)
51#define DUNDI_FLAG_RESERVED (1 << 16)
100 unsigned char iv[16];
102} __attribute__((__packed__));
110} __attribute__((__packed__));
115} __attribute__((__packed__));
139} __attribute__((__packed__));
146} __attribute__((__packed__));
159#define DUNDI_COMMAND_FINAL (0x80)
161#define DUNDI_COMMAND_ACK (0 | 0x40)
162#define DUNDI_COMMAND_DPDISCOVER 1
163#define DUNDI_COMMAND_DPRESPONSE (2 | 0x40)
164#define DUNDI_COMMAND_EIDQUERY 3
165#define DUNDI_COMMAND_EIDRESPONSE (4 | 0x40)
166#define DUNDI_COMMAND_PRECACHERQ 5
167#define DUNDI_COMMAND_PRECACHERP (6 | 0x40)
168#define DUNDI_COMMAND_INVALID (7 | 0x40)
169#define DUNDI_COMMAND_UNKNOWN (8 | 0x40)
170#define DUNDI_COMMAND_NULL 9
171#define DUNDI_COMMAND_REGREQ (10)
172#define DUNDI_COMMAND_REGRESPONSE (11 | 0x40)
173#define DUNDI_COMMAND_CANCEL (12)
174#define DUNDI_COMMAND_ENCRYPT (13)
175#define DUNDI_COMMAND_ENCREJ (14 | 0x40)
177#define DUNDI_COMMAND_STATUS 15
184#define DUNDI_IE_EID 1
185#define DUNDI_IE_CALLED_CONTEXT 2
186#define DUNDI_IE_CALLED_NUMBER 3
187#define DUNDI_IE_EID_DIRECT 4
188#define DUNDI_IE_ANSWER 5
189#define DUNDI_IE_TTL 6
190#define DUNDI_IE_VERSION 10
191#define DUNDI_IE_EXPIRATION 11
192#define DUNDI_IE_UNKNOWN 12
193#define DUNDI_IE_CAUSE 14
194#define DUNDI_IE_REQEID 15
195#define DUNDI_IE_ENCDATA 16
196#define DUNDI_IE_SHAREDKEY 17
197#define DUNDI_IE_SIGNATURE 18
198#define DUNDI_IE_KEYCRC32 19
199#define DUNDI_IE_HINT 20
201#define DUNDI_IE_DEPARTMENT 21
202#define DUNDI_IE_ORGANIZATION 22
203#define DUNDI_IE_LOCALITY 23
204#define DUNDI_IE_STATE_PROV 24
205#define DUNDI_IE_COUNTRY 25
206#define DUNDI_IE_EMAIL 26
207#define DUNDI_IE_PHONE 27
208#define DUNDI_IE_IPADDR 28
209#define DUNDI_IE_CACHEBYPASS 29
211#define DUNDI_IE_PEERSTATUS 30
213#define DUNDI_FLUFF_TIME 2000
214#define DUNDI_TTL_TIME 200
216#define DUNDI_DEFAULT_RETRANS 5
217#define DUNDI_DEFAULT_RETRANS_TIMER 1000
218#define DUNDI_DEFAULT_TTL 120
219#define DUNDI_DEFAULT_VERSION 1
220#define DUNDI_DEFAULT_CACHE_TIME 3600
221#define DUNDI_DEFAULT_KEY_EXPIRE 3600
222#define DUNDI_DEF_EMPTY_CACHE_TIME 60
223#define DUNDI_WINDOW 1
225#define DEFAULT_MAXMS 2000
General Asterisk PBX channel definitions.
int dundi_precache(const char *dcontext, const char *number)
Pre-cache to push upstream peers.
int dundi_query_eid(struct dundi_entity_info *dei, const char *dcontext, dundi_eid eid)
Retrieve information on a specific EID.
int dundi_lookup(struct dundi_result *result, int maxret, struct ast_channel *chan, const char *dcontext, const char *number, int nocache)
Lookup the given number in the given dundi context. Lookup number in a given dundi context (if unspec...
@ DUNDI_FLAG_NOCOMUNSOLICIT
@ DUNDI_FLAG_NOUNSOLICITED
@ DUNDI_CAUSE_TTL_EXPIRED
@ DUNDI_PEER_PCMOD_OUTBOUND
@ DUNDI_PEER_PCMOD_INBOUND
@ DUNDI_PEER_MOD_OUTBOUND
Main Channel structure associated with a channel.
An Entity ID is essentially a MAC address, brief and unique.