private void FetchEvents(EventsResource.ListRequest fetcher) { var exec = fetcher.Execute(); foreach (var item in exec.Items) { _fetchedEvents.Add(item); } if (exec.NextPageToken != null) { fetcher.PageToken = exec.NextPageToken; FetchEvents(fetcher); } }
private Events GetData(UserCredential credential) { // Define parameters of request. EventsResource.ListRequest request = CalendarSer(credential).Events.List("primary"); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 100; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; Events events = request.Execute(); return(events); }
private Task <Events> QueryCalendarEventsAsync(string calendarId, int n, DateTimeOffset d) { // Define parameters of request. EventsResource.ListRequest request = this._googleService.Events.List(calendarId); request.TimeMin = d.Date; request.TimeMax = new DateTimeOffset(d.Year, d.Month, d.Day, 23, 59, 59, d.Offset).AddDays(n).Date; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 20; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // async WebRequest return(request.ExecuteAsync()); }
public static bool IsOverlapping(DateTime start, DateTime end, CalendarService service) { Console.WriteLine("Upcoming events:"); // Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 10; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); Console.WriteLine("Upcoming events:"); if (events.Items != null && events.Items.Count > 0) { foreach (var eventItem in events.Items) { string when = eventItem.Start.DateTime.ToString(); if (String.IsNullOrEmpty(when)) { when = eventItem.Start.Date; } // Response.Write(eventItem.Summary + " " + when); Console.WriteLine(eventItem.Summary + " " + when); if (((eventItem.Start.DateTime >= start) && (eventItem.Start.DateTime < end)) || ((eventItem.End.DateTime > start) && (eventItem.End.DateTime < end)) || ((eventItem.Start.DateTime < start) && (eventItem.End.DateTime >= end))) { return(true); //Console.WriteLine("2 appointments are overlapping"); } else if ((eventItem.Start.DateTime == start) || (eventItem.End.DateTime == end)) { return(true); //Console.WriteLine("2 appointments are overlapping"); } } return(false); } else { return(false); } }
public ServiceProvider(string applicationName, string path, params string[] scopes) { _userId = "me"; _calendarId = "primary"; UserCredential credential; using (var stream = new FileStream( "client_secret.json", FileMode.Open, FileAccess.Read)) { credential = GoogleWebAuthorizationBroker .AuthorizeAsync( GoogleClientSecrets.Load(stream) .Secrets, scopes, "user", CancellationToken.None, new FileDataStore(path, true)) .Result; } _calendarService = new CalendarService( new BaseClientService.Initializer { HttpClientInitializer = credential, ApplicationName = applicationName }); _mailService = new GmailService( new BaseClientService.Initializer { HttpClientInitializer = credential, ApplicationName = applicationName }); _checkEventsRequest = new EventsResource.ListRequest( _calendarService, CalendarId) { PrivateExtendedProperty = "AutoGenerated=true", MaxResults = 1 }; _messageRequest = new UsersResource.MessagesResource. ListRequest(_mailService, UserId) { Q = MessageQuery, LabelIds = "INBOX" }; }
public static void createEventCalendar(CalendarService calendar, string titulo, string materia, string dataFim, string status) { // Define parameters of request. EventsResource.ListRequest request = calendar.Events.List("primary"); request.TimeMin = Convert.ToDateTime(dataFim).AddHours(-24); request.TimeMax = Convert.ToDateTime(dataFim); request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 10; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; Events eventsList = request.Execute(); Console.WriteLine("Upcoming events:"); if (eventsList.Items != null && eventsList.Items.Count > 0) { foreach (var eventItem in eventsList.Items) { if (eventItem.Description != null) { if (eventItem.Description.Equals(titulo + "\n" + status)) { calendar.Events.Delete("primary", eventItem.Id).Execute(); break; } } } } Event newEvent = new Event() { Summary = materia.Split('-')[0].Trim(), Description = titulo + "\n" + status, Start = new EventDateTime() { DateTime = Convert.ToDateTime(dataFim).AddHours(-1), }, End = new EventDateTime() { DateTime = Convert.ToDateTime(dataFim), }, }; String calendarId = "primary"; EventsResource.InsertRequest requestCreate = calendar.Events.Insert(newEvent, calendarId); Event createdEvent = requestCreate.Execute(); Console.WriteLine("Event created: {0}", createdEvent.HtmlLink); }
public async Task AddEventsToCalendar(string calendarId, List <Show> shows) { // Define parameters of request EventsResource.ListRequest request = service.Events.List("*****@*****.**"); request.TimeMin = shows.Select(x => x.StartTime).Min(); request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = shows.Count; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); foreach (var show in shows) { bool isSame = false; foreach (var actEvent in events.Items) { bool SummaryBool = actEvent.Summary == $"[{show.Title}] {show.EpisodeTitle}"; bool StartBool = actEvent.Start.DateTime == show.StartTime; bool EndBool = actEvent.End.DateTime == show.EndTime; bool DescriptionBool = actEvent.Description == $"Channel: {show.Channel}, Description:{show.Description}"; if (SummaryBool == true && StartBool == true && EndBool == true && DescriptionBool == true) { isSame = true; break; } } if (isSame == false) { // TODO check is even exists? Event newEvent = new Event() { Summary = $"[{show.Title}] {show.EpisodeTitle}", Start = new EventDateTime() { DateTime = show.StartTime }, End = new EventDateTime() { DateTime = show.EndTime }, Description = $"Channel: {show.Channel}, Description:{show.Description}" }; newEvent = service.Events.Insert(newEvent, calendarId).Execute(); } } }
public Events GetEventsFromCalendar(DateTime TimeMin, DateTime TimeMax) { //Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = TimeMin; request.TimeMax = TimeMax; request.ShowDeleted = false; request.SingleEvents = true; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); return(events); }
// Finde alle Einträge zu einem Tag public static Events kalenderKundenFinder(DateTime Date) { // Define parameters of request. EventsResource.ListRequest request = dienst.Events.List("primary"); request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 2500; request.TimeMin = new DateTime(Date.Year, Date.Month, Date.Day, 1, 0, 0); request.TimeMax = new DateTime(Date.Year, Date.Month, Date.Day, 23, 59, 59); // List events. Events events = request.Execute(); Events temp = new Events(); return(events); }
public Events GetEvents(string userEmailAddress, string calenderType = "primary", int max = 10) { var service = GetService(userEmailAddress); // Define parameters of request. EventsResource.ListRequest request = service.Events.List(calenderType); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = max; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. return(request.Execute()); }
public async Task <Events> GetEvents(DateTime timeMax, string calendar = "primary") { if (calService == null) { await Auth(EditScopes); } EventsResource.ListRequest req = calService.Events.List(calendar); req.TimeMin = DateTime.Now; req.TimeMax = timeMax; req.ShowDeleted = false; req.SingleEvents = true; req.OrderBy = EventsResource.ListRequest.OrderByEnum.Updated; return(await req.ExecuteAsync()); }
public Events GetEvents() { // Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 10; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); return(events); }
/// <summary> /// Pulls a list of appointments for the set calendar between a given date range. /// </summary> /// <param name="startDate">The start of the date range</param> /// <param name="endDate">The end of the date range</param> /// <returns>List of CalendarItems with the startDate and endDate</returns> public List <CalendarItem> PullListOfAppointmentsByDate(DateTime startDate, DateTime endDate) { try { PerformAuthentication(); List <CalendarItem> items = new List <CalendarItem>(); Log.Write($"Pulling a list of Google Appointments by date from {m_currentCalendar}."); // Iterate over the events in the specified calendar string pageToken = null; do { EventsResource.ListRequest list = m_service.Events.List(m_currentCalendar); list.TimeMin = startDate; list.TimeMax = endDate; list.PageToken = pageToken; Events events = list.Execute(); List <Event> i = events.Items.ToList(); foreach (var @event in i) { if (@event.Status.Equals("cancelled")) { continue; } var cal = new CalendarItem(); cal.LoadFromGoogleEvent(@event); if (!items.Exists(x => x.CalendarItemIdentifier.GoogleId.Equals(cal.CalendarItemIdentifier.GoogleId))) { items.Add(cal); } } pageToken = events.NextPageToken; } while (pageToken != null); return(items); } catch (GoogleApiException ex) { Log.Write(ex); HandleException(ex, "There was an error when trying to pull a list of events from google."); return(null); } }
public void AddDebtItemEvent(DebtItem debtItem) { UserCredential credential; using (var stream = new FileStream("credentials.json", FileMode.Open, FileAccess.Read)) { string credPath = "token.json"; credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; Console.WriteLine("Credential file saved to: " + credPath); } var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 10; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; var debtItemEvent = new Event(); EventDateTime start = new EventDateTime(); start.DateTime = debtItem.DueDate; EventDateTime end = new EventDateTime(); end.DateTime = debtItem.DueDate.AddMinutes(30); debtItemEvent.Start = start; debtItemEvent.End = end; debtItemEvent.Summary = $"{debtItem.DebtItemName} due date"; debtItemEvent.Description = $"Your {debtItem.DebtItemName} is due!";; var calendarId = "primary"; debtItemEvent = service.Events.Insert(debtItemEvent, calendarId).Execute(); }
private static Events GetEventsFromGoogleCalandar() { // Define parameters of request. EventsResource.ListRequest request = GoogleCalendarService.Events.List(Config["Google:CalendarId"]); request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 2500; request.ShowDeleted = true; request.TimeMin = From.AddDays(-1); request.TimeMax = To.AddDays(1); // List events. Events events = request.Execute(); return(events); }
// API使用許可とデータ取得設定 private void CreateAPIService() { var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); // データ取得設定 request = service.Events.List("primary"); request.TimeMin = DateTime.Parse("2016/04/01 00:00:00"); // 今年度から request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 200; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; }
public CalendarEvents GetAllEvents(string calendarId) { var service = GetGoogleService(); // Define parameters of request EventsResource.ListRequest request = service.Events.List(calendarId); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 1000; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; Events events = request.Execute(); return(events.ToMyCalendarEvents()); }
private bool ReadExistingEvents(out List <SharedCalendarEvent> existingEvents) { existingEvents = new List <SharedCalendarEvent>(); try { // Create Google Calendar API service. using CalendarService service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = CredentialToken, ApplicationName = ApplicationName }); // Define parameters of requestList. EventsResource.ListRequest requestList = service.Events.List(SelectedCalendarEntry.Id); requestList.TimeMin = DateTime.Now - TimeSpan.FromHours(1); requestList.ShowDeleted = false; requestList.SingleEvents = true; requestList.MaxResults = 100; requestList.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = requestList.Execute(); if (events.Items == null) { return(false); } foreach (var eventItem in events.Items) { DateTime?StartDate = eventItem.Start.DateTime; DateTime?EndDate = eventItem.End.DateTime; if (SharedCalendarEvent.TryParse(StartDate, EndDate, out SharedCalendarEvent? NewEvent) && NewEvent != null) { existingEvents.Add(NewEvent); } } return(true); } catch (Exception e) { Debug.Print(e.Message); } return(false); }
//causing the access error for google calendar on hosted website not the production site. public static Events GetCalendarEvents() { string[] Scopes = { CalendarService.Scope.CalendarReadonly }; string ApplicationName = "EliteK9"; //https://docs.microsoft.com/en-us/visualstudio/debugger/remote-debugging-azure?view=vs-2017 UserCredential credential; string path = HttpContext.Current.Server.MapPath("~/App_Data/credentials.json"); using (var stream = new FileStream(path, FileMode.Open, FileAccess.ReadWrite)) { // The file token.json stores the user's access and refresh tokens, and is created // automatically when the authorization flow completes for the first time. string credPath = HttpContext.Current.Server.MapPath("~/token.json"); credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; //Console.WriteLine("Credential file saved to: " + credPath); } // Create Google Calendar API service. var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); // Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 500; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); return(events); }
public GoogleCalenderPG() { InitializeComponent(); grabDBInfo(); UserCredential credential; using (var stream = new FileStream("client_secrets_gc.json", FileMode.Open, FileAccess.Read)) { string credPath = Environment.GetFolderPath(Environment.SpecialFolder.Personal); credPath = System.IO.Path.Combine(credPath, ".credentials/calendar-dotnet-quickstart"); credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; } // Create Google Calendar API service. var service = new CalendarService(new BaseClientService.Initializer() //Creates the Google Calender service. This is used to manage the calendar. { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); myService = service; request = service.Events.List("primary"); setReadRequest(); EventListBox.DataContext = request.Execute(); txtStartYear.Text = DateTime.Today.AddDays(1).Year.ToString(); txtStartMonth.Text = DateTime.Today.AddDays(1).Month.ToString(); txtStartDay.Text = DateTime.Today.AddDays(1).Day.ToString(); txtStartHour.Text = DateTime.Now.Hour.ToString(); txtStartMinute.Text = DateTime.Now.Minute.ToString(); txtEndYear.Text = DateTime.Today.AddDays(2).Year.ToString(); txtEndMonth.Text = DateTime.Today.AddDays(2).Month.ToString(); txtEndDay.Text = DateTime.Today.AddDays(2).Day.ToString(); txtEndHour.Text = DateTime.Now.Hour.ToString(); txtEndMinute.Text = DateTime.Now.Minute.ToString(); }
public Events GetGoogleCalendarEvents(string account, DateTime start, DateTime end, string calendarId) { // Define parameters of request. EventsResource.ListRequest request = GetService(account).Events.List(calendarId); request.TimeMin = start; request.TimeMax = end; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 100; request.ShowDeleted = true; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); return(events); }
public Events GetEventsByDate(DateTime data, CalendarService service) { EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = data; if (data != null) { var sd = data; request.TimeMax = sd.AddDays(1).AddTicks(-1); } request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 30; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. return(request.Execute()); }
public Events GetGoogleCalendarEvents() { UserCredential credential; using (var stream = new FileStream("client_secret.json", FileMode.Open, FileAccess.Read)) { string credPath = System.Environment.GetFolderPath( System.Environment.SpecialFolder.Personal); credPath = Path.Combine(credPath, ".credentials/calendar-dotnet-quickstart.json"); credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; var pathString = "Credential file saved to: " + credPath; } // Create Google Calendar API service. var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); DayOfWeek day = DateTime.Now.DayOfWeek; int days = day - DayOfWeek.Monday; DateTime start = DateTime.Now.AddDays(-days); DateTime end = start.AddDays(4); // Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = start; request.TimeMax = end; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 250; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); return(events); }
public static async Task <List <Event> > GetUpcomingCalendarEvents(string serviceAccountEmail, string keyFileName, string calendarId, int maxResults) { //The values of the Google Service Account will be read from the .json key file, which should be available to the project GoogleServiceAccount keyValues; using (StreamReader r = new StreamReader(keyFileName)) { string json = r.ReadToEnd(); keyValues = JsonConvert.DeserializeObject <GoogleServiceAccount>(json); } CalendarService service = GoogleCalendarAuth.AuthenticateServiceAccountFromKey(serviceAccountEmail, keyValues.private_key); // Define parameter values of the Google Calendar request EventsResource.ListRequest request = service.Events.List(calendarId); request.TimeMin = DateTime.Now; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = maxResults; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // Execute the request var events = await request.ExecuteAsync(); //Add the resulting events to a list (split this into a separate method) var eventList = new List <Event>(); if (events.Items != null && events.Items.Count > 0) { eventList = events.Items.Select(i => new Event { StartDate = i.Start?.DateTime ?? DateTime.MinValue, EndDate = i.End?.DateTime ?? DateTime.MinValue, EventDescription = i.Description, EventSummary = i.Summary } ).ToList(); } else { Console.WriteLine("No upcoming events found."); } return(eventList); }
private void UpdateList() { lvEvents.Items.Clear(); // Create Google Calendar API service. service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = "Google Calendar API", }); // Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = new DateTime(1997, 9, 11); request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 100; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // List events. Events events = request.Execute(); if (events.Items != null && events.Items.Count > 0) { foreach (var eventItem in events.Items) { string start = eventItem.Start.DateTime.ToString(); string end = eventItem.End.DateTime.ToString(); if (String.IsNullOrEmpty(start)) { start = eventItem.Start.Date; } if (String.IsNullOrEmpty(end)) { end = eventItem.Start.Date; } var newItem = new ListViewItem(new string[] { eventItem.Summary, eventItem.Location, start, end }); newItem.Tag = eventItem.Id; lvEvents.Items.Add(newItem); } lvEvents.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent); } else { MessageBox.Show("No upcoming events found."); } }
/** * filter events * * @param calId * @param startMin * @param updatedMin * @param maxResults * @return */ public List <GCalEvent> GetEvents(String calId, DateTime?startDate, DateTime?maxEndDate, int maxResults) { List <GCalEvent> events = new List <GCalEvent>(); try { GCal gcal = GetCalendar(calId); if (maxResults < 0) { maxResults = DEFAULT_MAX_RESULTS; } EventsResource.ListRequest request = cs.Events.List(calId); request.MaxResults = maxResults; if (startDate != null) { request.TimeMin = startDate; } request.TimeMax = maxEndDate; request.OrderBy = Google.Apis.Calendar.v3.EventsResource.ListRequest.OrderByEnum.StartTime; request.SingleEvents = true; request.ShowDeleted = false; Events gevents = request.Execute(); foreach (Event e in gevents.Items) { GCalEvent g = Convert(e, gcal); g.Calendar = gcal; events.Add(g); } } catch (Exception e) { throw e; } return(events); }
public List <CalendarEvent> GetCalendarEvents(DateTime rangeFrom, DateTime rangeTo) { UserCredential credential = GetCredentials(); var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = "GoSync" }); EventsResource.ListRequest request = service.Events.List("primary"); request.TimeMin = rangeFrom; request.TimeMax = rangeTo; request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 1000; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; Events events = request.Execute(); List <CalendarEvent> calendarEvents = new List <CalendarEvent>(); foreach (var calendarEvent in events.Items) { var sourceId = calendarEvent.Id; if (calendarEvent.ExtendedProperties != null && calendarEvent.ExtendedProperties.Shared != null && calendarEvent.ExtendedProperties.Shared.ContainsKey("SourceID")) { sourceId = calendarEvent.ExtendedProperties.Shared["SourceID"]; } calendarEvents.Add(new GoogleCalendarEvent() { DateFrom = calendarEvent.Start.DateTime.GetValueOrDefault(), DateTo = calendarEvent.End.DateTime.GetValueOrDefault(), Description = calendarEvent.Description, Location = calendarEvent.Location, Title = calendarEvent.Summary, ID = calendarEvent.Id, SourceID = sourceId }); } return(calendarEvents); }
private void run_Button_Click(object sender, EventArgs e) { //Calendar calendar = null; try { m_provider = new NativeApplicationClient(GoogleAuthenticationServer.Description); m_provider.ClientIdentifier = "475623449109-og3q1tijq7kuu82i8dnfjcjklhb32g47.apps.googleusercontent.com"; m_provider.ClientSecret = "OdlJ_oaKeWQXdXEpkMsjF3HF"; m_auth = new OAuth2Authenticator <NativeApplicationClient>(m_provider, GetAuthorization); m_service = new CalendarService(m_auth); EventsResource.ListRequest listRequest = m_service.Events.List("*****@*****.**"); listRequest.MaxResults = 1; listRequest.Q = "authentication"; listRequest.TimeMax = "1981-01-01T23:59:59+05:30"; Events events = listRequest.Fetch(); //calendar = m_service.Calendars.Get("*****@*****.**").Fetch(); this.authorizationCode_Textbox.Text = "Number of Items = " + events.Items.Count; Event ev = events.Items[0]; this.authorizationCode_Textbox.Text += " \nSummary : " + ev.Summary; this.authorizationCode_Textbox.Text += " \nDescription : " + ev.Description; try { if (ev.Description.EndsWith("x")) { ev.Description = ev.Description.Substring(0, ev.Description.Length - 1); } else { ev.Description += "x"; } m_service.Events.Update(ev, "*****@*****.**", ev.Id).Fetch(); //m_service.Calendars.Update(calendar, calendar.Id).Fetch(); this.authorizationCode_Textbox.Text += "\nSucess!!!"; } catch (Exception ex) { this.authorizationCode_Textbox.Text += "After Update" + ex.Message; } } catch (Exception ex) { this.authorizationCode_Textbox.Text += "Before Update" + ex.Message; } }
public async Task <Events> GetEvents(string id, bool all = true) { var service = new CalendarService(new BaseClientService.Initializer { HttpClientInitializer = ServiceAccount.Instance.Credential, ApplicationName = "Calendar API Sample" }); try { EventsResource.ListRequest request = service.Events.List(id); request.TimeMin = GetCorrectStart(); if (!all) { //get just this weeks request.TimeMax = GetCorrectEndOfWeek(); } else { request.TimeMax = DateTime.UtcNow.NextMonth(); } //request. request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; request.SingleEvents = true; request.MaxResults = 5; request.ShowDeleted = false; var result = await request.ExecuteAsync(); return(result); } catch (Exception exp) { System.Diagnostics.Debug.WriteLine(id); System.Diagnostics.Debug.WriteLine(exp.Message); throw; } //return ProcessResults(request); }
// GET: Calendar public ActionResult Index() { UserCredential credential; //將自己的驗證json檔放到app_data string path = HttpContext.Server.MapPath("~/App_Data/client_secret.json"); using (var stream = new FileStream(path, FileMode.Open, FileAccess.Read)) { string credPath = System.Environment.GetFolderPath( System.Environment.SpecialFolder.Personal); credPath = Path.Combine(credPath, ".credentials/calendar-dotnet-quickstart"); credential = GoogleWebAuthorizationBroker.AuthorizeAsync( GoogleClientSecrets.Load(stream).Secrets, Scopes, "user", CancellationToken.None, new FileDataStore(credPath, true)).Result; Console.WriteLine("Credential file saved to: " + credPath); } // Create Google Calendar API service. var service = new CalendarService(new BaseClientService.Initializer() { HttpClientInitializer = credential, ApplicationName = ApplicationName, }); // Define parameters of request. EventsResource.ListRequest request = service.Events.List("primary"); //設定存取時間 request.TimeMin = DateTime.Now.AddDays(-100); request.ShowDeleted = false; request.SingleEvents = true; request.MaxResults = 10; request.OrderBy = EventsResource.ListRequest.OrderByEnum.StartTime; // 讀取事件 Events events = request.Execute(); return(View(events)); }