In [ ]:
import os
import poppytools

from pypot.robot import from_json

config_path = os.path.join(os.path.dirname(poppytools.__file__), 'configuration', 'poppy_config.json')

poppy = from_json(config_path)
poppy.start_sync()

In [ ]:
for m in poppy.motors:
    m.compliant = True

In [ ]:
from poppytools.primitive.basic import StandPosition, SitPosition

stand = StandPosition(poppy)
sit = SitPosition(poppy)

In [ ]:
from poppytools.primitive.interaction import SmartCompliance

smart_compliance = SmartCompliance(poppy, poppy.motors)
smart_compliance.start()

In [ ]:
from pypot.primitive.move import MoveRecorder, MovePlayer

recorder = MoveRecorder(poppy, 50, ...)

In [ ]:
player = MovePlayer(poppy, recorder.move)

In [ ]:
from player import Sampler

sampler = Sampler(['sounds/kicks/kick08_good.wav',
                   ])

In [ ]:
from pypot.primitive import LoopPrimitive

class PlayerPrimitive(LoopPrimitive):
    def setup(self):
        self.kicking = False
        
    def update(self):
        p = self.robot.r_shoulder_y.present_position

        if p > -25 and not kicking:
            self.kicking = True
            sampler.play(0)

        if p < -50 and kicking:
            self.kicking = False
            
player = PlayerPrimitive(poppy, 10)

In [ ]:
import zerorpc

from pypot.server import RESTRobot

rest_robot = RESTRobot(poppy)
server = zerorpc.Server(rest_robot)
server.bind('tcp://193.50.110.78:1234')
server.run()