xmlrpclib
Implemented by Burak Arikan. If you see any bugs or have comments, send to arikan **at** media.mit.edu.
xmlrpclib is a basic XML-RPC library for Processing. XML-RPC is a widely adopted Remote Procedure Calling protocol that works over the Internet. It creates connections between procedures that are running in different applications, or on different machines. This library is based on the Apache XML-RPC 2 Java implementation that uses XML over HTTP to implement remote procedure calls.

The XML-RPC specification is written by Dave Winer and adopted in a variety of programming languages. Check out the links below for more information about the XML-RPC protocol.

The XML-RPC specification defines the following available data types:

XML tag name Java Type Example
<i4> or <int> Integer 3
<boolean> Boolean true
<string> String hello
<double> Double 3.792
<base64> byte[] HJlYWQgdGhpcyE=
<dateTime.iso8601> Date 20060726T14:08:55
<array> Vector {"boston", "istanbul", "berlin"}
<struct> Hashtable {"food"="cheese", "drink"="wine"}

Currently many web services have application programming interfaces (API) that work through the XML-RPC protocol. By using the XmlrpcClient in Processing, you can incorporate the available data and processes of these web services in your program. By using the XmlrpcServer in Processing, you can open up the methods of your program as an interface to other programs over the Internet.


Related

XML-RPC Specification, Dave Winer

XML-RPC for Newbies, Dave Winer

XML-RPC HOWTO, Eric Kidd

With XmlrpcServer your Processing application can be remotely queried from other programming languages such as Ruby or Python. For example, sometimes I run a visual composition in Processing with the XmlrpcServer and set parameters from the Ruby console (irb) while the composition is running.
  Download & Installation

xmlrpclib.zip


Extract the contents and copy the xmlrpclib folder into the "libraries" folder of your Processing installation. Upon restarting Processing, xmlrpclib will be available as a public library from the "Import" menu.


Examples

simple_server
simple_client

drawing_server
drawing_client

First, run the server. See the URL it is serving at, put it in the client. While the server is running, run the client and enjoy.


Reference

XmlrpcServer
add()
remove()
stop()
ip()
filter()
accept()
deny()

XmlrpcClient
execute()
address()