public SlackConnector(String slackAuthToken) throws IOException {
    log.info("opening slack connection...");
    slackConnection = SlackSessionFactory.createWebSocketSlackSession(slackAuthToken);

    slackConnection.connect();
    log.info("slack connection opened");

    slackConnection.addMessagePostedListener(this::onMessagePosted);

    messageListeners = new ArrayList<>();
  }