How to get the normal of the face which was hit in a collision? I would like to make an object stay at the height (Z) and velocity it was created at (it's created from another object with an Edit object actuator). Ideally it should be allowed to bounce up/down, but not allowed to fall (think very slow light ray).
I would like this object to bounce off only certain objects.

I couldn't get an object to do this with collision groups + physics (it seems like it should be possible though, so if it is, please say so :)

I thought I would try and handle bouncing with python, however I can't figure out how to get the normal of the face it hits on collision (I'm using a collision sensor with a property)

How can I get an object to behave like this?

Blendfile
You could try to use a ray sensor:

c = bge.logic.getCurrentController()
ray = c.sensors["raySensorName"]

if ray.positive:
    pos_vec = Vector(ray.hitPosition)
    normal_vec = Vector(ray.hitNormal)