import time | |
import logging | |
class VirtualRobot: | |
def __init__(self): | |
self.state = "IDLE" | |
logging.info("π€ Robot initialized") | |
def perform_action(self, command): | |
command = (command or "").strip().lower() | |
if command == "wave": | |
return self._wave() | |
elif command.startswith("say"): | |
return self._speak(command[3:].strip()) | |
return "β Try 'wave' or 'say [message]'" | |
def _wave(self): | |
self.state = "WAVING" | |
time.sleep(0.5) | |
self.state = "IDLE" | |
return "π Wave complete!" | |
def _speak(self, message): | |
if not message: | |
return "β No message provided" | |
self.state = "SPEAKING" | |
time.sleep(max(0.3, len(message)*0.05)) | |
self.state = "IDLE" | |
return f"π£οΈ {message.capitalize()}" |