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 Vault yang diperlukan hak istimewa dan akses ke itu penting. Untuk mengakses masalah, akun yang membuat masalah tersebut, memiliki kasus Anda dibagikan kepada mereka, atau memiliki hak istimewa Melihat Semua Masalah.

Contoh berikut menunjukkan cara menghitung hasil yang ditampilkan kueri untuk pesan yang memenuhi kriteria berikut:

  • pesan yang dimiliki oleh akun email1 dan email2.
  • tidak termasuk pesan draf.
  • pesan dikirim ke 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"]