Hello Rob,
It depends a bit on how you have configured messaging.
You can use Message.IsNewConversation to check if the end user returned within the Threading Timeline setting, assuming you're not using Conversation Disconnect with "disconnect session" in your Messenger Configuration.
Another way would be to use the end users externalContactId and check for past conversations via APIs.
Even if you're not storing External Contacts a temporary contact will be stored for 60 days, that can be used to link past interactions,
------------------------------
Jan Heinonen
Contact Center Specialist
GlobalConnect AB
------------------------------