code: def add_session(
      self,
      data_file: str,
      expiry: int = 0,
      uncompress: bool = False,
      session_id=None,
  ):
      start = time.time()
      logger.debug(f"Load Data from: {data_file}")
  
      if os.path.isdir(data_file):
          image_path = data_file
          logger.debug(f"Input Dir (Multiple Input): {image_path}")
      else:
          image_path = data_file
          logger.debug(f"Input File (Single): {image_path}")
  
          if uncompress:
              tmp_folder = tempfile.TemporaryDirectory().name
              os.makedirs(tmp_folder, exist_ok=True)
  
              logger.debug(f"UnArchive: {image_path} to {tmp_folder}")
              shutil.unpack_archive(data_file, tmp_folder)
              image_path = tmp_folder
  
      session_id = (
          session_id if session_id else str(uuid.uuid1()).lower()
      )
      path = os.path.join(self.store_path, session_id)
      expiry = expiry if expiry > 0 else self.expiry
  
      logger.debug(f"Using Path: {path} to save session")
      os.makedirs(path, exist_ok=True)
  
      meta: Dict = {}
      basename = os.path.basename(image_path)
  
      image_file = os.path.join(path, basename)
      shutil.move(image_path, image_file)
  
      session_info = SessionInfo()
      session_info.name = session_id
      session_info.path = path
      session_info.image = image_file
      session_info.meta = meta
      session_info.create_ts = int(time.time())
      session_info.last_access_ts = int(time.time())
      session_info.expiry = min(expiry, self.expiry)
  
      self._write_meta_info(session_id, session_info)
  
      self[session_id] = session_info
      logger.info(
          f"++ Time consumed to add session {session_id}: {time.time() - start}"
      )
      return session_id, session_info
  
imports: import json
  import logging
  import os
  import pathlib
  import shutil
  import tempfile
  import time
  import uuid
  from typing import Dict
label_desc: Use image node_id 5 for calling the Sessions obj's underlying member method code with example usage: obj.add_session(data_file, expiry, uncompress, session_id) and returns: session_id,  session_info