כדי להגדיר תשובה אוטומטית, צריך להזין נושא ותוכן לתשובה, בפורמט HTML או בטקסט פשוט. אפשר להפעיל אותו ללא הגבלת זמן או להגביל אותו לתקופה מוגדרת. אפשר גם להגביל את התשובה האוטומטית לאנשי קשר מוכרים או לחברים בדומיין.
דוגמה להגדרת מענה אוטומטי לתקופה קבועה, עם הגבלת התשובות למשתמשים באותו דומיין:
importcom.google.api.client.googleapis.json.GoogleJsonError;importcom.google.api.client.googleapis.json.GoogleJsonResponseException;importcom.google.api.client.http.HttpRequestInitializer;importcom.google.api.client.http.javanet.NetHttpTransport;importcom.google.api.client.json.gson.GsonFactory;importcom.google.api.services.gmail.Gmail;importcom.google.api.services.gmail.GmailScopes;importcom.google.api.services.gmail.model.VacationSettings;importcom.google.auth.http.HttpCredentialsAdapter;importcom.google.auth.oauth2.GoogleCredentials;importjava.io.IOException;importjava.time.LocalDateTime;importjava.time.ZoneOffset;importjava.time.ZonedDateTime;/* Class to demonstrate the use of Gmail Enable Auto Reply API*/publicclassEnableAutoReply{/** * Enables the auto reply * * @return the reply message and response metadata. * @throws IOException - if service account credentials file not found. */publicstaticVacationSettingsautoReply()throwsIOException{/* Load pre-authorized user credentials from the environment. TODO(developer) - See https://developers.google.com/identity for guides on implementing OAuth2 for your application. */GoogleCredentialscredentials=GoogleCredentials.getApplicationDefault().createScoped(GmailScopes.GMAIL_SETTINGS_BASIC);HttpRequestInitializerrequestInitializer=newHttpCredentialsAdapter(credentials);// Create the gmail API clientGmailservice=newGmail.Builder(newNetHttpTransport(),GsonFactory.getDefaultInstance(),requestInitializer).setApplicationName("Gmail samples").build();try{// Enable auto reply by restricting domain with start time and end timeVacationSettingsvacationSettings=newVacationSettings().setEnableAutoReply(true).setResponseBodyHtml("I am on vacation and will reply when I am back in the office. Thanks!").setRestrictToDomain(true).setStartTime(LocalDateTime.now().toEpochSecond(ZoneOffset.from(ZonedDateTime.now()))*1000).setEndTime(LocalDateTime.now().plusDays(7).toEpochSecond(ZoneOffset.from(ZonedDateTime.now()))*1000);VacationSettingsresponse=service.users().settings().updateVacation("me",vacationSettings).execute();// Prints the auto-reply response bodySystem.out.println("Enabled auto reply with message : "+response.getResponseBodyHtml());returnresponse;}catch(GoogleJsonResponseExceptione){// TODO(developer) - handle error appropriatelyGoogleJsonErrorerror=e.getDetails();if(error.getCode()==403){System.err.println("Unable to enable auto reply: "+e.getDetails());}else{throwe;}}returnnull;}}
fromdatetimeimportdatetime,timedeltaimportgoogle.authfromgoogleapiclient.discoveryimportbuildfromgoogleapiclient.errorsimportHttpErrorfromnumpyimportlongdefenable_auto_reply():"""Enable auto reply. Returns:Draft object, including reply message and response meta data. Load pre-authorized user credentials from the environment. TODO(developer) - See https://developers.google.com/identity for guides on implementing OAuth2 for the application. """creds,_=google.auth.default()try:# create gmail api clientservice=build("gmail","v1",credentials=creds)epoch=datetime.utcfromtimestamp(0)now=datetime.now()start_time=(now-epoch).total_seconds()*1000end_time=(now+timedelta(days=7)-epoch).total_seconds()*1000vacation_settings={"enableAutoReply":True,"responseBodyHtml":("I am on vacation and will reply when I am ""back in the office. Thanks!"),"restrictToDomain":True,"startTime":long(start_time),"endTime":long(end_time),}# pylint: disable=E1101response=(service.users().settings().updateVacation(userId="me",body=vacation_settings).execute())print(f"Enabled AutoReply with message: {response.get('responseBodyHtml')}")exceptHttpErroraserror:print(f"An error occurred: {error}")response=Nonereturnresponseif__name__=="__main__":enable_auto_reply()
כדי להשבית את המענה האוטומטי, מעדכנים את המשאב ומגדירים את enableAutoReply לערך
false. אם מוגדרת endTime, התגובה האוטומטית מושבתת אוטומטית אחרי שהזמן שצוין חלף.
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-08-29 (שעון UTC)."],[],[]]