Google कैलेंडर API में मिलते हैं

Sep 09 2020

मैं java में google Calendar api में google meet कैसे जोड़ सकता हूँ? क्रिप्या मेरि सहायता करे। मुझे Google प्रलेखन समझ में नहीं आया है।https://developers.google.com/calendar/create-events। सोर्स कोड यहाँ दिया गया है। यहां, मैं उपयोगकर्ताओं को जीमेल खाते का उपयोग करके घटना बनाना चाहता हूं। मेरा कोई जी-सूट खाता नहीं है

Event event = new Event()
    .setSummary(title)
    .setLocation(location)
    .setDescription(description);

DateTime startDateTime = new DateTime( date +"T"+startTime+"+06:00" );//"2020-05-05T11:00:00+06:00");
EventDateTime start = new EventDateTime()
    .setDateTime(startDateTime)
    .setTimeZone("Asia/Dhaka");
event.setStart(start);

DateTime endDateTime = new DateTime(date +"T"+endTime+"+06:00");//"2020-05-05T12:00:00+06:00");
EventDateTime end = new EventDateTime()
    .setDateTime(endDateTime)
    .setTimeZone("Asia/Dhaka");
event.setEnd(end);

String[] recurrence = new String[] {"RRULE:FREQ=DAILY;COUNT=1"};
event.setRecurrence(Arrays.asList(recurrence));

EventAttendee attendees[];

attendees = new EventAttendee[allAttendees.size()];

for(int i=0; i<allAttendees.size(); i++){
    // System.out.println(allAttendees.get(i));
    attendees[i] = new EventAttendee().setEmail(allAttendees.get(i));
}
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";

try {
    abc = service.events().insert(calendarId, event);
} catch (IOException e) {
    e.printStackTrace();
}

try {
    event = service.events().insert(calendarId, event).execute();
} catch (IOException e) {
    e.printStackTrace();
}

String meetingId = event.getHangoutLink();
System.out.println("What is meeting ID? = "+meetingId);

जवाब

3 JoseVasquez Sep 09 2020 at 22:27

उत्तर

आपको Google कैलेंडर के लिए जावा एपीआई प्रलेखन का उपयोग करने की आवश्यकता होगी

आपको एक नया मीट अनुरोध बनाना होगा और फिर इसे वर्तमान ईवेंट में जोड़ना होगा और इससे पहले, कॉन्फ़्रैडडैविट्रेस को सक्षम करके इसे 1 पर सेट करना होगा। निम्नलिखित कोड का उपयोग करने से पहले सुनिश्चित करें कि आपके पास यह सेटअप है ।

कोड

Event event = new Event()
                        .setSummary(title)
                        .setLocation(location)
                        .setDescription(description);

// Your previous code

/* The code needed - START */

ConferenceSolutionKey conferenceSKey = new ConferenceSolutionKey();
conferenceSKey.setType("eventHangout"); // Non-G suite user
CreateConferenceRequest createConferenceReq = new CreateConferenceRequest();
createConferenceReq.setRequestId("3whatisup3"); // ID generated by you
createConferenceReq.setConferenceSolutionKey(conferenceSKey);
ConferenceData conferenceData = new ConferenceData();
conferenceData.setCreateRequest(createConferenceReq);
event.setConferenceData(conferenceData); // attach the meeting to your event

/* The code needed - END */

String calendarId = "primary";

// There’s no need to declare the try-catch block twice

try {
    /* Code changes - START */

    // .setConferenceDataVersion(1) enables the creation of new meetings
    event = service.events().insert(calendarId, event).setConferenceDataVersion(1).execute();

    /* Code changes - END */

} catch (IOException e) {
    e.printStackTrace();
}

String meetingId = event.getHangoutLink();
System.out.println("What is meeting ID? = "+meetingId);

संदर्भ

Google कैलेंडर जावा एपीआई: Event.setConferenceData

Google कैलेंडर JAVA API: कॉन्फ़्रेंसडाटा ।setCreateRequest

Google कैलेंडर JAVA API: CreateConferenceRequest.setRequestId

Google कैलेंडर JAVA API: ConferenceSolutionKey.setType

Google कैलेंडर JAVA API: Calendar.Events.Insert.setConferenceDataVersion सबसे महत्वपूर्ण है

1 TuitionAppSpl Sep 10 2020 at 01:50

मेरे लिए अंतिम व्यावहारिक कोड नीचे दिया गया है।

 Event event = new Event()
            .setSummary(title)
            .setLocation(location)
            .setDescription(description);


    DateTime startDateTime = new DateTime( date +"T"+startTime+"+06:00" );//"2020-05-05T11:00:00+06:00");
    EventDateTime start = new EventDateTime()
            .setDateTime(startDateTime)
            .setTimeZone("Asia/Dhaka");
    event.setStart(start);

    DateTime endDateTime = new DateTime(date +"T"+endTime+"+06:00");//"2020-05-05T12:00:00+06:00");
    EventDateTime end = new EventDateTime()
            .setDateTime(endDateTime)
            .setTimeZone("Asia/Dhaka");
    event.setEnd(end);

    String[] recurrence = new String[] {"RRULE:FREQ=DAILY;COUNT=1"};
    event.setRecurrence(Arrays.asList(recurrence));

  /*  s1 = "[email protected]";
    s2 = "[email protected]";

    EventAttendee[] attendees = new EventAttendee[] {
            new EventAttendee().setEmail(s1),
            new EventAttendee().setEmail(s2),
    };*/



    EventAttendee attendees[];

    attendees = new EventAttendee[allAttendees.size()];

    for(int i=0; i<allAttendees.size(); i++){
       // System.out.println(allAttendees.get(i));
        attendees[i] = new EventAttendee().setEmail(allAttendees.get(i));
    }
    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);


    ConferenceSolutionKey conferenceSKey = new ConferenceSolutionKey();
    conferenceSKey.setType("hangoutsMeet"); // Non-G suite user
    CreateConferenceRequest createConferenceReq = new CreateConferenceRequest();
    createConferenceReq.setRequestId("3whatisup3"); // ID generated by you
    createConferenceReq.setConferenceSolutionKey(conferenceSKey);
    ConferenceData conferenceData = new ConferenceData();
    conferenceData.setCreateRequest(createConferenceReq);
    event.setConferenceData(conferenceData);

    String calendarId = "primary";

    try {
        event = service.events().insert(calendarId, event).setConferenceDataVersion(1).execute();
    } catch (IOException e) {
        e.printStackTrace();
    }

    System.out.printf("Event created: %s\n", event.getHtmlLink());
    System.out.printf("Hangout Link %s\n", event.getHangoutLink());