Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
656 changes: 358 additions & 298 deletions apps/app_rpt.c

Large diffs are not rendered by default.

34 changes: 22 additions & 12 deletions apps/app_rpt/app_rpt.h
Original file line number Diff line number Diff line change
Expand Up @@ -741,12 +741,13 @@ struct rpt_cmd_struct {
enum rpt_command_source command_source;
};

struct ast_bridge; /* Forward declaration */

/*! \brief Structure used to manage conference bridges */
struct rpt_conf {
/* DAHDI conference numbers */
struct {
int conf;
int txconf;
} dahdiconf;
/* Conference bridge channels */
struct ast_bridge *conf;
struct ast_bridge *txconf;
};

/*! \brief Populate rpt structure with data */
Expand Down Expand Up @@ -941,16 +942,21 @@ struct rpt {
int parrottimer;
unsigned int parrotcnt;
int telemmode;
struct ast_channel *rxchannel,*txchannel, *monchannel, *parrotchannel;
struct ast_channel *pchannel,*txpchannel, *dahdirxchannel, *dahditxchannel;
struct ast_channel *voxchannel;
struct ast_channel *rxchannel; /*!< Channel connected to physical hardware, can be bi-directional */
struct ast_channel *txchannel; /*!< Channel connect to physical hardware if separate otherwise equal to rxchannel */
struct ast_channel *monchannel; /*!< Monitor channel used to record activity on the TXCONF */
struct ast_channel *pchannel; /*!< Channel used to copy CONF bridge audio into txpchannel */
struct ast_channel *rxpchannel; /*!< Channel used to copy RX audio into CONF bridge */
struct ast_channel *txpchannel; /*!< Channel used to receive RX audio into the TXCONF bridge */
struct ast_channel *localrxchannel; /*!< Channel used when in remote configuration for rx, may be set equal to pchannel */
struct ast_channel *localtxchannel; /*!< Channel used to receive audio from the TXCONF bridge into the txchannel */
struct rpt_frame_queue frame_queue;
struct rpt_tele tele;
struct timeval lasttv,curtv;
pthread_t rpt_call_thread,rpt_thread;
time_t dtmf_time,rem_dtmf_time,dtmf_time_rem;
int calldigittimer;
struct rpt_conf rptconf;
pthread_t rpt_call_thread, rpt_thread;
time_t dtmf_time, rem_dtmf_time, dtmf_time_rem;
int calldigittimer;
int tailtimer, totimer, idtimer, cidx, scantimer, tmsgtimer, skedtimer, linkactivitytimer, elketimer;
int remote_time_out_reset_unkey_interval_timer, time_out_reset_unkey_interval_timer;
enum patch_call_mode callmode;
Expand Down Expand Up @@ -1024,6 +1030,7 @@ struct rpt {
int lastkeytimer;
enum newkey rpt_newkey;
int rxlingertimer;
rpt_bool patch_talking:1;
rpt_bool inpadtest:1;
rpt_bool localoverride:1;
rpt_bool wasvox:1;
Expand Down Expand Up @@ -1098,7 +1105,7 @@ struct nodelog {

struct statpost {
struct rpt *myrpt;
char *stats_url;
struct ast_str *stats_url;
};

/*! \brief Whether a channel is using a specified technology */
Expand All @@ -1107,6 +1114,9 @@ struct statpost {
#define IS_PSEUDO(c) (!strncasecmp(ast_channel_name(c), "DAHDI/pseudo", 12))
#define IS_PSEUDO_NAME(c) (!strncasecmp(c, "DAHDI/pseudo", 12))

#define IS_LOCAL(c) (!strncasecmp(ast_channel_name(c), "Local", 5))
#define IS_LOCAL_NAME(c) (!strncasecmp(c, "Local", 5))

int rpt_debug_level(void);
int rpt_set_debug_level(int newlevel);
int rpt_num_rpts(void);
Expand Down
Loading