Source code for viam.services.navigation.service

from grpclib.server import Stream

from viam.proto.common import DoCommandRequest, DoCommandResponse, GetStatusRequest, GetStatusResponse
from viam.proto.service.navigation import (
    AddLocationRequest,
    AddLocationResponse,
    AddRouteRequest,
    AddRouteResponse,
    AddZoneRequest,
    AddZoneResponse,
    CancelRequest,
    CancelResponse,
    DeleteLocationRequest,
    DeleteLocationResponse,
    DeleteRouteRequest,
    DeleteRouteResponse,
    DeleteZoneRequest,
    DeleteZoneResponse,
    ExecutePlanRequest,
    ExecutePlanResponse,
    GetCostmapRequest,
    GetCostmapResponse,
    GetLocationRequest,
    GetLocationResponse,
    GetNavigationStatusRequest,
    GetNavigationStatusResponse,
    GetPositionRequest,
    GetPositionResponse,
    GetPropertiesRequest,
    GetPropertiesResponse,
    GetRouteRequest,
    GetRouteResponse,
    GetZoneRequest,
    GetZoneResponse,
    GoToLocationRequest,
    GoToLocationResponse,
    GoToPointRequest,
    GoToPointResponse,
    ListLocationsRequest,
    ListLocationsResponse,
    ListRoutesRequest,
    ListRoutesResponse,
    ListZonesRequest,
    ListZonesResponse,
    NavigateRouteRequest,
    NavigateRouteResponse,
    NavigateToLocationRequest,
    NavigateToLocationResponse,
    NavigateToPointRequest,
    NavigateToPointResponse,
    NavigationServiceBase,
    PlanToLocationRequest,
    PlanToLocationResponse,
    PlanToPointRequest,
    PlanToPointResponse,
    ResumeRequest,
    ResumeResponse,
    SuspendRequest,
    SuspendResponse,
    UpdateLocationRequest,
    UpdateLocationResponse,
    UpdateRouteRequest,
    UpdateRouteResponse,
    UpdateZoneRequest,
    UpdateZoneResponse,
)
from viam.resource.rpc_service_base import ResourceRPCServiceBase
from viam.utils import dict_to_struct, struct_to_dict

from .navigation import Navigation