Advanced Paste in Zimbra9
Deprecation Statement
This feature has been deprecated since ZCS Daffodil release 10.0.2. For details please refer to the release notes.
Advanced Paste
Advanced Paste for composer handles copy/paste from Word, Excel, PowerPoint, PDF, Websites, Paint, etc. When installed, it will be available for Mail and Signature Composers. The Advanced Paste service automatically cleans up content from Microsoft Word, Microsoft Excel, and HTML sources to ensure clean and compliant content. When pasting the data in the composer, users get an option to "Keep formatting", which automatically activates the service when clicked. For basic usage, users don't need to take any action. Simply copy and paste content normally using keyboard shortcuts, or the browser's "Paste" menu item.
Installation of Advanced Paste
Zimbra Advanced Paste depends on Micosoft packages dotnet-sdk and aspnetcore-runtime. Since Microsoft does not provide these dependent packages for Ubuntu 14.04, RHEL 6 and CentOS 6, the Advanced Paste service cannot be used on these Operating Systems.
Installing Prerequisites
Configure Microsoft's package repository and key to install dependent packages dotnet-sdk and aspnetcore-runtime.
For Ubuntu 16.04 and 18.04
- As
root
, execute the command to download the key and add into the apt trust store:
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /tmp/microsoft.asc.gpg mv /tmp/microsoft.asc.gpg /etc/apt/trusted.gpg.d/
- Replace <version> with 16.04 for Ubuntu 16.04 and 18.04 for Ubuntu 18.04 in the below url:
wget -q https://packages.microsoft.com/config/ubuntu/<version>/prod.list -O /tmp/prod.list mv /tmp/prod.list /etc/apt/sources.list.d/microsoft-prod.list chown root:root /etc/apt/sources.list.d/microsoft-prod.list apt update
- If you see any error while apt update, run command:
apt -o APT::Sandbox::User=root update
For RHEL 7 and RHEL 8
- Replace the <version> with exact 7 or 8 in the below url:
wget -q https://packages.microsoft.com/config/rhel/<version>/prod.repo -O /tmp/prod.repo mv /tmp/prod.repo /etc/yum.repos.d/microsoft-prod.repo chown root:root /etc/yum.repos.d/microsoft-prod.repo yum update
For CentOS 7 and CentOS 8
- Replace the <version> with 7 or 8 in the below url:
wget -q https://packages.microsoft.com/config/centos/<version>/prod.repo -O /tmp/prod.repo mv /tmp/prod.repo /etc/yum.repos.d/microsoft-prod.repo chown root:root /etc/yum.repos.d/microsoft-prod.repo yum update
Installation of Advanced Paste package
Ubuntu 16.04 and 18.04
- As
root
, install the package:
apt install zimbra-pasteitcleaned
- Restart mailbox service as
zimbra
user:
su - zimbra zmmailboxdctl restart
RHEL/CentOS 7 and 8
- As
root
, install the package:
yum install zimbra-pasteitcleaned
- Restart mailbox service as
zimbra
user:
su - zimbra zmmailboxdctl restart
Verifying Advanced Paste in Modern UI
Server side verification
After successful installation, you could find:
- Advanced Paste installation directory at: /opt/zimbra/common/lib/pasteitcleaned
- Extension will be deployed at: /opt/zimbra/lib/ext/pasteitcleaned/
- Advanced Paste log file updated at: /opt/zimbra/log/pasteitcleaned.log
You should see a similar success message in the log file:
Hosting environment: Production Content root path: /opt/zimbra Now listening on: http://0.0.0.0:5000
- A dotnet service running. As
root
, execute the command
ps -ef | grep dotnet
You should see a pasteitcleaned process running:
root@apps-development:~# ps -ef | grep dotnet root 1493 7971 0 09:00 pts/2 00:00:00 grep --color=auto dotnet zimbra 11408 1 0 Jan07 ? 00:11:26 /usr/bin/dotnet /opt/zimbra/common/lib/pasteitcleaned/PasteItCleaned.Plugin.Standalone.dll --server.urls http://0.0.0.0:5000
Modern UI Verification
Login to Modern UI and copy/paste a well formatted table from any excel document in the Composer. When pasting, Composer will give you an option to "Keep formatting" or "Discard". Click on "Keep formatting" and the formatting of the copied table is retained.
Example:
Troubleshooting
Logs
The errors/logs for Advanced Paste can be found at /opt/zimbra/log/pasteitcleaned.log
.
Formatting not maintained in the Composer
- If the formatting is not maintained in the Composer for the copied data (as displayed in below image), then perform following steps:
- Check the browser console for any errors. Open the Composer and navigate to Developer Console -> Network. Copy the well formatted table and paste in the composer. You might see a similar response (as displayed in below image):
- Check if the pasteitcleaned process is running:
- As
root
, execute the command
ps -ef | grep dotnet
In case the pasteitcleaned process is not running, it will not return any process id for it:
root@apps-development:~# ps -ef | grep dotnet root 1493 7971 0 09:00 pts/2 00:00:00 grep --color=auto dotnet
- Start the process manually. As
zimbra
user, execute the command:
su - zimbra /usr/bin/dotnet /opt/zimbra/common/lib/pasteitcleaned/PasteItCleaned.Plugin.Standalone.dll --server.urls http://0.0.0.0:5000 > /opt/zimbra/log/pasteitcleaned.log 2>&1 &
- Verify the process is started successfully. As
root
, execute the command:
ps -ef | grep dotnet
You should see a pasteitcleaned process running:
root@apps-development:~# ps -ef | grep dotnet root 1493 7971 0 09:00 pts/2 00:00:00 grep --color=auto dotnet zimbra 11408 1 0 Jan07 ? 00:11:26 /usr/bin/dotnet /opt/zimbra/common/lib/pasteitcleaned/PasteItCleaned.Plugin.Standalone.dll --server.urls http://0.0.0.0:5000