diff options
author | Olle Johansson <oej@edvina.net> | 2008-04-15 20:31:08 +0000 |
---|---|---|
committer | Olle Johansson <oej@edvina.net> | 2008-04-15 20:31:08 +0000 |
commit | f239f24580ea8ff35763b933252433b2ec3124ee (patch) | |
tree | f0b1bce855f7f2ad5173ac6ead888bf7f7ed5610 /channels | |
parent | fe65716e15cbb013a0b6b85c361f93c45a9d7c92 (diff) |
Adding chanvar to SIPPEER from 1.4 branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@114150 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 52bca55bf..47176c66e 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -14353,6 +14353,14 @@ static int function_sippeer(struct ast_channel *chan, const char *cmd, char *dat ast_copy_string(buf, peer->cid_num, len); } else if (!strcasecmp(colname, "codecs")) { ast_getformatname_multiple(buf, len -1, peer->capability); + } else if (!strncasecmp(colname, "chanvar[", 8)) { + char *chanvar=colname + 8; + struct ast_variable *v; + + chanvar = strsep(&chanvar, "]"); + for (v = peer->chanvars ; v ; v = v->next) + if (strcasecmp(v->name, chanvar) == 0) + ast_copy_string(buf, v->value, sizeof(buf)); } else if (!strncasecmp(colname, "codec[", 6)) { char *codecnum; int index = 0, codec = 0; @@ -14397,6 +14405,7 @@ struct ast_custom_function sippeer_function = { "- language Default language for peer\n" "- accountcode Account code for this peer\n" "- useragent Current user agent id for peer\n" + "- chanvar[name] A channel variable configured with setvar for this peer.\n" "- codec[x] Preferred codec index number 'x' (beginning with zero).\n" "\n" }; |