As we don’t know what your application is, or does, but assume that it used to work and that you have not altered it in any way - i.e. “it has just stopped working”. I would start with the very basic question of, “is the module receiving texts?”.
From there, I would also ask the module if there is a queue of texts built up. Lets say, for instance, your application “only” looks at the text message in the first slot and once it has dealt with that message, it deletes it. Well what if, for some reason, it didn’t delete that message? Any further message would come in to slot 2, 3, 4 etc. so we need to know that. If there are texts built up, delete them and monitor the texts from there until you find the cause.
That’s the plan, so let’s get to it:
In a terminal that has access to the modem through AT commands, do the following:
ATE1 // this turns on the echo - should return “OK”
AT+CMGF=1 // this sets the text mode so that “you” can read it - should return “OK”
AT+CMGL=“REC UNREAD” //This reads the unread texts - should return texts unread or OK if none
AT+CMGL=“ALL” //this reads all of the text messages stored.
To delete them and return the modem to the default state as far as the text messages are concerned:
AT+CMGD=1,4 // this deletes all messages. confirm that with AT+CMGL=“ALL”
Then text the module from the dasboard and check any incoming messages with AT+CMGL=“ALL” to see if any further messages arrive.
Delete that message with AT+CMGD=1 or AT+CMGD=1,4
Put the module back to PDU mode:
Then restart your application to find out if it has fixed the problem.