ecoscope.io.smartio#

Module Contents#

ecoscope.io.smartio.logger#
class ecoscope.io.smartio.SmartIO(**kwargs)[source]#
_urlBase#
_username#
_password#
_session#
_token#
_verify_ssl#
login()[source]#
Return type:

None

query_data(url, params=None)[source]#
Parameters:
  • url (str)

  • params (dict | None)

Return type:

pandas.DataFrame

query_geojson_data(url, params=None)[source]#
Parameters:
  • url (str)

  • params (dict | None)

Return type:

geopandas.GeoDataFrame | None

get_patrols_list(ca_uuid, language_uuid, start, end, patrol_mandate, patrol_transport)[source]#
Parameters:
  • ca_uuid (str)

  • language_uuid (str)

  • start (str)

  • end (str)

  • patrol_mandate (str | None)

  • patrol_transport (str | None)

Return type:

geopandas.GeoDataFrame | None

extract_coordinates(gdf)[source]#

Extract coordinates and timestamps from a GeoDataFrame with MultiLineString geometries.

Parameters:

gdf (gpd.GeoDataFrame) – GeoDataFrame with MultiLineString geometries

Returns:

Three lists containing longitudes, latitudes, and timestamps

Return type:

tuple

process_patrols_gdf(df)[source]#

Process multiple geometries in a vectorized way. :param df: Input DataFrame with geometry column containing MULTILINESTRING Z data

Returns: gpd.GeoDataFrame: Processed GeoDataFrame with expanded coordinate data

Parameters:

df (pandas.DataFrame)

Return type:

geopandas.GeoDataFrame

get_patrol_observations(ca_uuid, language_uuid, start, end, patrol_mandate=None, patrol_transport=None, window_size_in_days=7)[source]#
Parameters:
  • ca_uuid (str)

  • language_uuid (str)

  • start (str)

  • end (str)

  • patrol_mandate (str | None)

  • patrol_transport (str | None)

  • window_size_in_days (int)

Return type:

ecoscope.Relocations | None

get_events(ca_uuid, language_uuid, start, end)[source]#
Parameters:
  • ca_uuid (str)

  • language_uuid (str)

  • start (str)

  • end (str)

Return type:

geopandas.GeoDataFrame

extract_event_attributes(attr_str)[source]#
Parameters:

attr_str (str)

Return type:

dict