Email Inbox in V8

Dear Admins,

I am very happy that you have included email inbox feature.

Now in this feature I am having some difficulties.

  1. I have configure the account through IMAP, now I can see the emails in Communication but not all emails.

  2. I have sent a test email after configuring the account and I can see that in sent items withing erpnext, but I cannot see that sent email in my webmail or mobile device.

  3. In communication I can see all the activity which is going in erpnext, but I just want to see the email not any other activities.

  4. How I will get notified if New email has been arrived in my inbox.

  5. I was trying to make the email mark as unread but coudn’t succeed.

  6. How I can Import existing Address book?

  7. Is there any document available to configure it ?

  8. I am trying to open one email with jpeg attachment but got the below error.

[QUOTE]Traceback (most recent call last):
File “/home/frappe/frappe-bench/apps/frappe/frappe/desk/form/load.py”, line 35, in getdoc
if not doc.has_permission(“read”):
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 155, in has_permission
return frappe.has_permission(self.doctype, permtype, self, verbose=verbose)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 500, in has_permission
out = frappe.permissions.has_permission(doctype, ptype, doc=doc, verbose=verbose, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 92, in has_permission
controller_perm = has_controller_permissions(doc, ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 301, in has_controller_permissions
controller_permission = frappe.call(frappe.get_attr(method), doc=doc, ptype=ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 907, in call
return fn(*args, **newargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/communication/communication.py”, line 270, in has_permission
if frappe.has_permission(doc.reference_doctype, ptype=“read”, doc=doc.reference_name):
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 500, in has_permission
out = frappe.permissions.has_permission(doctype, ptype, doc=doc, verbose=verbose, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 92, in has_permission
controller_perm = has_controller_permissions(doc, ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 301, in has_controller_permissions
controller_permission = frappe.call(frappe.get_attr(method), doc=doc, ptype=ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 907, in call
return fn(*args, **newargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/communication/communication.py”, line 270, in has_permission
if frappe.has_permission(doc.reference_doctype, ptype=“read”, doc=doc.reference_name):
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 500, in has_permission
out = frappe.permissions.has_permission(doctype, ptype, doc=doc, verbose=verbose, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 92, in has_permission
controller_perm = has_controller_permissions(doc, ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 301, in has_controller_permissions
controller_permission = frappe.call(frappe.get_attr(method), doc=doc, ptype=ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 907, in call
return fn(*args, **newargs)

[The above was repeated many times, so i snipped it]

File “/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/communication/communication.py”, line 270, in has_permission
if frappe.has_permission(doc.reference_doctype, ptype=“read”, doc=doc.reference_name):
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 500, in has_permission
out = frappe.permissions.has_permission(doctype, ptype, doc=doc, verbose=verbose, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 92, in has_permission
controller_perm = has_controller_permissions(doc, ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 301, in has_controller_permissions
controller_permission = frappe.call(frappe.get_attr(method), doc=doc, ptype=ptype, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 907, in call
return fn(args, **newargs)
File “/home/frappe/frappe-bench/apps/frappe/frappe/core/doctype/communication/communication.py”, line 270, in has_permission
if frappe.has_permission(doc.reference_doctype, ptype=“read”, doc=doc.reference_name):
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 500, in has_permission
out = frappe.permissions.has_permission(doctype, ptype, doc=doc, verbose=verbose, user=user)
File “/home/frappe/frappe-bench/apps/frappe/frappe/permissions.py”, line 76, in has_permission
doc = frappe.get_doc(meta.name, doc)
File “/home/frappe/frappe-bench/apps/frappe/frappe/init.py”, line 606, in get_doc
return frappe.model.document.get_doc(arg1, arg2)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 51, in get_doc
return controller(arg1, arg2)
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 84, in init
self.load_from_db()
File “/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py”, line 113, in load_from_db
d = frappe.db.get_value(self.doctype, self.name, "
", as_dict=1)
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 413, in get_value
order_by, cache=cache)
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 457, in get_values
out = self._get_values_from_table(fields, filters, doctype, as_dict, debug, order_by, update)
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 588, in _get_values_from_table
conditions, order_by), values, as_dict=as_dict, debug=debug, update=update)
File “/home/frappe/frappe-bench/apps/frappe/frappe/database.py”, line 138, in sql
self._cursor.execute(query, values)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/MySQLdb/cursors.py”, line 205, in execute
self.errorhandler(self, exc, value)
File “/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/MySQLdb/connections.py”, line 36, in defaulterrorhandler
raise errorclass, errorvalue
RuntimeError: maximum recursion depth exceeded[/QUOTE]

I am still trying many things and i will report them.

Any suggestion will be appreciated.

Thanks

I guess this webinar will also adress the new mail features of v8.

Hi Thanks for the links.

But sill I am not able to sync emails.

My config is as shown below,

  1. Email Domain Setup

  1. Email Account Setup

  1. As you can see in above, I have setup the domain config for IMAP and in email account config selected ALL messages in email sync option but not able to see the email in my inbox. (Please note the emails are there at email server but erp email inbox is not reflecting them)

  1. I have sent an email from erpnext from email inbox.

  2. Now as you can see it is not showing in the sent Mail. (As I am using IMAP it should show in the email servers mail box but it is not showing there also.)

  1. But I have received this email.

So this is very first step of email config where I can see the email feature is working well for me.

Please suggest.

Regards

I can’t help much here but it appears that mails sent from ERPNext are not actually saved into your Imap mailbox. I asked this question of the developers in the we binary.

Check your Imap server logs if you are able. I can sync email ok. I have one or two small issues with this ie a few emails always seem to show up as a few mins ago even if they are a day old. But basically it works.

The SSL port is correctly set?

Hi,

Sorry for the delay in response

As I am assuming that there is some fault in my email server, so I have configured gmail account with Imap setting as follows.

and

Now still I am not able to see anything in Accounts email Inbox

Please suggest what could be the next step?

Regards

I am not familiar with the current inbox gui, but be aware of gmail login issues for eg

1 Like

Are you setup this as Administrator?

Please tell us your environment:
Windows, Linux, VM?

Please tell us the version of the ERPNext.

Did you checked the Email port is open trough firewall?

Hope this helps.

@krnkris

Yes i am the setup administrator

My enviornment is Linux Ubuntu 14.04 LTS VM, Erpnext Release v8.0.28

My Firewall are open for outgoing connection, i.e. for the IMAP/IMAPS POP/POPS SMTP/SMTPS.

I have cheked it by doing telnet., if my ports were blocked then I must have received “Request Timed out” error while creating the email inbox account in erpnext.

Regards,

May this help?:

Hi

I have tried the above mentioned link but it seems every thing is perfect.

I am able to send the email from the configured account, but the problem is it doen’t appear in the sent Items, as well as I am not able to see the email which are already there in Inbox of gmail.

Both the sent Items and Inbox is blank as shown in the screen shot earlier.

Please suggest

Regards,

You have checked this is not your problem?

  1. My experience is gmail ignores login attempts less than say 15 minutes apart!

As for your Sent Mail is blank/empty - is your Communication List empty too?

In my case both lists match - but I append to Communication and you do not - maybe if you set that!?

hi @clarkej

I have tried all possible ways of your post but not able to make it, I have used the below tweak.

  1. My experience is gmail ignores login attempts less than say 15 minutes apart!
    frappe@erpnext:~/frappe-bench$ find . -name *.json | xargs grep scheduler_interval
    ./sites/common_site_config.json: “scheduler_interval”: 900,
    ./sites/aproposcomputing.com/site_config.json: “scheduler_interval”: “300”,

My actual problem is I am not able to see the email in Email inbox as well as sent item in erpnext (On the email server mails are there), not the login or sending of emails.

Yes the communication list is empty too.

Regards,

Hi Deepak,

‘I append to Communication and you do not - maybe if you set that!?’

In your email Default Inbox, is Append To set to Communication?

In your screenshot that field is empty - that may be your problem!?

Hi @clarkej

Yes you are right after selecting the communication I am able to see two emails. (Please note there are more than 450 emails in inbox.)

But still not able to see the sent items.

Please refer the below screen shots.

Settings

Inbox

Sent Items

Regards,

ok in my case the one account set on Append To Communication is also set as Default Incoming & Outgoing.

You can experiment with settings and send some test emails in and out to determine how it works - or does not! I am not sure what the prescribed behaviour is…

cheers

Do you have read + write permissions for the private + public dyrectories under erpnext?

1 Like

The sent email is only the emails that are sent via Email Inbox in ERPNext, not your mail account’s normal Sent folder that you might view in Thunderbird say. Only the inbox is syncced. Actions such as reply and forward will show emails sent in this manner from the application. This was confirmed on a webinar by Frappe a few months ago.

@krnkris Yes I have the permissions.

@Julian_Robbins

Then giving the IMAP as an option will not make sense, because this seems to be a POP property. I thought that by using this feature we can eliminate the dependency of the email Clients like Thunderbird, outlook etc.

What if I send new email from the email inbox will it show in sent Items?

Can you share the webinar link if available.

Thanks for filling in the blanks Julian.

Lots to be had on youtube Deepak - possibly this one has some answers you seek?

1 Like