Asterisk - The Open Source Telephony Project
18.5.0
|
Distributed Universal Number Discovery (DUNDi) See also. More...
Go to the source code of this file.
Data Structures | |
struct | dundi_answer |
struct | dundi_cause |
struct | dundi_encblock |
struct | dundi_entity_info |
struct | dundi_hdr |
struct | dundi_hint |
struct | dundi_ie_hdr |
struct | dundi_peer_status |
struct | dundi_result |
Typedefs | |
typedef struct ast_eid | dundi_eid |
Functions | |
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 unspecified use e164), the given callerid (if specified) and return up to maxret results in the array specified. More... | |
int | dundi_precache (const char *dcontext, const char *number) |
Pre-cache to push upstream peers. More... | |
int | dundi_query_eid (struct dundi_entity_info *dei, const char *dcontext, dundi_eid eid) |
Retrieve information on a specific EID. More... | |
#define DUNDI_COMMAND_ACK (0 | 0x40) |
Ack a message
Definition at line 159 of file dundi.h.
Referenced by dundi_ack(), dundi_send(), and handle_frame().
#define DUNDI_COMMAND_CANCEL (12) |
Cancel transaction entirely
Definition at line 171 of file dundi.h.
Referenced by cancel_request(), and handle_command_response().
#define DUNDI_COMMAND_DPDISCOVER 1 |
Request discovery
Definition at line 160 of file dundi.h.
Referenced by dundi_discover(), dundi_send(), find_transaction(), and handle_command_response().
#define DUNDI_COMMAND_DPRESPONSE (2 | 0x40) |
Respond to a discovery request
Definition at line 161 of file dundi.h.
Referenced by dundi_answer_query(), dundi_lookup_thread(), dundi_send(), and handle_command_response().
#define DUNDI_COMMAND_EIDQUERY 3 |
Request information for a peer
Definition at line 162 of file dundi.h.
Referenced by dundi_query(), dundi_send(), find_transaction(), and handle_command_response().
#define DUNDI_COMMAND_EIDRESPONSE (4 | 0x40) |
Response to a peer query
Definition at line 163 of file dundi.h.
Referenced by dundi_answer_entity(), dundi_query_thread(), dundi_send(), and handle_command_response().
#define DUNDI_COMMAND_ENCREJ (14 | 0x40) |
Reject an encrypted message
Definition at line 173 of file dundi.h.
Referenced by handle_command_response().
#define DUNDI_COMMAND_ENCRYPT (13) |
Send an encrypted message
Definition at line 172 of file dundi.h.
Referenced by dundi_encrypt(), find_transaction(), and handle_command_response().
#define DUNDI_COMMAND_FINAL (0x80) |
#define DUNDI_COMMAND_INVALID (7 | 0x40) |
Invalid dialog state (does not require ack)
Definition at line 166 of file dundi.h.
Referenced by dundi_reject(), and handle_command_response().
#define DUNDI_COMMAND_NULL 9 |
No-op
Definition at line 168 of file dundi.h.
Referenced by find_transaction(), handle_command_response(), and qualify_peer().
#define DUNDI_COMMAND_PRECACHERP (6 | 0x40) |
Pre-cache Response
Definition at line 165 of file dundi.h.
Referenced by dundi_precache_thread(), dundi_prop_precache(), dundi_send(), and handle_command_response().
#define DUNDI_COMMAND_PRECACHERQ 5 |
Pre-cache Request
Definition at line 164 of file dundi.h.
Referenced by dundi_send(), find_transaction(), handle_command_response(), and precache_trans().
#define DUNDI_COMMAND_REGREQ (10) |
Register Request
Definition at line 169 of file dundi.h.
Referenced by do_register(), dundi_send(), find_transaction(), and handle_command_response().
#define DUNDI_COMMAND_REGRESPONSE (11 | 0x40) |
Register Response
Definition at line 170 of file dundi.h.
Referenced by dundi_send(), and handle_command_response().
#define DUNDI_COMMAND_UNKNOWN (8 | 0x40) |
#define DUNDI_DEF_EMPTY_CACHE_TIME 60 |
#define DUNDI_DEFAULT_CACHE_TIME 3600 |
#define DUNDI_DEFAULT_KEY_EXPIRE 3600 |
#define DUNDI_DEFAULT_RETRANS 5 |
Definition at line 214 of file dundi.h.
Referenced by dundi_send().
#define DUNDI_DEFAULT_RETRANS_TIMER 1000 |
Definition at line 215 of file dundi.h.
Referenced by apply_peer(), and create_transaction().
#define DUNDI_DEFAULT_TTL 120 |
#define DUNDI_DEFAULT_VERSION 1 |
Definition at line 217 of file dundi.h.
Referenced by do_register(), dundi_discover(), dundi_query(), and precache_trans().
#define DUNDI_FLAG_RESERVED (1 << 16) |
#define DUNDI_FLAG_RETRANS (1 << 16) |
#define DUNDI_FLUFF_TIME 2000 |
Amount of time for answer
Definition at line 211 of file dundi.h.
Referenced by dundi_lookup_internal(), dundi_precache_internal(), and dundi_query_eid_internal().
#define DUNDI_IE_ANSWER 5 |
An answer (struct dundi_answer)
Definition at line 186 of file dundi.h.
Referenced by dundi_lookup_thread(), dundi_parse_ies(), and precache_trans().
#define DUNDI_IE_CACHEBYPASS 29 |
Bypass cache (empty)
Definition at line 207 of file dundi.h.
Referenced by dundi_discover(), and dundi_parse_ies().
#define DUNDI_IE_CALLED_CONTEXT 2 |
DUNDi Context (string)
Definition at line 183 of file dundi.h.
Referenced by dundi_discover(), dundi_parse_ies(), dundi_query(), and precache_trans().
#define DUNDI_IE_CALLED_NUMBER 3 |
Number of equivalent (string)
Definition at line 184 of file dundi.h.
Referenced by dundi_discover(), dundi_parse_ies(), and precache_trans().
#define DUNDI_IE_CAUSE 14 |
Success or cause of failure
Definition at line 191 of file dundi.h.
Referenced by dundi_answer_entity(), dundi_answer_query(), dundi_lookup_thread(), dundi_parse_ies(), dundi_prop_precache(), and handle_command_response().
#define DUNDI_IE_COUNTRY 25 |
Country, for EIDQUERY (string)
Definition at line 203 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_DEPARTMENT 21 |
Department, for EIDQUERY (string)
Definition at line 199 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_EID 1 |
Entity identifier (dundi_eid)
Definition at line 182 of file dundi.h.
Referenced by do_register(), dundi_encrypt(), dundi_ie_append_eid_appropriately(), dundi_parse_ies(), dundi_query(), handle_command_response(), and precache_trans().
#define DUNDI_IE_EID_DIRECT 4 |
Entity identifier (dundi_eid), direct connect
Definition at line 185 of file dundi.h.
Referenced by dundi_discover(), dundi_ie_append_eid_appropriately(), and dundi_parse_ies().
#define DUNDI_IE_EMAIL 26 |
E-mail addy, for EIDQUERY (string)
Definition at line 204 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_ENCDATA 16 |
AES-128 encrypted data
Definition at line 193 of file dundi.h.
Referenced by dump_ies(), dundi_encrypt(), dundi_parse_ies(), and handle_command_response().
#define DUNDI_IE_EXPIRATION 11 |
Recommended expiration (short)
Definition at line 189 of file dundi.h.
Referenced by do_register(), dundi_lookup_thread(), dundi_parse_ies(), handle_command_response(), and precache_trans().
#define DUNDI_IE_HINT 20 |
Answer hints
Definition at line 197 of file dundi.h.
Referenced by dundi_lookup_thread(), dundi_parse_ies(), dundi_query_thread(), and precache_trans().
#define DUNDI_IE_IPADDR 28 |
IP Address, for EIDQUERY (string)
Definition at line 206 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_KEYCRC32 19 |
CRC32 of encrypted key (int)
Definition at line 196 of file dundi.h.
Referenced by dundi_encrypt(), and dundi_parse_ies().
#define DUNDI_IE_LOCALITY 23 |
City/Locality, for EIDQUERY (string)
Definition at line 201 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_ORGANIZATION 22 |
Organization, for EIDQUERY (string)
Definition at line 200 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_PEERSTATUS 30 |
Peer/peer status (struct dundi_peer_status)
#define DUNDI_IE_PHONE 27 |
Contact Phone, for EIDQUERY (string)
Definition at line 205 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_REQEID 15 |
EID being requested for EIDQUERY
Definition at line 192 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query().
#define DUNDI_IE_SHAREDKEY 17 |
RSA encrypted AES-128 key
Definition at line 194 of file dundi.h.
Referenced by dundi_encrypt(), dundi_parse_ies(), and handle_command_response().
#define DUNDI_IE_SIGNATURE 18 |
RSA Signature of encrypted shared key
Definition at line 195 of file dundi.h.
Referenced by dundi_encrypt(), dundi_parse_ies(), and handle_command_response().
#define DUNDI_IE_STATE_PROV 24 |
State/Province, for EIDQUERY (string)
Definition at line 202 of file dundi.h.
Referenced by dundi_parse_ies(), and dundi_query_thread().
#define DUNDI_IE_TTL 6 |
Max TTL for this request / Remaining TTL for the response (short)
Definition at line 187 of file dundi.h.
Referenced by dundi_discover(), dundi_parse_ies(), dundi_query(), and precache_trans().
#define DUNDI_IE_UNKNOWN 12 |
Unknown command (byte)
Definition at line 190 of file dundi.h.
Referenced by dundi_parse_ies(), and handle_command_response().
#define DUNDI_IE_VERSION 10 |
DUNDi version (should be 1) (short)
Definition at line 188 of file dundi.h.
Referenced by do_register(), dundi_discover(), dundi_parse_ies(), dundi_query(), and precache_trans().
#define DUNDI_PORT 4520 |
Definition at line 30 of file dundi.h.
Referenced by build_peer(), and set_config().
#define DUNDI_TTL_TIME 200 |
Incremental average time
Definition at line 212 of file dundi.h.
Referenced by dundi_lookup_internal(), dundi_precache_internal(), and dundi_query_eid_internal().
anonymous enum |
Enumerator | |
---|---|
DUNDI_PROTO_NONE | No answer yet |
DUNDI_PROTO_IAX | IAX, version 2 |
DUNDI_PROTO_SIP | SIP - Session Initiation Protocol, RFC 3261 |
DUNDI_PROTO_H323 | ITU H.323 |
anonymous enum |
Definition at line 64 of file dundi.h.
anonymous enum |
Enumerator | |
---|---|
DUNDI_HINT_NONE | |
DUNDI_HINT_TTL_EXPIRED | TTL Expired |
DUNDI_HINT_DONT_ASK | Don't ask for anything beginning with data |
DUNDI_HINT_UNAFFECTED | Answer not affected by entity list |
anonymous enum |
Definition at line 115 of file dundi.h.
anonymous enum |
Enumerator | |
---|---|
DUNDI_PEER_PRIMARY | |
DUNDI_PEER_SECONDARY | |
DUNDI_PEER_UNAVAILABLE | |
DUNDI_PEER_REGISTERED | |
DUNDI_PEER_MOD_OUTBOUND | |
DUNDI_PEER_MOD_INBOUND | |
DUNDI_PEER_PCMOD_OUTBOUND | |
DUNDI_PEER_PCMOD_INBOUND |
Definition at line 146 of file dundi.h.
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 unspecified use e164), the given callerid (if specified) and return up to maxret results in the array specified.
the | number of results found. |
-1 | on a hangup of the channel. |
Definition at line 3926 of file pbx_dundi.c.
References dundi_cache_time, DUNDI_HINT_DONT_ASK, DUNDI_HINT_UNAFFECTED, dundi_lookup_internal(), dundi_hint_metadata::flags, and NULL.
Referenced by dundi_do_lookup(), dundi_exec(), dundi_helper(), dundi_query_read(), and dundifunc_read().
int dundi_precache | ( | const char * | dcontext, |
const char * | number | ||
) |
Pre-cache to push upstream peers.
Definition at line 4068 of file pbx_dundi.c.
References dundi_precache_internal(), and NULL.
Referenced by dundi_do_precache(), and process_precache().
int dundi_query_eid | ( | struct dundi_entity_info * | dei, |
const char * | dcontext, | ||
dundi_eid | eid | ||
) |
Retrieve information on a specific EID.
Definition at line 4121 of file pbx_dundi.c.
References dundi_query_eid_internal(), and NULL.
Referenced by dundi_do_query().