             rcp_pairs++;
 
             if(proxy_mode) {
-                if(rcp_pairs < MAXIMUM_RCP_PAIRS) {
+                if(rcp_pairs < max_rcp_pairs) {
                     poll_for_id();
                 }
             } else {
                 /* Setup listening RTMFPConnectionPair. */
-                if(rcp_pairs < MAXIMUM_RCP_PAIRS) {
+                if(rcp_pairs < max_rcp_pairs) {
                     puts("Setting up listening RTMFPConnectionPair");
                     var rcp:RTMFPConnectionPair = new RTMFPConnectionPair(circon, tor_addr, output_text);
                     rcp.addEventListener(Event.CONNECT, rcp_connect_event);
                     rcp.addEventListener(Event.CLOSE, rcp_close_event);
-                    rcp.listen();
+                    rcp.listen(String(rtmfp_data_counter));
+                    var reg_str:String = circon.nearID + ":" + String(rtmfp_data_counter);
+                    puts("Registering " + reg_str + " with facilitator");
+                    register_id(reg_str, fac_addr);
+                    rtmfp_data_counter++;
                 }
             }
         }

            /* FIXME: Do I need to unregister the event listeners so
             * that the system can garbage collect the rcp object? */
            if(proxy_mode) {
                if(rcp_pairs < MAXIMUM_RCP_PAIRS) {
                    poll_for_id();
                }
            } else {
                if(rcp_pairs < MAXIMUM_RCP_PAIRS) {
                    puts("Setting up listening RTMFPConnectionPair");
                    var rcp:RTMFPConnectionPair = new RTMFPConnectionPair(circon, tor_addr, output_text);
                    rcp.addEventListener(Event.CONNECT, rcp_connect_event);
                    rcp.addEventListener(Event.CLOSE, rcp_close_event);
                    rcp.listen(); 
                }
            }
        }


            /* Initialize connection pair count. */
            rcp_pairs = 0;

            /* Unique counter for RTMFP data publishing. */
            rtmfp_data_counter = 0;

            puts("Meow!");
            puts("Starting.");
