From c791e0d15a494431933106040f050acdde916918 Mon Sep 17 00:00:00 2001 From: markster Date: Wed, 11 Dec 2002 00:15:13 +0000 Subject: Version 0.3.0 from FTP git-svn-id: http://svn.digium.com/svn/asterisk/trunk@566 f38db490-d61c-443f-a65b-d21fe96a405b --- include/asterisk/manager.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'include/asterisk') diff --git a/include/asterisk/manager.h b/include/asterisk/manager.h index 5eb4965d5..4a267747f 100755 --- a/include/asterisk/manager.h +++ b/include/asterisk/manager.h @@ -18,6 +18,10 @@ #define _ASTERISK_MANAGER_H #include +#include +#include +#include +#include /* * Call management packages are text fields of the form a: b. There is @@ -42,6 +46,46 @@ #define EVENT_FLAG_COMMAND (1 << 4) /* Ability to read/set commands */ #define EVENT_FLAG_AGENT (1 << 5) /* Ability to read/set agent info */ +/* JDG: export manager structures */ +#define MAX_HEADERS 80 +#define MAX_LEN 256 + +struct mansession { + pthread_t t; + pthread_mutex_t lock; + struct sockaddr_in sin; + int fd; + int blocking; + char username[80]; + int authenticated; + int readperm; + int writeperm; + char inbuf[MAX_LEN]; + int inlen; + + struct mansession *next; +}; + + +struct message { + int hdrcount; + char headers[MAX_HEADERS][MAX_LEN]; +}; + +struct manager_action { + char action[256]; + char *synopsis; + int authority; + int (*func)(struct mansession *s, struct message *m); + struct manager_action *next; +}; + +/* External routines may register/unregister manager callbacks this way */ +int ast_manager_register( char *action, int authority, + int (*func)(struct mansession *s, struct message *m), char *synopsis); +int ast_manager_unregister( char *action ); +/* /JDG */ + /* External routines may send asterisk manager events this way */ extern int manager_event(int category, char *event, char *contents, ...) __attribute__ ((format (printf, 3,4))); -- cgit v1.2.3