All Projects → emersion → go-imap-idle

emersion / go-imap-idle

Licence: MIT license
IDLE extension for go-imap

Programming Languages

go
31211 projects - #10 most used programming language

Labels

Projects that are alternatives of or similar to go-imap-idle

Imapcopy
Recursively copy all e-mail messages and folders from one IMAP account to another.
Stars: ✭ 52 (+73.33%)
Mutual labels:  mail, imap
Imapbackup
A Python script for incremental backups of IMAP mailboxes
Stars: ✭ 156 (+420%)
Mutual labels:  mail, imap
Go Imap
📥 An IMAP library for clients and servers
Stars: ✭ 1,217 (+3956.67%)
Mutual labels:  mail, imap
James Project
Emails at the heart of your business logic!
Stars: ✭ 485 (+1516.67%)
Mutual labels:  mail, imap
Meli
🐝 experimental terminal mail client, mirror of https://git.meli.delivery/meli/meli.git https://crates.io/crates/meli
Stars: ✭ 242 (+706.67%)
Mutual labels:  mail, imap
Hydroxide
A third-party, open-source ProtonMail CardDAV, IMAP and SMTP bridge
Stars: ✭ 578 (+1826.67%)
Mutual labels:  mail, imap
Nodejs Mail Notifier
nodejs library to listen incoming mail
Stars: ✭ 136 (+353.33%)
Mutual labels:  mail, imap
Mail
Library to send e-mails over different transports and protocols (like SMTP and IMAP) using immutable messages and streams. Also includes SMTP server.
Stars: ✭ 399 (+1230%)
Mutual labels:  mail, imap
Mailu
Insular email distribution - mail server as Docker images
Stars: ✭ 3,151 (+10403.33%)
Mutual labels:  mail, imap
Maddy
✉️ Composable all-in-one mail server.
Stars: ✭ 2,800 (+9233.33%)
Mutual labels:  mail, imap
Mail
The Hoa\Mail library.
Stars: ✭ 24 (-20%)
Mutual labels:  mail, imap
imail
small mail server
Stars: ✭ 88 (+193.33%)
Mutual labels:  mail, imap
Neutron
Self-hosted server for the ProtonMail client
Stars: ✭ 452 (+1406.67%)
Mutual labels:  mail, imap
Docker Mailserver
Production-ready fullstack but simple mail server (SMTP, IMAP, LDAP, Antispam, Antivirus, etc.) running inside a container.
Stars: ✭ 8,115 (+26950%)
Mutual labels:  mail, imap
Sieve
Sieve Script Editor
Stars: ✭ 452 (+1406.67%)
Mutual labels:  mail, imap
Mailspring
💌 A beautiful, fast and fully open source mail client for Mac, Windows and Linux.
Stars: ✭ 11,953 (+39743.33%)
Mutual labels:  mail, imap
Mailcow Dockerized
mailcow: dockerized - 🐮 + 🐋 = 💕
Stars: ✭ 4,573 (+15143.33%)
Mutual labels:  mail, imap
Rainloop Webmail
Simple, modern & fast web-based email client
Stars: ✭ 3,618 (+11960%)
Mutual labels:  mail, imap
Neomutt
✉️ Teaching an Old Dog New Tricks -- IRC: #neomutt on irc.libera.chat
Stars: ✭ 2,343 (+7710%)
Mutual labels:  mail, imap
enough mail
IMAP, POP3 and SMTP clients for Dart developers. Contains both low level as well as a high level API.
Stars: ✭ 78 (+160%)
Mutual labels:  mail, imap

go-imap-idle

GoDoc

IDLE extension for go-imap.

This extension has been merged into go-imap. Use built-in support instead of this repository!

Usage

Client

// Let's assume c is an IMAP client
var c *client.Client

// Select a mailbox
if _, err := c.Select("INBOX", false); err != nil {
	log.Fatal(err)
}

idleClient := idle.NewClient(c)

// Create a channel to receive mailbox updates
updates := make(chan client.Update)
c.Updates = updates

// Start idling
done := make(chan error, 1)
go func() {
	done <- idleClient.IdleWithFallback(nil, 0)
}()

// Listen for updates
for {
	select {
	case update := <-updates:
		log.Println("New update:", update)
	case err := <-done:
		if err != nil {
			log.Fatal(err)
		}
		log.Println("Not idling anymore")
		return
	}
}

Server

s.Enable(idle.NewExtension())

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].