Zliczanie wyników zapytania
Za pomocą metody matters.count
możesz policzyć wiadomości z zapytania dotyczącego Gmaila lub Grup dyskusyjnych, zanim utworzysz eksport. Dzięki tym informacjom możesz sprecyzować filtry zapytań, aby wyświetlić więcej lub mniej wyników.
Aby móc korzystać z zasobów Vault, konto musi mieć wymagane uprawnienia w Vault i dostęp do sprawy. Aby uzyskać dostęp do sprawy, konto musi utworzyć sprawę, udostępnić ją użytkownikowi lub mieć uprawnienie Wyświetlanie wszystkich spraw.
Z przykładu poniżej dowiesz się, jak zliczać wyniki zwrócone przez zapytanie dotyczące wiadomości spełniających te kryteria:
- wiadomości należące do kont
email1
iemail2
. - nie uwzględnia wersji roboczych wiadomości.
- wiadomości wysłane na adres
ceo@solarmora.com
.
Java
public Long count(Vault client, String matterId) { AccountInfo emailsToSearch = new AccountInfo().setEmails(ImmutableList.of("email1", "email2")); MailOptions mailQueryOptions = new MailOptions().setExcludeDrafts(true); String queryTerms = "to:ceo@solarmora.com"; Query query = new Query() .setCorpus("MAIL") .setDataScope("ALL_DATA") .setSearchMethod("ACCOUNT") .setAccountInfo(emailsToSearch) .setTerms(queryTerms); CountArtifactsRequest request = new CountArtifactsRequest().setQuery(query); Operation operation = client.matters().count(matterId, request).execute(); while(!operation.getDone()) { sleep(2000); operation = service.operations().get(operation.getName()).execute(); } if(operation.getResponse() != null) { return Long.parseLong(operation.getResponse.get("total_count").toString()); } return -1; }
Python
def count(service, matter_id): emails_to_search = ['email1', 'email2'] mail_query_options = {'excludeDrafts': True} query_terms = 'to:ceo@solarmora.com' mail_query = { 'corpus': 'MAIL', 'dataScope': 'ALL_DATA', 'searchMethod': 'ACCOUNT', 'accountInfo': { 'emails': emails_to_search }, 'terms': query_terms, 'mailOptions': mail_query_options, } request = { 'query': mail_query } operation = service.matters().count(matterId=matter_id, body=request).execute() while not operation.getDone(): time.sleep(2) operation = service.operations().get(name=operation.getName()).execute() if operation.getResponse() is None: return -1 return operation.getResponse()["total_count"]