diff options
Diffstat (limited to 'include/asterisk/callerid.h')
-rwxr-xr-x | include/asterisk/callerid.h | 53 |
1 files changed, 43 insertions, 10 deletions
diff --git a/include/asterisk/callerid.h b/include/asterisk/callerid.h index 15497be8b..ce3387915 100755 --- a/include/asterisk/callerid.h +++ b/include/asterisk/callerid.h @@ -190,16 +190,6 @@ static inline float callerid_getcarrier(float *cr, float *ci, int bit) return *cr; } -#define AST_PRES_ALLOWED_USER_NUMBER_NOT_SCREENED 0x00 -#define AST_PRES_ALLOWED_USER_NUMBER_PASSED_SCREEN 0x01 -#define AST_PRES_ALLOWED_USER_NUMBER_FAILED_SCREEN 0x02 -#define AST_PRES_ALLOWED_NETWORK_NUMBER 0x03 -#define AST_PRES_PROHIB_USER_NUMBER_NOT_SCREENED 0x20 -#define AST_PRES_PROHIB_USER_NUMBER_PASSED_SCREEN 0x21 -#define AST_PRES_PROHIB_USER_NUMBER_FAILED_SCREEN 0x22 -#define AST_PRES_PROHIB_NETWORK_NUMBER 0x23 -#define AST_PRES_NUMBER_NOT_AVAILABLE 0x43 - #define PUT_BYTE(a) do { \ *(buf++) = (a); \ bytes++; \ @@ -237,5 +227,48 @@ static inline float callerid_getcarrier(float *cr, float *ci, int bit) PUT_CLID_BAUD(1); /* Stop bit */ \ } while(0); +/* Various defines and bits for handling PRI- and SS7-type restriction */ + +#define AST_PRES_NUMBER_TYPE 0x03 +#define AST_PRES_USER_NUMBER_UNSCREENED 0x00 +#define AST_PRES_USER_NUMBER_PASSED_SCREEN 0x01 +#define AST_PRES_USER_NUMBER_FAILED_SCREEN 0x02 +#define AST_PRES_NETWORK_NUMBER 0x03 + +#define AST_PRES_RESTRICTION 0x60 +#define AST_PRES_ALLOWED 0x00 +#define AST_PRES_RESTRICTED 0x20 +#define AST_PRES_UNAVAILABLE 0x40 +#define AST_PRES_RESERVED 0x60 + +#define AST_PRES_ALLOWED_USER_NUMBER_NOT_SCREENED \ + AST_PRES_USER_NUMBER_UNSCREENED + AST_PRES_ALLOWED + +#define AST_PRES_ALLOWED_USER_NUMBER_PASSED_SCREEN \ + AST_PRES_USER_NUMBER_PASSED_SCREEN + AST_PRES_ALLOWED + +#define AST_PRES_ALLOWED_USER_NUMBER_FAILED_SCREEN \ + AST_PRES_USER_NUMBER_FAILED_SCREEN + AST_PRES_ALLOWED + +#define AST_PRES_ALLOWED_NETWORK_NUMBER \ + AST_PRES_NETWORK_NUMBER + AST_PRES_ALLOWED + +#define AST_PRES_PROHIB_USER_NUMBER_NOT_SCREENED \ + AST_PRES_USER_NUMBER_UNSCREENED + AST_PRES_RESTRICTED + +#define AST_PRES_PROHIB_USER_NUMBER_PASSED_SCREEN \ + AST_PRES_USER_NUMBER_PASSED_SCREEN + AST_PRES_RESTRICTED + +#define AST_PRES_PROHIB_USER_NUMBER_FAILED_SCREEN \ + AST_PRES_USER_NUMBER_FAILED_SCREEN + AST_PRES_RESTRICTED + +#define AST_PRES_PROHIB_NETWORK_NUMBER \ + AST_PRES_NETWORK_NUMBER + AST_PRES_RESTRICTED + +#define AST_PRES_NUMBER_NOT_AVAILABLE \ + AST_PRES_NETWORK_NUMBER + AST_PRES_UNAVAILABLE + +int ast_parse_caller_presentation(const char *data); +const char *ast_describe_caller_presentation(int data); #endif |