Metric reasoning about Lambda-Terms: The general case