id: xmlrpc_client
label: XMLRPC Client
flags: [ python ]

parameters:
-   id: addr
    label: Address
    dtype: string
    default: localhost
-   id: port
    label: Port
    dtype: int
    default: '8080'
-   id: callback
    label: Callback
    dtype: string
    default: set_
-   id: variable
    label: Variable
    dtype: raw

templates:
    imports: from xmlrpc.client import ServerProxy
    make: ServerProxy('http://'+${addr}+':${port}')
    callbacks:
    - ${no_quotes(callback)}(${variable})

documentation: |-
    This block will create an XMLRPC client. The client will execute the callback on the server when the variable is changed. The callback should be the name of a function registered on the server. The variable should be an expression containing the name of a variable in the flowgraph.

file_format: 1
