aboutsummaryrefslogtreecommitdiffstats
path: root/apps/app_rpt.c
diff options
context:
space:
mode:
authorjdixon <jdixon@f38db490-d61c-443f-a65b-d21fe96a405b>2006-06-13 23:46:41 +0000
committerjdixon <jdixon@f38db490-d61c-443f-a65b-d21fe96a405b>2006-06-13 23:46:41 +0000
commit4ea7c6bef6b6b81caa38ec2a54187e71f322995d (patch)
tree10435f2e71b5f41a6606ca9389ed260f15a7b4cf /apps/app_rpt.c
parent6d3448b51e0bae74f3a5e4867caab69cc25e5f1a (diff)
Allowed proper tx/rx signal exclusivity for simplex repeater modes
on 2 wire interfaces git-svn-id: http://svn.digium.com/svn/asterisk/trunk@33973 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'apps/app_rpt.c')
-rw-r--r--apps/app_rpt.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/apps/app_rpt.c b/apps/app_rpt.c
index 2ca6fa418..7ea1e147b 100644
--- a/apps/app_rpt.c
+++ b/apps/app_rpt.c
@@ -21,7 +21,7 @@
/*! \file
*
* \brief Radio Repeater / Remote Base program
- * version 0.47 05/23/06
+ * version 0.48 06/13/06
*
* \author Jim Dixon, WB6NIL <jim@lambdatel.com>
*
@@ -123,12 +123,10 @@
/* Un-comment the following to include support for MDC-1200 digital tone
signalling protocol (using KA6SQG's GPL'ed implementation) */
-/* file must be downloaded separately, not part of Asterisk distribution */
/* #include "mdc_decode.c" */
/* Un-comment the following to include support for notch filters in the
rx audio stream (using Tony Fisher's mknotch (mkfilter) implementation) */
-/* file must be downloaded separately, not part of Asterisk distribution */
/* #include "rpt_notch.c" */
/* maximum digits in DTMF buffer, and seconds after * for DTMF command timeout */
@@ -244,7 +242,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include "asterisk/say.h"
#include "asterisk/localtime.h"
-static char *tdesc = "Radio Repeater / Remote Base version 0.47 05/23/2006";
+static char *tdesc = "Radio Repeater / Remote Base version 0.48 06/13/2006";
static char *app = "Rpt";
@@ -6831,17 +6829,23 @@ char tmpstr[300];
/* if RX key */
if (f->subclass == AST_CONTROL_RADIO_KEY)
{
- if (debug == 7) printf("@@@@ rx key\n");
- myrpt->keyed = 1;
+ if ((!lasttx) || (myrpt->p.duplex > 1))
+ {
+ if (debug == 7) printf("@@@@ rx key\n");
+ myrpt->keyed = 1;
+ }
}
/* if RX un-key */
if (f->subclass == AST_CONTROL_RADIO_UNKEY)
{
- if (debug == 7) printf("@@@@ rx un-key\n");
- if(myrpt->keyed) {
- rpt_telemetry(myrpt,UNKEY,NULL);
+ if ((!lasttx) || (myrpt->p.duplex > 1))
+ {
+ if (debug == 7) printf("@@@@ rx un-key\n");
+ if(myrpt->keyed) {
+ rpt_telemetry(myrpt,UNKEY,NULL);
+ }
+ myrpt->keyed = 0;
}
- myrpt->keyed = 0;
}
}
ast_frfree(f);