Fork me on GitHub

About

Interactive Remote Process Control (IRPC) is a mix between Remote Process Control and Inter-Process Communication, and is aimed for its use over the network to publish services, specially where other protocol standards doesn’t fit at all. It’s meant to be used like XMLRPC, but IRPC has some powerful features that other protocols lack. It makes use of JSON for value encoding (which is a well known standard) and the message commands are very simple.

The main idea here is to enable remote applications (with probably a poor net connection between them) interact like they were local and they were two different parts of the same program. We want to publish services to do specific things, some of these things could be privileged actions like deleting comments on a blog or shutting down a service like Apache. And we also want to enable these services to (optionally) use other services as they need. So, when we write a new application, we mainly join the existent pieces and we have created a new GUI for those services, or a new service to manage those pieces in a different way.

Actual Status

I have one initial implementation for Python2.5 which covers most of the features for IRPCv1.

I’m using versions of that implementation for my own projects and seems to be very easy to use.

At the moment, IRPCv2 is only a draft and there is no implementation available

(There are lots of docs inside the git repo in spanish, with mixed ideas about what can be done in this protocol) I’m looking for people to help me with this project. If you have any ideas, please contact me!

Benefits

IRPC version 1

IRPC version 2

License

LGPLv2.1 or later

Authors

David Martínez Martí (deavidsedice@gmail.com)

Contact

Please contact me if you liked the main idea behind IRPC.

mailing list: irpcprotocol@googlegroups.com