https://volttron.readthedocs.io/en/develop/platform-features/message-bus/vip/vip-json-rpc.html#remote-procedure-calls
from volttron.platform.vip import Agent, Core, RPC
def add(a, b):
'''Add two numbers and return the result'''
return a + b
class ExampleAgent(Agent):
@RPC.export
def say_hello(self, name):
'''Build and return a hello string'''
return 'Hello, %s!' % (name,)
@RPC.export('say_bye')
def bye(self, name):
'''Build and return a goodbye string'''
return 'Goodbye, %s.' % (name,)
@Core.receiver('setup')
def onsetup(self, sender, **kwargs):
self.vip.rpc.export('add')