Esto debería ayudar:
http://rubyforge.org/forum/forum.php?thread_id=11295&forum_id =1078
La muestra es la siguiente:
msi está en el estado de la variable ENTRADA y crédito_restante son las variables SALIDA
cursor = conn.parse ('begin ROAMFLEX.GETMSISDNSTATUS(:msi, :status, :remaining_credit); end;')
cursor.bind_param(':msi', '250979923')
cursor.bind_param(':status', nil, String, 20)
cursor.bind_param(':remaining_credit', nil, String, 50)
cursor.exec()
puts cursor[':status']
puts cursor[':remaining_credit_amount']