Menghitung hasil kueri
Anda dapat menggunakan metode matters.count
untuk menghitung pesan dari kueri Gmail atau Grup sebelum membuat ekspor. Dengan informasi ini, Anda dapat menyaring filter kueri untuk menampilkan lebih banyak atau lebih sedikit hasil.
Untuk menggunakan resource Vault, akun harus memiliki hak istimewa Vault yang diperlukan dan akses ke materi. Untuk mengakses masalah, akun harus telah membuat masalah, memiliki masalah yang dibagikan kepadanya, atau memiliki hak istimewa Lihat Semua Masalah.
Contoh berikut menunjukkan cara menghitung hasil yang ditampilkan oleh kueri untuk pesan yang memenuhi kriteria berikut:
- pesan yang dimiliki oleh akun
email1
danemail2
. - mengecualikan pesan draf.
- pesan yang dikirim ke
ceo@solarmora.com
.
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; }
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"]