How to have facial animations while having different body animations?

Hi there. I’m making a player model and want my players face to be able to blink by itself without any sort of input. Then I would also like to have it so the player model can play certain animations like smiling, or getting angry on queue via programming. I also want the blinking to continue playing whenever I queue the smiling or angry animations. I want to be able to do these while still playing animations like running or walking or standing still. In summary I want the facial animations and the body animations to be independent of each other while still looking seamless. So where do I start with this? Do they need to be different meshes and just attach the head mesh to a bone on the body mesh? Any info on how to accomplish this would be appreciated. Thanks in advance.