Have the player hold an orange. If you get orange juice, it's being squeezed.
I've had mixed results with the '(direction) of actor was hit' checks, but that would be the simplest solution. I don't think it's reliable with non-rectangular collision boundaries--at least, that's the scenario I seem to have trouble with.
You can make your own '(direction) of actor was hit' check by detecting if any collision has occurred, then comparing the positions of both actors. I'd use a two-boolean check (the strategy that the on-ground behavior included with the jump and run kit uses) to set a flag for each of the four directions. Collision with ground (if you have gravity in your scene, that is) can also count as collided on bottom.
Collision resolution will eventually push the actor out of bounds. The collision box won't compress automatically, so the only thing left to give is the position of the box itself. You can switch the player to an animation with a squeezed collision box... or even just have a squeezed animation with no collision box at all.