def _check_available_data(archive, arc_type, day):
available_stations = []<EOL>if arc_type.lower() == '<STR_LIT>':<EOL><INDENT>wavefiles = glob.glob(os.path.join(archive, day.strftime('<STR_LIT>'),<EOL>day.strftime('<STR_LIT>'), '<STR_LIT:*>'))<EOL>for wavefile in wavefiles:<EOL><INDENT>header = read(wavefile, headonly=True)<EOL>available_stations.append((header[<NUM_LIT:0>].stats.station,<EOL>header[<NUM_LIT:0>].stats.channel))<EOL><DEDENT><DEDENT>elif arc_type.lower() == '<STR_LIT>':<EOL><INDENT>client = SeishubClient(archive)<EOL>st = client.get_previews(starttime=UTCDateTime(day),<EOL>endtime=UTCDateTime(day) + <NUM_LIT>)<EOL>for tr in st:<EOL><INDENT>available_stations.append((tr.stats.station, tr.stats.channel))<EOL><DEDENT><DEDENT>elif arc_type.lower() == '<STR_LIT>':<EOL><INDENT>client = FDSNClient(archive)<EOL>inventory = client.get_stations(starttime=UTCDateTime(day),<EOL>endtime=UTCDateTime(day) + <NUM_LIT>,<EOL>level='<STR_LIT>')<EOL>for network in inventory:<EOL><INDENT>for station in network:<EOL><INDENT>for channel in station:<EOL><INDENT>available_stations.append((station.code,<EOL>channel.code))<EOL><DEDENT><DEDENT><DEDENT><DEDENT>return available_stations<EOL>
Function to check what stations are available in the archive for a given \
day.

:type archive: str
:param archive: The archive source
:type arc_type: str
:param arc_type: The type of archive, can be:
:type day: datetime.date
:param day: Date to retrieve data for

:returns: list of tuples of (station, channel) as available.

.. note:: Currently the seishub options are untested.