How can I pull group chat log before a specified time?

The instant chat app I am developing provide a new groupchat participant with the right to load more logs than he is initially given. The ideal interface would be like the following:

List of messages *loadMoreMsg (*long specifiedtime, int specifiedcount)

Is there anyway to achieve that without hacking the openfire source code? I know that using the monitor plugin is a solution, the user can load earlier log by querying the ofMessageArchive database. However, there is a known delay of about 20 to 30 seconds between the message is received by server and the message is stored into database( check this link: http://community.igniterealtime.org/message/206192#206192). And the delay is not acceptable for my app. Is there any elegant way to achieve that?