|  | @@ -30,6 +30,7 @@
 | 
	
		
			
			| 30 | 30 |  
 | 
	
		
			
			| 31 | 31 |  COMPLETION_FILE=$HOME/freedombone-completed.txt
 | 
	
		
			
			| 32 | 32 |  SELECTED_USERNAME=
 | 
	
		
			
			|  | 33 | +SIP_CONFIG_FILE=/etc/sipwitch.conf
 | 
	
		
			
			| 33 | 34 |  
 | 
	
		
			
			| 34 | 35 |  function any_key {
 | 
	
		
			
			| 35 | 36 |      echo ' '
 | 
	
	
		
			
			|  | @@ -78,6 +79,26 @@ function add_user {
 | 
	
		
			
			| 78 | 79 |      fi
 | 
	
		
			
			| 79 | 80 |  }
 | 
	
		
			
			| 80 | 81 |  
 | 
	
		
			
			|  | 82 | +function show_sip_extensions {
 | 
	
		
			
			|  | 83 | +    if [ ! -f $SIP_CONFIG_FILE ]; then
 | 
	
		
			
			|  | 84 | +        return;
 | 
	
		
			
			|  | 85 | +    fi
 | 
	
		
			
			|  | 86 | +    clear
 | 
	
		
			
			|  | 87 | +    echo "SIP phone extensions:"
 | 
	
		
			
			|  | 88 | +    echo " "
 | 
	
		
			
			|  | 89 | +    while read ext; do
 | 
	
		
			
			|  | 90 | +        if [[ $ext == *"user id"* ]]; then
 | 
	
		
			
			|  | 91 | +            echo -n "    "
 | 
	
		
			
			|  | 92 | +            echo -n $(echo "$ext" | awk -F '"' '{print $2}' | awk -F '"' '{print $1}')
 | 
	
		
			
			|  | 93 | +            echo -n " "
 | 
	
		
			
			|  | 94 | +        fi
 | 
	
		
			
			|  | 95 | +        if [[ $ext == *"extension"* ]]; then
 | 
	
		
			
			|  | 96 | +            echo $(echo "$ext" | awk -F '>' '{print $2}' | awk -F '<' '{print $1}')
 | 
	
		
			
			|  | 97 | +        fi
 | 
	
		
			
			|  | 98 | +    done < $SIP_CONFIG_FILE
 | 
	
		
			
			|  | 99 | +    any_key 
 | 
	
		
			
			|  | 100 | +}
 | 
	
		
			
			|  | 101 | +
 | 
	
		
			
			| 81 | 102 |  function select_user {
 | 
	
		
			
			| 82 | 103 |      SELECTED_USERNAME=
 | 
	
		
			
			| 83 | 104 |      data=$(tempfile 2>/dev/null)
 | 
	
	
		
			
			|  | @@ -519,13 +540,14 @@ function menu_top_level {
 | 
	
		
			
			| 519 | 540 |          trap "rm -f $data" 0 1 2 5 15
 | 
	
		
			
			| 520 | 541 |          dialog --backtitle "Freedombone Control Panel" \
 | 
	
		
			
			| 521 | 542 |                 --title "Control Panel" \
 | 
	
		
			
			| 522 |  | -               --radiolist "Choose an operation:" 13 70 6 \
 | 
	
		
			
			|  | 543 | +               --radiolist "Choose an operation:" 14 70 7 \
 | 
	
		
			
			| 523 | 544 |                 1 "Backup and Restore" off \
 | 
	
		
			
			| 524 |  | -               2 "Logging on/off" off \
 | 
	
		
			
			| 525 |  | -               3 "Manage Users" off \
 | 
	
		
			
			| 526 |  | -               4 "Email Filtering Rules" off \
 | 
	
		
			
			| 527 |  | -               5 "Security Settings" off \
 | 
	
		
			
			| 528 |  | -               6 "Exit" on 2> $data
 | 
	
		
			
			|  | 545 | +               2 "Show SIP Phone Extensions" off \
 | 
	
		
			
			|  | 546 | +               3 "Logging on/off" off \
 | 
	
		
			
			|  | 547 | +               4 "Manage Users" off \
 | 
	
		
			
			|  | 548 | +               5 "Email Filtering Rules" off \
 | 
	
		
			
			|  | 549 | +               6 "Security Settings" off \
 | 
	
		
			
			|  | 550 | +               7 "Exit" on 2> $data
 | 
	
		
			
			| 529 | 551 |          sel=$?
 | 
	
		
			
			| 530 | 552 |          case $sel in
 | 
	
		
			
			| 531 | 553 |              1) exit 1;;
 | 
	
	
		
			
			|  | @@ -533,11 +555,12 @@ function menu_top_level {
 | 
	
		
			
			| 533 | 555 |          esac
 | 
	
		
			
			| 534 | 556 |          case $(cat $data) in
 | 
	
		
			
			| 535 | 557 |              1) menu_backup_restore;;
 | 
	
		
			
			| 536 |  | -            2) logging_on_off;;
 | 
	
		
			
			| 537 |  | -            3) menu_users;;
 | 
	
		
			
			| 538 |  | -            4) menu_email;;
 | 
	
		
			
			| 539 |  | -            5) freedombone-sec;;
 | 
	
		
			
			| 540 |  | -            6) break;;
 | 
	
		
			
			|  | 558 | +            2) show_sip_extensions;;
 | 
	
		
			
			|  | 559 | +            3) logging_on_off;;
 | 
	
		
			
			|  | 560 | +            4) menu_users;;
 | 
	
		
			
			|  | 561 | +            5) menu_email;;
 | 
	
		
			
			|  | 562 | +            6) freedombone-sec;;
 | 
	
		
			
			|  | 563 | +            7) break;;
 | 
	
		
			
			| 541 | 564 |          esac
 | 
	
		
			
			| 542 | 565 |      done
 | 
	
		
			
			| 543 | 566 |  }
 |