Click here to Skip to main content
Click here to Skip to main content

Tagged as

How to Make Your Own Gmail Notifier Using VB.NET

, 11 Jan 2014
Rate this:
Please Sign up or sign in to vote.
This tip shows you how to make your own Gmail Notiifer using VB.NET

Introduction

If you want to make your own Gmail Notifier, you are at the right place. Google does not have an official Gmail API. So, you have to exploit the Feed facility of Gmail to build our Gmail Notifier.

Background

Gmail Feed is a useful feature provided by Gmail using which we can subscribe to emails using a Feed Reader supporting authentification.

Using the Code

We first create a new instance of WebClient class and then request feed from Gmail Using the Username and the Password as the networks parameters. So, we must exploit the Gmail Feed which is an ATOM feed. We have to parse the response as an XML file using the XmlDocument as shown in the following code:

Imports System.Xml
Imports System.Text
Public Class LoginForm1
    Private Sub OK_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles OK.Click
        Dim objClient As New System.Net.WebClient
        Dim nodelist As XmlNodeList
        Dim node As XmlNode
        Dim response As String
        Dim xmlDoc As New XmlDocument
        Try

            objClient.Credentials = New System.Net.NetworkCredential_
            (UsernameTextBox.Text.Trim, PasswordTextBox.Text.Trim)
            response = Encoding.UTF8.GetString(objClient.DownloadData_
            ("https://mail.google.com/mail/feed/atom"))
            response = response.Replace("<feed version=""0.3"" 
            xmlns=""http://purl.org/atom/ns#"">", "<feed>")

            xmlDoc.LoadXml(response)
            node = xmlDoc.SelectSingleNode("/feed/fullcount")
            mailCount = node.InnerText 'Get the number of unread emails

            If mailCount > 0 Then
                ReDim emailFrom(mailCount - 1)
                ReDim emailMessages(mailCount - 1)
                nodelist = xmlDoc.SelectNodes("/feed/entry")
                node = xmlDoc.SelectSingleNode("title")

                For Each node In nodelist
                    emailMessages(tempCounter) = node.ChildNodes.Item(0).InnerText
                    emailFrom(tempCounter) = node.ChildNodes.Item(6).ChildNodes(0).InnerText
                    tempCounter += 1
                Next
                tempCounter = 0
            End If
            Me.Hide()
            Form1.Show()
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
End Class

This is the important part of our application. So now, you need to download the source code and try to compile it.

Any comments are welcome.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Hadrich Mohamed
Student GlobalNet
Tunisia Tunisia
Software Engineering student in the International Institute of technology of Sfax (IIT),Microsoft Student Partner , IEEE IIT SB member, IIT Microsoft Club President And a condidate at Appli Academy 2013-2014.
I like creating Windows store, Android and Windows Phone 8 applications.
Mail : hadrichmed@gmail.com
Phone : +216 27 61 61 40
Follow on   LinkedIn

Comments and Discussions

 
Questionwork one time only PinmemberMember 1019500419-Mar-14 0:09 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web01 | 2.8.140827.1 | Last Updated 12 Jan 2014
Article Copyright 2014 by Hadrich Mohamed
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid