Opened 5 years ago
Closed 3 months ago
#1485402 closed Feature Requests (wontfix)
IMAP IDLE
| Reported by: | ex_sqm | Owned by: | |
|---|---|---|---|
| Priority: | 5 | Milestone: | later |
| Component: | IMAP connection | Version: | 0.2-beta |
| Severity: | minor | Keywords: | |
| Cc: |
Description (last modified by alec)
It were really great if you could implement Rfc 2177 into Roundcube.
Unfortunately, there seems to be no function in recent PHP that offers this - a challenge for you :-)
Change History (6)
comment:1 Changed 5 years ago by tensor
- Severity changed from normal to minor
comment:2 Changed 5 years ago by ex_sqm
The big advantage of IMAP IDLE is that if a change to the mailbox is made (new mail, changes of flags by another client), the client is notified almost instantly. It acts like push mail.
Reducing stress on the IMAP server is a nice side effect. BTW, I already use up-imapproxy.
comment:3 Changed 4 years ago by joku
Uh.
HTTP in general works in the way that IMAP IDLE is impossible to implement if server do not have some dedicated stateful/persistent service (persistent IMAP/database connections can easily be done with for example jsp (tomcat etc.)).
Currently (and not in foreseeable future) PHP just do not offer any methodology to have persistent connections (let that be IMAP, database etc.) for HTTP services. Command line PHP is different thing.
I think this ticket is invalid for roundcube, however already suggested nginx/imap proxy solves at least part of problem.
comment:4 follow-up: ↓ 5 Changed 4 years ago by ex_sqm
Joku,
I understand your point and agree. Even if we could have IMAP IDLE between RC and the IMAP server, the user would not benefit, since HTTP itself is stateless.
Some admin should close this ticket with "invalid"
comment:5 in reply to: ↑ 4 Changed 4 years ago by egallego
Replying to ex_sqm:
I understand your point and agree. Even if we could have IMAP IDLE between RC and the IMAP server, the user would not benefit, since HTTP itself is stateless.
Some admin should close this ticket with "invalid"
I wouldn't say so. It is clearly a difficult task, but using AJAX and a client timeout it certainly would be doable. Likely a feature for roundcube 2.0 or so.
comment:6 Changed 3 months ago by alec
- Description modified (diff)
- Resolution set to wontfix
- Status changed from new to closed
AJAX will not solve lack of persistent connection. I think there's no chance we'll ever implement this.

I believe it is not impossible. RC connects to IMAP server on every request to the HTTP server. When the response is served, IMAP connection is gone. If you need to reduce stress on the IMAP server, use tools like imap proxy or nginx.