Prevent messages from being deleted

Is there a way to prevent the server from deleting a message after it has been delivered to the client? For example i would like a message to remain in the clients “inbox” until the client request it to be removed or a certain time has elapsed. Is the XEP-0013 the way it’'s solved? In that case, how many message do Openfire allow in cache, and how do one remove a message after a elapsed time??

Thanks!