How can I send and receive data via RPC? I haven’t found any RPC libraries for Elixir. Can I instead use an http library?
you have the erlang rpc library
:rpc.call(node, module, fun, args)
$ erl -man rpc
Can I do that via an http client such as HttpPoison by providing all necessary headers and body?
No. This is a pure erlang/elixir solution which can do RPC between erlang/elixir nodes.
I guess I am not quite sure exactly what you are after? xml-rpc? soap?
I have an external command line application. Not Erlang/Elixir. And it has RPC interface. I’m able to call its RPC methods via curl Thus I should be able to do the same thing via any http client in Elixir?
Yes, any elixir/erlang HTTP client will work.
HttpPoison as you mentioned. You also have the built-in erlang httpc client if you want to avoid dependencies.