private void startUserInput() {
		router.registerRMCCommandSubscriber(WIDGET_ID, METHOD_NAME, CALL_ID, this.commandHandler);

		try {
			this.router.publishCommand(new WidgetMethodCommand(AbstractCommand.METHOD_CALL, METHOD_NAME, CALL_ID, WIDGET_ID, null));
		} catch (InterruptedException e) {
			e.printStackTrace();
		}

		(new Thread() {
			public void run() {
				try {
					while (true) {
						String url = VideoListExample.this.getUserInput("URL to play (q to quit): ");

						if (url == null || url.equals("")) {
							continue;
						} else if (url.equals("q") || url.equals("quit")) {
							break;
						}

						JSONObject msgObj = new JSONObject();
						msgObj.put("url", url);
						msgObj.put("method", "launchvideo");
						VideoListExample.this.router.publishCommand(new WidgetLaunchMethodCommand("callid-" + url, WIDGET_ID, msgObj.toString()));
					}
					VideoListExample.this.closeConnectionAndExit();

				} catch (InterruptedException e) {
					e.printStackTrace();
				} catch (JSONException e) {
					e.printStackTrace();
				}
			}
		}).start();

	}