Something like the following provides the basics for a 2.4GHz ZigBee network. I expect the 900MHz socket API should be similar.
sock = socket.socket(socket.AF_XBEE, socket.SOCK_DGRAM, socket.XBS_PROT_TRANSPORT)
sock.bind(('', endpoint_id, 0, 0))
sock.setblocking(0)
rsocks = select.select([sock], [], [], 0)[0]
for s in rsocks:
payload, source_address = s.recvfrom(MAX_PAYLOAD_LEN)