Physics.Raycast

How can I have different actions when the raycast intersect different rigibodies?

The problem is that I have a generic Raycast that when intersect the rigibodies (on this case elevator buttons) it calls a script.

But I have 4 different buttons that I need for each one of them to call a specific script. How can I do that?

I'm using this code for the raycast:

function Update () {

    highlightObject = null;

    var hitt : RaycastHit;

    if(Physics.Raycast(cameraa.ScreenPointToRay(Input.mousePosition), hitt, 10))
    {
        if(hitt.rigidbody)
        {
            //highlightObject = hitt.rigidbody.gameObject;
            if (Input.GetButtonDown("Fire1"))
            {
                var scriptHolder;
                scriptHolder = hitt.rigidbody.GetComponent("Elevator");
                scriptHolder.Call();
            }
        }
    }
}

Just check for hitt.tag or hitt.name and you will know what button you pressed. Just an easy fix for that:

        if (Input.GetButtonDown("Fire1")){
            var scriptHolder;
            scriptHolder = hitt.rigidbody.GetComponent("Elevator");
            scriptHolder.Call(hitt.name);
        }