File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -51,6 +51,7 @@ class Events(Enum):
5151 robot_observed_motion = "robot_observed_motion" #: Robot event dispatched when Vector observes motion.
5252 robot_observed_face = "robot_observed_face" #: Robot event for when a face is observed by the robot.
5353 robot_changed_observed_face_id = "robot_changed_observed_face_id" #: Robot event for when a known face changes its id.
54+ robot_erased_enrolled_face = "robot_erased_enrolled_face" #: Robot event for when an enrolled face has been removed from the robot.
5455
5556 wake_word = "wake_word" #: Robot event triggered when Vector hears "Hey Vector".
5657 user_intent = "user_intent" #: Robot event triggered after Vector processes voice commands.
Original file line number Diff line number Diff line change @@ -571,7 +571,7 @@ class FaceComponent(util.Component):
571571 """Manage the state of the faces on the robot."""
572572
573573 @connection .on_connection_thread (requires_control = False )
574- async def request_enrolled_names (self ) -> protocol .RequestEnrolledNamesRequest :
574+ async def request_enrolled_names (self ) -> protocol .RequestEnrolledNamesResponse :
575575 """Asks the robot for the list of names attached to faces that it can identify.
576576
577577 .. testcode::
@@ -612,10 +612,24 @@ async def erase_enrolled_face_by_id(self, face_id: int):
612612
613613 .. testcode::
614614
615+ import time
615616 import anki_vector
617+ from anki_vector.events import Events
618+
619+ def on_robot_erased_enrolled_face(robot, event_type, event):
620+ print(f"Face has been erased from robot. Event: {event_type} = {event}")
616621
617622 with anki_vector.Robot() as robot:
618- robot.faces.erase_enrolled_face_by_id(1)
623+ robot.events.subscribe(on_robot_erased_enrolled_face, Events.robot_erased_enrolled_face)
624+
625+ name_data_list = robot.faces.request_enrolled_names()
626+ print(f"Enrolled names: {name_data_list}")
627+
628+ # Deletes all enrolled faces from Vector. Use with care!
629+ for face in name_data_list.faces:
630+ robot.faces.erase_enrolled_face_by_id(face.face_id)
631+
632+ time.sleep(3)
619633 """
620634 req = protocol .EraseEnrolledFaceByIDRequest (face_id = face_id )
621635 return await self .grpc_interface .EraseEnrolledFaceByID (req )
You can’t perform that action at this time.
0 commit comments