diff options
author | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-12-06 15:48:45 +0000 |
---|---|---|
committer | crichter <crichter@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-12-06 15:48:45 +0000 |
commit | 668f9e25f5513ee8b5363637f723560189e66829 (patch) | |
tree | 265eab9a0f352d43932aab641afbe84cd1206cf8 /channels | |
parent | eacfb3340fe838ce5a3aa004275208e22cf1fb19 (diff) |
added the export and import of the MISDN_ADDRESS_COMPLETE Variable to inidcate wether the extension is already completely dialed or if there might come additional digits by information elements. also added some docs for that.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@48321 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_misdn.c | 10 | ||||
-rw-r--r-- | channels/misdn/isdn_msg_parser.c | 4 |
2 files changed, 14 insertions, 0 deletions
diff --git a/channels/chan_misdn.c b/channels/chan_misdn.c index fc421c54a..9049ba753 100644 --- a/channels/chan_misdn.c +++ b/channels/chan_misdn.c @@ -3183,6 +3183,11 @@ void import_ch(struct ast_channel *chan, struct misdn_bchannel *bc, struct chan_ if (ch->other_ch) ch->other_ch->other_ch=ch; } } + + tmp=pbx_builtin_getvar_helper(chan,"MISDN_ADDRESS_COMPLETE"); + if (tmp && (atoi(tmp) == 1)) { + bc->sending_complete=1; + } } void export_ch(struct ast_channel *chan, struct misdn_bchannel *bc, struct chan_list *ch) @@ -3192,6 +3197,11 @@ void export_ch(struct ast_channel *chan, struct misdn_bchannel *bc, struct chan_ chan_misdn_log(3,bc->port," --> EXPORT_PID: pid:%d\n",bc->pid); sprintf(tmp,"%d",bc->pid); pbx_builtin_setvar_helper(chan,"_MISDN_PID",tmp); + + if (bc->sending_complete) { + sprintf(tmp,"%d",bc->sending_complete); + pbx_builtin_setvar_helper(chan,"MISDN_ADDRESS_COMPLETE",tmp); + } } diff --git a/channels/misdn/isdn_msg_parser.c b/channels/misdn/isdn_msg_parser.c index 136c9a62d..3d841d893 100644 --- a/channels/misdn/isdn_msg_parser.c +++ b/channels/misdn/isdn_msg_parser.c @@ -323,6 +323,10 @@ msg_t *build_setup (struct isdn_msg msgs[], struct misdn_bchannel *bc, int nt) enc_ie_bearer(&setup->BEARER, msg, coding, capability, mode, rate, -1, user, nt,bc); } + + if (bc->sending_complete) { + enc_ie_complete(&setup->BEARER,msg, bc->sending_complete, nt, bc); + } #if DEBUG printf("Building SETUP Msg\n"); |