Firstly you can use HandleSessionEventL to monitor any email service. e.g. new email, delete email, change email.
And you also can manully get all email entries of any service.
Code:
void GetSelectionL(TMsvId aServiceId, TMsvId aParent, CMsvEntrySelection& aSelection)
{
CMsvEntryFilter* filter = CMsvEntryFilter::NewLC();
filter->SetType( KUidMsvMessageEntry );
filter->SetOrder(TMsvSelectionOrdering(KMsvNoGrouping, EMsvSortByDate, ETrue));
filter->SetService(aServiceId);
filter->SetMtm(iMtmId);
iSession->GetChildIdsL( aParent, *filter, aSelection );
CleanupStack::PopAndDestroy(filter);
}