anchor.diff:      {ok, ServiceName} = rvi_common:get_json_element(["service_name"], Args),
       {ok, Timeout} = rvi_common:get_json_element(["timeout"], Args),
       {ok, Parameters} = rvi_common:get_json_element(["parameters"], Args),
  -    {ok, CallingService} = rvi_common:get_json_element(["calling_service"], Args),
  -    handle_local_message( ServiceName, Timeout, Parameters, CallingService);
  +    handle_local_message( ServiceName, Timeout, Parameters);
   
   handle_rpc("handle_remote_message", Args) ->
       { ok, ServiceName } = rvi_common:get_json_element(["service_name"], Args),
  
positive.code: %% Websocket iface 
  wse_register_service(Ws, Service ) ->
      ?debug("service_edge_rpc:wse_register_service(~p) service:     ~p", [ Ws, Service ]),
      register_service(Service, "ws:" ++ pid_to_list(Ws)).
  
  wse_message(Ws, ServiceName, Timeout, JSONParameters, CallingService) ->
      %% Parameters are delivered as JSON. Decode into tuple
      { ok, Parameters } = exo_json:decode_string(JSONParameters),
      ?debug("service_edge_rpc:wse_message(~p) ServiceName:          ~p", [ Ws, ServiceName ]),
      ?debug("service_edge_rpc:wse_message(~p) Timeout:         ~p", [ Ws, Timeout]),
      ?debug("service_edge_rpc:wse_message(~p) CallingService:  ~p", [ Ws, CallingService ]),
      ?debug("service_edge_rpc:wse_message(~p) Parameters:      ~p", [ Ws, Parameters ]),
      handle_local_message( ServiceName, Timeout,  [Parameters] , CallingService).
  
  
  %% Handle calls received through regular gen_server calls, routed byh
  
negative.code:     announce_service_availability(services_unavailable, LocalServiceAddresses, Services),
      { reply, {ok, [ { status, rvi_common:json_rpc_status(ok)} ] }, State };
  
  handle_call({rvi_call, handle_remote_message, Args}, _From, State) ->
      { _, ServiceName } = lists:keyfind(service_name, 1, Args),
      { _, Timeout } = lists:keyfind(timeout, 1, Args),
  