@ -4124,9 +4124,8 @@ static int valid_exit(struct queue_ent *qe, char digit)
static int say_position ( struct queue_ent * qe , int ringing )
static int say_position ( struct queue_ent * qe , int ringing )
{
{
int res = 0 , announceposition = 0 ;
int res = 0 , say_thanks = 0 ;
long avgholdmins , avgholdsecs ;
long avgholdmins , avgholdsecs ;
int say_thanks = 1 ;
time_t now ;
time_t now ;
/* Let minannouncefrequency seconds pass between the start of each position announcement */
/* Let minannouncefrequency seconds pass between the start of each position announcement */
@ -4155,11 +4154,7 @@ static int say_position(struct queue_ent *qe, int ringing)
qe - > parent - > announceposition = = ANNOUNCEPOSITION_MORE_THAN | |
qe - > parent - > announceposition = = ANNOUNCEPOSITION_MORE_THAN | |
( qe - > parent - > announceposition = = ANNOUNCEPOSITION_LIMIT & &
( qe - > parent - > announceposition = = ANNOUNCEPOSITION_LIMIT & &
qe - > pos < = qe - > parent - > announcepositionlimit ) ) {
qe - > pos < = qe - > parent - > announcepositionlimit ) ) {
announceposition = 1 ;
say_thanks = 1 ;
}
if ( announceposition = = 1 ) {
/* Say we're next, if we are */
/* Say we're next, if we are */
if ( qe - > pos = = 1 ) {
if ( qe - > pos = = 1 ) {
res = play_file ( qe - > chan , qe - > parent - > sound_next ) ;
res = play_file ( qe - > chan , qe - > parent - > sound_next ) ;
@ -4203,6 +4198,7 @@ static int say_position(struct queue_ent *qe, int ringing)
if ( ( avgholdmins + avgholdsecs ) > 0 & & qe - > parent - > announceholdtime & &
if ( ( avgholdmins + avgholdsecs ) > 0 & & qe - > parent - > announceholdtime & &
( ( qe - > parent - > announceholdtime = = ANNOUNCEHOLDTIME_ONCE & & ! qe - > last_pos ) | |
( ( qe - > parent - > announceholdtime = = ANNOUNCEHOLDTIME_ONCE & & ! qe - > last_pos ) | |
! ( qe - > parent - > announceholdtime = = ANNOUNCEHOLDTIME_ONCE ) ) ) {
! ( qe - > parent - > announceholdtime = = ANNOUNCEHOLDTIME_ONCE ) ) ) {
say_thanks = 1 ;
res = play_file ( qe - > chan , qe - > parent - > sound_holdtime ) ;
res = play_file ( qe - > chan , qe - > parent - > sound_holdtime ) ;
if ( res ) {
if ( res ) {
goto playout ;
goto playout ;
@ -4237,8 +4233,6 @@ static int say_position(struct queue_ent *qe, int ringing)
goto playout ;
goto playout ;
}
}
}
}
} else if ( qe - > parent - > announceholdtime & & ! qe - > parent - > announceposition ) {
say_thanks = 0 ;
}
}
posout :
posout :