Stuck with arduino & xbee for getting RSSI value

Hello Everyone,
I am using two arduino Uno and 3 xbee s1 two connected to two arduino and one to computer which will receive data from both xbee's....i want to get rssi value of the incoming packet........
here is the code for transmit ..it is example code of xbee series1Tx in broadcast mode,somewhat modified....

#include <XBee.h>
XBee xbee = XBee();
unsigned long start = millis();

// allocate two bytes for payload
uint8_t payload[] = {'3', '4' };

// 16-bit addressing: Enter address of remote XBee, typically the coordinator
Tx16Request tx = Tx16Request(0xffff, payload, sizeof(payload));

/ 64-bit addressing: This is the SH + SL address of remote XBee
//XBeeAddress64 addr64 = XBeeAddress64(0x0013a200, 0x4008b490);
// unless you have MY on the receiving radio set to FFFF, this will be received as a RX16 packet
//Tx64Request tx = Tx64Request(addr64, payload, sizeof(payload));

TxStatusResponse txStatus = TxStatusResponse();
int pin5 = 0;
int statusLed = 11;
int errorLed = 12;
void flashLed(int pin, int times, int wait) {
    
    for (int i = 0; i < times; i++) {
      digitalWrite(pin, HIGH);
      delay(wait);
      digitalWrite(pin, LOW);
      
      if (i + 1 < times) {
        delay(wait);
      }
    }
}

void setup() {
  pinMode(statusLed, OUTPUT);
  pinMode(errorLed, OUTPUT);
  Serial.begin(9600);
  xbee.setSerial(Serial);
}

void loop() {
   
   // start transmitting after a startup delay.  Note: this will rollover to 0 eventually so not best way to handle
    if (millis() - start > 15000) {
      xbee.send(tx);
      // flash TX indicator
      flashLed(statusLed, 1, 100);
    }
  
    // after sending a tx request, we expect a status response
    // wait up to 5 seconds for the status response
    if (xbee.readPacket(5000)) {
        // got a response!

        // should be a znet tx status            	
    	if (xbee.getResponse().getApiId() == TX_STATUS_RESPONSE) {
    	   xbee.getResponse().getZBTxStatusResponse(txStatus);
    		
    	   // get the delivery status, the fifth byte
           if (txStatus.getStatus() == SUCCESS) {
            	// success.  time to celebrate
             	flashLed(statusLed, 5, 50);
           } else {
            	// the remote XBee did not receive our packet. is it powered on?
             	flashLed(errorLed, 3, 500);
           }
        }      
    } else if (xbee.getResponse().isError()) {
      //nss.print("Error reading packet.  Error code: ");  
      //nss.println(xbee.getResponse().getErrorCode());
      // or flash error led
    } else {
      // local XBee did not provide a timely TX Status Response.  Radio is not configured properly or connected
      flashLed(errorLed, 2, 50);
    }
    
    delay(1000);
}

and this is the code to receive....it basically send some data and wait 5 second to receive some data....after it receive data from tx...it should get the rssi value from recieved packet...and again send it..it is also in broadcast mode where i am doing wrong........
#include <XBee.h>
uint8_t payload[] = { '1', '2'};
Tx16Request tx = Tx16Request(0xffff, payload, sizeof(payload));
TxStatusResponse txStatus = TxStatusResponse();
XBee xbee = XBee();
XBeeResponse response = XBeeResponse();
// create reusable response objects for responses we expect to handle
Rx16Response rx16 = Rx16Response();
Rx64Response rx64 = Rx64Response();

int statusLed = 11;
int errorLed = 12;
int dataLed = 10;

uint8_t option = 0;
uint8_t data = 0;

void flashLed(int pin, int times, int wait) {

for (int i = 0; i < times; i++) {
digitalWrite(pin, HIGH);
delay(wait);
digitalWrite(pin, LOW);

if (i + 1 < times) {
delay(wait);
}
}
}

void setup() {
pinMode(statusLed, OUTPUT);
pinMode(errorLed, OUTPUT);
pinMode(dataLed, OUTPUT);

// start serial
Serial.begin(9600);
xbee.setSerial(Serial);

flashLed(statusLed, 3, 50);
}

// continuously reads packets, looking for RX16 or RX64
void loop() {
xbee.send(tx);
xbee.readPacket(5000);

if (xbee.getResponse().isAvailable()) {
// got something

if (xbee.getResponse().getApiId() == RX_16_RESPONSE || xbee.getResponse().getApiId() == RX_64_RESPONSE) {
// got a rx packet

if (xbee.getResponse().getApiId() == RX_16_RESPONSE) {
xbee.getResponse().getRx16Response(rx16);
option = rx16.getOption();
data = rx16.getData(0);
int Rssi = rx16.getRssi();
payload[0]=Rssi;
} else {
xbee.getResponse().getRx64Response(rx64);
option = rx64.getOption();
data = rx64.getData(0);
int Rssi = rx64.getRssi();
payload[0]=Rssi;
payload[1]='5'; //just for debugging purpose....
}
xbee.send(tx);

// TODO check option, rssi bytes
flashLed(statusLed, 1, 10);

// set dataLed PWM to value of the first byte in the data
analogWrite(dataLed, data);
} else {
// not something we were expecting
flashLed(errorLed, 1, 25);
}
} else if (xbee.getResponse().isError()) {
//nss.print("Error reading packet. Error code: ");
//nss.println(xbee.getResponse().getErrorCode());
// or flash error led
}
delay(5000);
}

please help me with this code.......on the hyperteminal of computer i am getting only 1234
i am not getting rssi at all.......where i am doing wrong