Make paging support apply to forwarded messages too

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@851 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Mark Spencer
2003-04-15 00:19:27 +00:00
parent 41129c57bd
commit dbe00ec2d2

View File

@@ -1400,10 +1400,12 @@ forward_message(struct ast_channel *chan, struct ast_config *cfg, char *dir, int
char sys[256]; char sys[256];
char todir[256]; char todir[256];
int todircount=0; int todircount=0;
long duration;
struct ast_config *mif; struct ast_config *mif;
char miffile[256]; char miffile[256];
char *copy, *name, *passwd, *email; char *copy, *name, *passwd, *email, *pager;
char *mycopy, *myname, *mypasswd, *myemail; char *mycopy, *myname, *mypasswd, *myemail, *mypager;
char *astemail;
char fn[256]; char fn[256];
char callerid[512]; char callerid[512];
@@ -1454,6 +1456,7 @@ forward_message(struct ast_channel *chan, struct ast_config *cfg, char *dir, int
passwd = strsep(&stringp, ","); passwd = strsep(&stringp, ",");
name = strsep(&stringp, ","); name = strsep(&stringp, ",");
email = strsep(&stringp, ","); email = strsep(&stringp, ",");
pager = strsep(&stringp, ",");
} }
if ((mycopy = ast_variable_retrieve(cfg, NULL, myusername))) { if ((mycopy = ast_variable_retrieve(cfg, NULL, myusername))) {
@@ -1464,18 +1467,22 @@ forward_message(struct ast_channel *chan, struct ast_config *cfg, char *dir, int
mypasswd = strsep(&mystringp, ","); mypasswd = strsep(&mystringp, ",");
myname = strsep(&mystringp, ","); myname = strsep(&mystringp, ",");
myemail = strsep(&mystringp, ","); myemail = strsep(&mystringp, ",");
mypager = strsep(&mystringp, ",");
} }
if (email) { /* set the outbound email from address */
snprintf(callerid, sizeof(callerid), "FWD from: %s from %s", myname, ast_variable_retrieve(mif, NULL, "callerid")); if (!(astemail = ast_variable_retrieve(cfg, "general", "serveremail")))
sendmail(ast_variable_retrieve(cfg, "general", "serveremail"), astemail = ASTERISK_USERNAME;
email, name, todircount, username,
callerid, /* set callerid and duration variables */
fn, snprintf(callerid, sizeof(callerid), "FWD from: %s from %s", myname, ast_variable_retrieve(mif, NULL, "callerid"));
"wav", duration = atol(ast_variable_retrieve(mif, NULL, "duration"));
atol(ast_variable_retrieve(mif, NULL, "duration"))
); if (email)
} sendmail(astemail, email, name, todircount, username, callerid, fn, "wav", atol(ast_variable_retrieve(mif, NULL, "duration")));
if (pager)
sendpage(astemail, pager, todircount, username, callerid, duration);
free(copy); /* no leaks here */ free(copy); /* no leaks here */
free(mycopy); /* or here */ free(mycopy); /* or here */