Abfrageergebnisse zählen

Mit der Methode matters.count können Sie die Anzahl der Nachrichten aus einer Gmail- oder Groups-Abfrage zählen, bevor Sie einen Export erstellen. Anhand dieser Informationen können Sie Ihre Abfragefilter verfeinern, um mehr oder weniger Ergebnisse zu erhalten.

Für die Arbeit mit Vault-Ressourcen muss das Konto die erforderlichen Vault-Berechtigungen und Zugriff auf den Fall haben. Damit auf eine Rechtsangelegenheit zugegriffen werden kann, muss die Rechtsangelegenheit vom Konto erstellt oder für das Konto freigegeben worden sein oder das Konto muss die Berechtigung Alle Rechtsangelegenheiten abrufen haben.

Im folgenden Beispiel wird gezeigt, wie Sie die Ergebnisse zählen, die von einer Abfrage für Nachrichten zurückgegeben werden, die die folgenden Kriterien erfüllen:

  • Nachrichten, die den Konten email1 und email2 gehören.
  • Schließt Nachrichtenentwürfe aus.
  • Nachrichten, die an ceo@solarmora.com gesendet werden.

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"]