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.
@ DUNDI_PEER_PCMOD_OUTBOUND
@ DUNDI_PEER_PCMOD_INBOUND
@ DUNDI_PEER_MOD_OUTBOUND
@ DUNDI_FLAG_NOCOMUNSOLICIT
@ DUNDI_FLAG_NOUNSOLICITED
int dundi_precache(const char *dcontext, const char *number)
Pre-cache to push upstream peers.
@ DUNDI_CAUSE_TTL_EXPIRED
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...
Main Channel structure associated with a channel.
An Entity ID is essentially a MAC address, brief and unique.