code: public Slot requestSlot(String filename, long fileSize) throws InterruptedException,
              XMPPException.XMPPErrorException, SmackException {
          return requestSlot(filename, fileSize, null, null);
      }
docs: Request a new upload slot from default upload service (if discovered). When you get slot you should upload file
  to PUT URL and share GET URL. Note that this is a synchronous call -- Smack must wait for the server response.
  
  @param filename name of file to be uploaded
  @param fileSize file size in bytes.
  @return file upload Slot in case of success
  @throws IllegalArgumentException if fileSize is less than or equal to zero or greater than the maximum size
  supported by the service.
  @throws InterruptedException
  @throws XMPPException.XMPPErrorException
  @throws SmackException.NotConnectedException
  @throws SmackException.NoResponseException