Añadir una cita a Google Calendar via VB.NET


Veamos...Estoy tratando de crear una aplicación que, mediante VB.NET, inserte una cita en nuestro Google Calendar. Sin duda una gran ayuda, y que puede ser usada de diversas maneras...Hasta ahí todo bien. Pero las citas de Gmail Calendar tienen una función muy útil, la cuál es enviarte un SMS a un celular que hayas predefinido en tu configuración de Calendar. Entonces... Se me ocurre crear una aplicación que inserte una cita a Google Calendar, pero esto no es lo importante, sino que me inserte dicha cita con un recordatorio vía SMS. De esta manera estaría usando Google Calendar simplemente como medio de mensajería SMS de otras aplicaciones que se sirvan de esta utilidad (como por ejemplo una aplicación que vigile mi red y su funcionamiento y si pierde conexion con un equipo, añada una cita, la cuál ¡me enviara un SMS a mi celular!) Si, ya se que no es elegante, pero si funcional, muy funcional, Google Calendar ¡nunca pierde un SMS!


 1.- Descarga Google Data API Setup desde acá :

2.- Instalemos la API de google. Una vez termines esto, agregemos las tres referencias a dicha API en nuestro proyecto de VB.NET (Gdata.Calendar, GDta.Client y GData.Extensions)

 

3.- Veamos el código...

Imports Google.GData.Calendar
Imports Google.GData.Client
Imports Google.GData.Extensions

Public Class Form1

    Private Sub InsertarCitaGoogleCalendar()

        Dim myService As New CalendarService("GoogleSMS")
        myService.setUserCredentials("apeves@gmail.com", "aca_va_tu_password")

        Dim Entrada As New EventEntry
        Entrada.Title.Text = "sd"

        Dim Hora As New [When]
        Hora.StartTime = DateAndTime.Now.AddMinutes(6)
        Entrada.Times.Add(Hora)

        Dim Recordatorio As New Reminder
        Recordatorio.Minutes = 5
        Recordatorio.Method = Reminder.ReminderMethod.sms
        Entrada.Reminders.Add(Recordatorio)

        Dim myUri As New Uri("http://www.google.com/calendar/feeds/default/private/full")
        Dim myEventEntry As AtomEntry = myService.Insert(myUri, Entrada)

    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        InsertarCitaGoogleCalendar()

    End Sub

End Class

En fin, eso es todo. 

A.

7 comentarios:

miguelalien dijo...

algundia lo utilizare

Anónimo dijo...

Funciona a la perfección. Gracias.

Anónimo dijo...

Estupendo. Muchas gracias

sexar80 dijo...

Excelente, como puedo modificar o eliminar la entrada desde la aplicación ?

Mariano dijo...

Hola! excelente, tengo una pregunta aver si alguno sabe porque me pasa esto.
Al ejecutar el programa me tira el siguiente error:

Execution of authentication request returned unexpected result: 404

Me paso varias veces. Saben porque puede ser?
Gracias

Anónimo dijo...

Lo que sucede es que ya ese API no funciona

Unknown dijo...

Algún ejemplo del nuevo API?