int values[]={
0 };
The size of the array is defined either in the square brackets or counting initializers. Pray, tell what advantage a one element array has over a scalar variable.
int X=values[1];
if (X = 'hey') {
A one element array does not have an element at index 1. The value X can be assigned the multibyte character 'hey' but what good is that?
The problem with something like this is that the text message HAS to be 'hey'
If you expect to store "hey" in one character, you are going to be disappointed. Why you want to store characters in an int escapes me. How you think you are going to store 4 characters, including the trailing NULL, in a two byte int escapes me.
What needs to change in the code so that ANY text message notification will set off the vibration motor on the Arduino side?
Lots of stuff. To start with, getIntValues() is not the way to retrieve a test message.