The action name can't be returned because the action is nowhere stored in the entity. An entity action is just a normal function with the only exception that the "me" pointer is set to that entity.
What I could do is implementing a function that returns a name for a function address, f.i.
char* name = engine_getfunctionname(player_act);
Would that help?