input: from typing import Dict, Any
  
  def makeWebhookResult(req: Dict[str, Any]) -> Dict[str, Any]:
      """Process a POST request JSON payload and generate a response based on the action requested.
      The response should be a JSON object containing a 'speech' field with the text to be spoken by the voice assistant.
  
      >>> makeWebhookResult({'result': {'action': 'productos.sura', 'parameters': {'tipo_cliente': 'vip'}})
      {'speech': 'Buscando productos para vip', 'displayText': 'Buscando productos para vip', 'source': 'apiai-onlinestore-shipping'}
      >>> makeWebhookResult({'result': {'action': 'info.especialistas', 'parameters': {'plan-salud': 'medico', 'ciudad': 'bogota', 'especialidad': 'cardiologia'}})
      {'speech': 'Los profesionales que coinciden con tu busqueda son: \nMedico Name\n Direccion: Bogota Address\n Telefono: Bogota Phone\n', 'displayText': 'Los profesionales que coinciden con tu busqueda son: \nMedico Name\n Direccion: Bogota Address\n Telefono: Bogota Phone\n', 'source': 'apiai-onlinestore-shipping'}
      """
output:     result = req.get("result")
      action = result.get("action")
      parameters = result.get("parameters")
  
      if action == "productos.sura":
          tipo_cliente = parameters.get("tipo_cliente")
          speech = f"Buscando productos para {tipo_cliente}"
          displayText = speech
      elif action == "info.especialistas":
          plan_salud = parameters.get("plan-salud")
          ciudad = parameters.get("ciudad")
          especialidad = parameters.get("especialidad")
          speech = f"Los profesionales que coinciden con tu busqueda son: \n{plan_salud.capitalize()} Name\n Direccion: {ciudad.capitalize()} Address\n Telefono: {ciudad.capitalize()} Phone\n"
          displayText = speech
      else:
          speech = "Acción no reconocida"
          displayText = speech
  
      return {
          "speech": speech,
          "displayText": displayText,
          "source": "apiai-onlinestore-shipping"
      }