это может быть не то, что вы хотите услышать, но я недавно взаимодействовал с SOAP в Ruby .... Это совсем не весело, ни один из доступных гемов не является полным, стабильным или хорошо документированным, и все, кажется, падают вниз при добавлении крошечной сложности (передача объекта, содержащего некоторые значения, а не просто передача целого числа или строки).
Я закончил тем, что вынюхивал запрос, сделанный клиентом .net, затем строил объекты, которые имеют метод .to_xml, брал объект XML Builder и добавлял свои собственные вещи ..
Он обрабатывает запрос, а затем каждый метод запроса на обслуживание настраивается для извлечения информации, необходимой для результата.
Очень ручной способ сделать это, и нужно добавлять больше для каждого метода, который мне нужно использовать, но, по крайней мере, он работает!
Некоторые другие парни, с которыми я работаю, имели успех, используя JRuby и Axis. Я держался в стороне от этого, так как хотел чистого решения Ruby.
Извините, я не могу вам помочь ... если вы хотите, я опубликую свой код для создания запроса на мыло ...