Skip to content
This repository has been archived by the owner on Nov 5, 2022. It is now read-only.

Unable to block room using Google calendar Api #468

Open
aniltechjini opened this issue Feb 28, 2017 · 0 comments
Open

Unable to block room using Google calendar Api #468

aniltechjini opened this issue Feb 28, 2017 · 0 comments

Comments

@aniltechjini
Copy link

public class CalendarQuickstart {

private static final String APPLICATION_NAME = "API Quickstart";

private static final java.io.File DATA_STORE_DIR = new java.io.File(System.getProperty("user.home"),
".credentials/calendar-java-quickstart");

private static FileDataStoreFactory DATA_STORE_FACTORY;

private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();

private static HttpTransport HTTP_TRANSPORT;

private static final List < String > SCOPES = Arrays.asList(CalendarScopes.CALENDAR);

static {
try {
HTTP_TRANSPORT = GoogleNetHttpTransport.newTrustedTransport();
DATA_STORE_FACTORY = new FileDataStoreFactory(DATA_STORE_DIR);
} catch (Throwable t) {
t.printStackTrace();
System.exit(1);
}
}

public static Credential authorize() throws IOException {
// Load client secrets.
/*InputStream in = CalendarQuickstart.class.getResourceAsStream("/client_secret.json");
GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(in));

    // Build flow and trigger user authorization request.
    GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(HTTP_TRANSPORT, JSON_FACTORY,
            clientSecrets, SCOPES).setDataStoreFactory(DATA_STORE_FACTORY).setAccessType("offline").build();
    Credential credential = new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user");
    System.out.println("Credentials saved to " + DATA_STORE_DIR.getAbsolutePath());
    return credential;*/
 Credential credential = GoogleCredential.fromStream(CalendarQuickstart.class.getResourceAsStream("/client_secret.json"))
     .createScoped(SCOPES);
 return credential;

}

public static com.google.api.services.calendar.Calendar getCalendarService() throws IOException {
Credential credential = authorize();
return new com.google.api.services.calendar.Calendar.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME).build();
}

public static void createEvent() throws IOException {
Event event = new Event().setSummary("Google I/O 2015")
.setDescription("A chance to hear more about Google's developer products.");

 DateTime startDateTime = new DateTime("2017-02-27T22:00:00+05:30");

 EventDateTime start = new EventDateTime().setDateTime(startDateTime).setTimeZone("Asia/Kolkata");
 event.setStart(start);

 DateTime endDateTime = new DateTime("2017-02-27T23:00:00+05:30");
 EventDateTime end = new EventDateTime().setDateTime(endDateTime).setTimeZone("Asia/Kolkata");
 event.setEnd(end);



 EventAttendee[] attendees = new EventAttendee[] {
     new EventAttendee().setEmail("[email protected]"),
         new EventAttendee().setEmail("[email protected]"), new EventAttendee().
     setEmail("company.com_35353134363037362d333130@resource.calendar.google.com").setResponseStatus("accepted")
 };
 event.setAttendees(Arrays.asList(attendees));



 EventReminder[] reminderOverrides = new EventReminder[] {
     new EventReminder().setMethod("email").setMinutes(24 * 60),
         new EventReminder().setMethod("popup").setMinutes(10),
 };
 Event.Reminders reminders = new Event.Reminders().setUseDefault(false)
     .setOverrides(Arrays.asList(reminderOverrides));
 event.setReminders(reminders);

 String calendarId = "primary";
 event = getCalendarService().events().insert(calendarId, event).execute();
 System.out.printf("Event created: %s\n", event.getId());

}

public static void updateEvent() throws IOException {

 Event event = getCalendarService().events().get("primary", "3k90eohao76bk3vlgs8k5is6h0").execute();


 event.setSummary("Appointment at Somewhere");

 // Update the event
 Event updatedEvent = getCalendarService().events().update("primary", event.getId(), event).execute();

 System.out.println(updatedEvent.getUpdated());

}

public static void main(String[] args) throws IOException {
com.google.api.services.calendar.Calendar service = getCalendarService();

 DateTime now = new DateTime(System.currentTimeMillis());
 Events events = service.events().list("primary").setMaxResults(10).setTimeMin(now).setOrderBy("startTime")
     .setSingleEvents(true).execute();


 List < Event > items = events.getItems();
 if (items.size() == 0) {
     System.out.println("No upcoming events found.");
 } else {
     System.out.println("\nUpcoming events");
     for (Event event: items) {
         DateTime start = event.getStart().getDateTime();
         if (start == null) {
             start = event.getStart().getDate();
         }
         System.out.printf("%s (%s)\n", event.getSummary(), start);
     }
 }

 createEvent();

}

This is my java code using this code I am trying to create event with room (room is added using resource Google Calendar API) event created success fully with room A. However when I check in Google Calendar and try see available room in that A room is available. I would expect it should not display or it should show with strike can any one please tell me the solution for this where am doing I am mistake is there permission issue please suggest me.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant