The getLastAccessedTime method of a SIP session does not provide accurate results.
Applications that need to keep accurate track of the lastAccessedTime must store it themselves into the SipApplicationSession.
synchronized (sas) { Long last = (Long) sas.getAttribute("myLastAccessedTime"); if (last == null) {last = 0}; // do something with the last one // and... // set the new one. sas.setAttribute("myLastAccessedTime", System.currentTimeMillis()); }