aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authormarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2005-02-26 07:34:09 +0000
committermarkster <markster@f38db490-d61c-443f-a65b-d21fe96a405b>2005-02-26 07:34:09 +0000
commitf82ee2792834df8058f8adaae73b26803f789584 (patch)
tree84cf0173c7d7ad0e32cae89bb74d08e960a31882 /include
parent94ab7ec60be4cc4005e5324a537726efb36e0f03 (diff)
Add new callerpres parsing API (bug #3648)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@5086 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'include')
-rwxr-xr-xinclude/asterisk/callerid.h53
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