diff options
author | Joshua Colp <jcolp@digium.com> | 2006-08-31 01:59:02 +0000 |
---|---|---|
committer | Joshua Colp <jcolp@digium.com> | 2006-08-31 01:59:02 +0000 |
commit | c6977b9983db4f58446bfbc65a5b028cda8244ee (patch) | |
tree | 95a924d57b906428b26d398758facf98b92bdcb2 /channels/chan_skinny.c | |
parent | 5418a7a1a8326544f2275819c93649c97261a5f3 (diff) |
Merge in VLDTMF support with Zaptel/Core done by the ever great Darumkilla Russell Bryant and the RTP portion done by myself, Muffinlicious Joshua Colp. This has gone through so many discussions/revisions it's not funny but we finally have it!
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@41507 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r-- | channels/chan_skinny.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c index b05fabb9b..97c12455e 100644 --- a/channels/chan_skinny.c +++ b/channels/chan_skinny.c @@ -1013,7 +1013,8 @@ static struct ast_frame *skinny_read(struct ast_channel *ast); static int skinny_write(struct ast_channel *ast, struct ast_frame *frame); static int skinny_indicate(struct ast_channel *ast, int ind, const void *data, size_t datalen); static int skinny_fixup(struct ast_channel *oldchan, struct ast_channel *newchan); -static int skinny_senddigit(struct ast_channel *ast, char digit); +static int skinny_senddigit_begin(struct ast_channel *ast, char digit); +static int skinny_senddigit_end(struct ast_channel *ast, char digit); static const struct ast_channel_tech skinny_tech = { .type = "Skinny", @@ -1028,7 +1029,8 @@ static const struct ast_channel_tech skinny_tech = { .write = skinny_write, .indicate = skinny_indicate, .fixup = skinny_fixup, - .send_digit = skinny_senddigit, + .send_digit_begin = skinny_senddigit_begin, + .send_digit_end = skinny_senddigit_end, /* .bridge = ast_rtp_bridge, */ }; @@ -2467,7 +2469,12 @@ static int skinny_fixup(struct ast_channel *oldchan, struct ast_channel *newchan return 0; } -static int skinny_senddigit(struct ast_channel *ast, char digit) +static int skinny_senddigit_begin(struct ast_channel *ast, char digit) +{ + return -1; /* Start inband indications */ +} + +static int skinny_senddigit_end(struct ast_channel *ast, char digit) { #if 0 struct skinny_subchannel *sub = ast->tech_pvt; @@ -2478,7 +2485,7 @@ static int skinny_senddigit(struct ast_channel *ast, char digit) sprintf(tmp, "%d", digit); transmit_tone(d->session, digit); #endif - return -1; + return -1; /* Stop inband indications */ } static char *control2str(int ind) { |