def call_error(call_id, error_uri, error_desc, error_details = nil)
      msg = [type[:CALLERROR], call_id, error_uri, error_desc, error_details]
      msg.delete_if { |x| x.nil? }
      msg.to_json
    end
def call_error(call_id, error_uri, error_desc, error_details = nil)
      msg = [type[:CALLERROR], call_id, error_uri, error_desc, error_details]
      msg.delete_if { |x| x.nil? }
      msg.to_json
    end
Builds the RPC CALLERROR message (server to client)
 	[ TYPE_ID_CALLERROR , callID , errorURI , errorDesc , errorDetails(Optional) ]
 @param call_id [String] This should match the call ID given by the client
 	by the client.
 @param error_uri [String]  A CURIE or URI identifying the error.
 @param error_desc [String] A description of the error that occured.
 @param error_details [String] Optional. Used to communicate application
   error details, defined by the error_uri.
 @return [String] The ERRORRESULT message as a JSON string.