Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Release 62 of the z-push zimbra backend has been uploaded to SourceForge <https://sourceforge.net/projects/zimbrabackend/>
As always - please read the full Release Notes before upgrading
Changes Made To Revision 62: z-push-2 version ONLY
These changes are for the z-push-2 version ONLY
The z-push-1 and as12.1 versions are still at Revision 54
- Add 'Android/5.0' as a multi-folder capable _ua string
- Report actual UserAgent, partial DeviceID, and IP Address in headers
- Remove X-Mailer-Connector header from SendMail
- Output meetingstatus on Exceptions too
- Output recurrence type 1 for zimbra "DAI"ly appointments that are weekly
- Added X-Forwarded-For HTTP header to CURL options
- Wrap subject with htmlspecialchars in 3 places it was overlooked
- Add check for class ZPushAutodiscover to initial host version check
- Additional check added to functions GetAttachmentData and
ItemOperationsGetAttachmentData to allow for Sub-Folder of Shared folder
- Disable document access if Class SyncDocumentLibraryDocument does not exist
- Fix in MakeXMLTree for case where tag has no attributes
- Add required use of new curl_file_create function for PHP 5.5 and later
- Output the Organizer Name/Email on Appointments if available
As always - please read the full Release Notes before upgrading
Changes Made To Revision 62: z-push-2 version ONLY
These changes are for the z-push-2 version ONLY
The z-push-1 and as12.1 versions are still at Revision 54
- Add 'Android/5.0' as a multi-folder capable _ua string
- Report actual UserAgent, partial DeviceID, and IP Address in headers
- Remove X-Mailer-Connector header from SendMail
- Output meetingstatus on Exceptions too
- Output recurrence type 1 for zimbra "DAI"ly appointments that are weekly
- Added X-Forwarded-For HTTP header to CURL options
- Wrap subject with htmlspecialchars in 3 places it was overlooked
- Add check for class ZPushAutodiscover to initial host version check
- Additional check added to functions GetAttachmentData and
ItemOperationsGetAttachmentData to allow for Sub-Folder of Shared folder
- Disable document access if Class SyncDocumentLibraryDocument does not exist
- Fix in MakeXMLTree for case where tag has no attributes
- Add required use of new curl_file_create function for PHP 5.5 and later
- Output the Organizer Name/Email on Appointments if available
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Release 63 of the z-push zimbra backend has been uploaded to SourceForge <https://sourceforge.net/projects/zimbrabackend/>
As always - please read the full Release Notes before upgrading
Changes Made To Revision 63: z-push-2 version ONLY
These changes are for the z-push-2 version ONLY
The z-push-1 and as12.1 versions are still at Revision 54
- Ensure meetingstatus is output correctly for main and exceptions
- Only output attendeestatus to the meeting organizer
- Change 'Android/5.0' to 'Android/5' as a multi-folder capable _ua string
in order to match Android/5.1 also
- Since z-push 2.2.2 the class StringStreamWrapper has been moved and
pre-included from index.php - Check before including it from old location
- Use new exception constant SyncCollections::HIERARCHY_CHANGED
- Trap additional HTML errors in SoapRequest to prevent removing content
- Add checking for HTML errors in functions Logon and ChangesSink
- Fix ChangeFolder function so create/rename/delete/move all work
- Changed SendMail filter to keep the original body in more cases
- Add neg="1" flag to incoming appointment alarms
- Check for Request class in Logon function before setting client variables
- Removed reference to Request class from function SoapRequest
- Reworked Multi-Folder support adding a new configuration file
- Check for existence of DiffState::RowCmp before calling it
- Use DeviceManager function GetUserAgent if available
As always - please read the full Release Notes before upgrading
Changes Made To Revision 63: z-push-2 version ONLY
These changes are for the z-push-2 version ONLY
The z-push-1 and as12.1 versions are still at Revision 54
- Ensure meetingstatus is output correctly for main and exceptions
- Only output attendeestatus to the meeting organizer
- Change 'Android/5.0' to 'Android/5' as a multi-folder capable _ua string
in order to match Android/5.1 also
- Since z-push 2.2.2 the class StringStreamWrapper has been moved and
pre-included from index.php - Check before including it from old location
- Use new exception constant SyncCollections::HIERARCHY_CHANGED
- Trap additional HTML errors in SoapRequest to prevent removing content
- Add checking for HTML errors in functions Logon and ChangesSink
- Fix ChangeFolder function so create/rename/delete/move all work
- Changed SendMail filter to keep the original body in more cases
- Add neg="1" flag to incoming appointment alarms
- Check for Request class in Logon function before setting client variables
- Removed reference to Request class from function SoapRequest
- Reworked Multi-Folder support adding a new configuration file
- Check for existence of DiffState::RowCmp before calling it
- Use DeviceManager function GetUserAgent if available
Last edited by liverpoolfcfan on Sun Apr 03, 2016 9:06 pm, edited 1 time in total.
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Re: Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Release 64 of the z-push zimbra backend has been uploaded to SourceForge <https://sourceforge.net/projects/zimbrabackend/>
As always - please read the full Release Notes before upgrading
Changes Made To Revision 64: z-push-2 version ONLY
These changes are for the z-push-2 version ONLY
The z-push-1 and as12.1 versions are still at Revision 54
- Correct path to backend multi-folder support file for autodiscover
- Identify character encoding of Attachment name and re-use when forwarding
- Remove closing PHP tag from files
- Remove unused experimental function CustomRowCmp
- Set X-Forwarded-For header to Request::$RemoteAddr if available
- Added _ua string 'MSFT-WP/10' to the zimbraMultiFolderUAs.php file
- Save folder permissions in folder array/cache
- If shared calendar with write permision do not output Organizer
- Added _ua string 'Android/6' to the zimbraMultiFolderUAs.php file
- Add try/catch around call to ZPush::GetDeviceManager()->GetUserAgent()
- Support new names for Z-Push official ResolveRecipients classes
- Added code to handle SyncBaseBody as a stream for Z-Push 2.3 and later
- For deleted recurring meetings set meetingstatus to null - don't unset it
- For recurring meetings do not output meetingstatus on exceptions in AS 2.5
- Updated Out-Of-Office to handle different External messages
- Handle both Autodiscover and Browser Tests when setting the _ua string
- Allow a default user XML file to be used for all users
- Add support for category changing to messages and to _cachedMessageLists
- Renamed constructor function from BackendZimbra to __construct
- Removed //IGNORE//TRANSLIT from $params array in SendMail
- Added new config setting 'ZIMBRA_URL_ALLOW_REDIRECT' for OPEN LDAP auth
- Added SmartFolders flag to cache to detect changes and invalidate cache
- Added stats field to _folders for use by new FolderStats functionality
- Added extra GetFolder calls to get data on Shared Folders for FolderStats
As always - please read the full Release Notes before upgrading
Changes Made To Revision 64: z-push-2 version ONLY
These changes are for the z-push-2 version ONLY
The z-push-1 and as12.1 versions are still at Revision 54
- Correct path to backend multi-folder support file for autodiscover
- Identify character encoding of Attachment name and re-use when forwarding
- Remove closing PHP tag from files
- Remove unused experimental function CustomRowCmp
- Set X-Forwarded-For header to Request::$RemoteAddr if available
- Added _ua string 'MSFT-WP/10' to the zimbraMultiFolderUAs.php file
- Save folder permissions in folder array/cache
- If shared calendar with write permision do not output Organizer
- Added _ua string 'Android/6' to the zimbraMultiFolderUAs.php file
- Add try/catch around call to ZPush::GetDeviceManager()->GetUserAgent()
- Support new names for Z-Push official ResolveRecipients classes
- Added code to handle SyncBaseBody as a stream for Z-Push 2.3 and later
- For deleted recurring meetings set meetingstatus to null - don't unset it
- For recurring meetings do not output meetingstatus on exceptions in AS 2.5
- Updated Out-Of-Office to handle different External messages
- Handle both Autodiscover and Browser Tests when setting the _ua string
- Allow a default user XML file to be used for all users
- Add support for category changing to messages and to _cachedMessageLists
- Renamed constructor function from BackendZimbra to __construct
- Removed //IGNORE//TRANSLIT from $params array in SendMail
- Added new config setting 'ZIMBRA_URL_ALLOW_REDIRECT' for OPEN LDAP auth
- Added SmartFolders flag to cache to detect changes and invalidate cache
- Added stats field to _folders for use by new FolderStats functionality
- Added extra GetFolder calls to get data on Shared Folders for FolderStats
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Re: Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Release 65 of the z-push zimbra backend has been uploaded to SourceForge https://sourceforge.net/projects/zimbrabackend/
As always - please read the full Release Notes before upgrading
Changes Made To Revision 65:
- Added zimbraHttpStreamWrapper class to provide attachment length to streamer
- If inv[0] of a Calendar item is an Exception then don't treat it as one
- Fixed issue with timezone identification where DST is not observed
- Fixed issue with population of Timezone object in function GetTz()
- Added handling of Company Main Phone field and nickName
- Added readonly parameter to Setup() for z-push 2.3 support
- Updated GetInvIDFromMsgID to retrieve InvID from Message for exceptions
- Commented out some debug logging
- Incorrect variable name used in unlink command - Check for orphaned files
As always - please read the full Release Notes before upgrading
Changes Made To Revision 65:
- Added zimbraHttpStreamWrapper class to provide attachment length to streamer
- If inv[0] of a Calendar item is an Exception then don't treat it as one
- Fixed issue with timezone identification where DST is not observed
- Fixed issue with population of Timezone object in function GetTz()
- Added handling of Company Main Phone field and nickName
- Added readonly parameter to Setup() for z-push 2.3 support
- Updated GetInvIDFromMsgID to retrieve InvID from Message for exceptions
- Commented out some debug logging
- Incorrect variable name used in unlink command - Check for orphaned files
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Re: Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Release 66 of the z-push zimbra backend has been uploaded to SourceForge <https://sourceforge.net/projects/zimbrabackend/>
As always - please read the full Release Notes before upgrading
Changes Made To Revision 66:
- Use zimbraHttpStreamWrapper class to output MIME body
- Log ERROR if setting "zimbraAttachmentsBlocked" is "TRUE"
- Fix passing header on GetFolder for shared folders generates new session
- Replace split() with explode() for PHP 7 compatability
- Refactored GetMessageList() to improve efficiency and reduce memory needed
- Added config.php options ZIMBRA_SSL_VERIFYPEER and ZIMBRA_SSL_VERIFYHOST
- Added SSL Verify Peer and Host options to zimbraHttpStreamWrapper class
As always - please read the full Release Notes before upgrading
Changes Made To Revision 66:
- Use zimbraHttpStreamWrapper class to output MIME body
- Log ERROR if setting "zimbraAttachmentsBlocked" is "TRUE"
- Fix passing header on GetFolder for shared folders generates new session
- Replace split() with explode() for PHP 7 compatability
- Refactored GetMessageList() to improve efficiency and reduce memory needed
- Added config.php options ZIMBRA_SSL_VERIFYPEER and ZIMBRA_SSL_VERIFYHOST
- Added SSL Verify Peer and Host options to zimbraHttpStreamWrapper class
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Re: Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Release 67 of the z-push zimbra backend has been uploaded to SourceForge <https://sourceforge.net/projects/zimbrabackend/>
As always - please read the full Release Notes before upgrading
Changes Made To Revision 67:
- Allow for iPxx device meeting modification request with shadow data
- Changed ZIMBRA_DEBUG logging of folder setup to only fire on word 'setup'
- Move GetMailboxSearchResults() Log line to avoid warning on no folder Id
- Tidy up logging in GetMailboxSearchResults()
- Add debug logging of unidentified incoming Timezone in ChangeMessage()
- unset $preModAppt->recurrence->premodtype after using it to fix type
- Log error and return false if GetMsgResponse is not present in response
- Add config.php option ZIMBRA_DISABLE_BIRTHDAY_SYNC
- Don't allow difference in dtstamp of appointment exceptions cause an issue
- Keep original Organizer for Tasks in ChangeMessage
- Check for service.PROXY_ERROR in Login and ChangesSink in multi-server setup
- If no Change Token is returned from CreateWaitSet then delay and return
- Updated comment on FakeOutbox
As always - please read the full Release Notes before upgrading
Changes Made To Revision 67:
- Allow for iPxx device meeting modification request with shadow data
- Changed ZIMBRA_DEBUG logging of folder setup to only fire on word 'setup'
- Move GetMailboxSearchResults() Log line to avoid warning on no folder Id
- Tidy up logging in GetMailboxSearchResults()
- Add debug logging of unidentified incoming Timezone in ChangeMessage()
- unset $preModAppt->recurrence->premodtype after using it to fix type
- Log error and return false if GetMsgResponse is not present in response
- Add config.php option ZIMBRA_DISABLE_BIRTHDAY_SYNC
- Don't allow difference in dtstamp of appointment exceptions cause an issue
- Keep original Organizer for Tasks in ChangeMessage
- Check for service.PROXY_ERROR in Login and ChangesSink in multi-server setup
- If no Change Token is returned from CreateWaitSet then delay and return
- Updated comment on FakeOutbox
-
- Posts: 32
- Joined: Fri Sep 12, 2014 11:10 pm
Re: Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Hi @liverpoolfcfan
Great stuff! Just installed it yesterday on my personal Zimbra installation and it works great
Keep up the good work!
Great stuff! Just installed it yesterday on my personal Zimbra installation and it works great
Keep up the good work!
zpush and zimbrabackend
Hello
I'm testing Z Push. Z I'm getting an error like below, unfortunately. What can be the problem ? Can you help?
/var/www/html/z-push/lib/core/streamer.php:211 Array to string conversion (8)
/var/www/html/z-push/lib/core/streamer.php:211 Array to string conversion (8)
/var/www/html/z-push/lib/core/streamer.php:211 Array to string conversion (8)
/var/www/html/z-push/backend/zimbra/zimbra.php:10933 Uninitialized string offset: 0 (8)
/var/www/html/z-push/backend/zimbra/zimbra.php:10933 Uninitialized string offset: 0 (8)
Zimbra->SoapRequest(): SOAP FAULT: Error Code [mail.SEND_FAILURE]
Zimbra->SoapRequest(): SOAP FAULT: Error Reason [SMTP server reported: No recipient addresses]
WBXMLException: Internal Server Error - code: 0
ser-agent: 'Android-SAMSUNG-SMCCCCX/101.700'
Request could not be processed correctly due to a WBXMLException. Please report this.
I'm testing Z Push. Z I'm getting an error like below, unfortunately. What can be the problem ? Can you help?
/var/www/html/z-push/lib/core/streamer.php:211 Array to string conversion (8)
/var/www/html/z-push/lib/core/streamer.php:211 Array to string conversion (8)
/var/www/html/z-push/lib/core/streamer.php:211 Array to string conversion (8)
/var/www/html/z-push/backend/zimbra/zimbra.php:10933 Uninitialized string offset: 0 (8)
/var/www/html/z-push/backend/zimbra/zimbra.php:10933 Uninitialized string offset: 0 (8)
Zimbra->SoapRequest(): SOAP FAULT: Error Code [mail.SEND_FAILURE]
Zimbra->SoapRequest(): SOAP FAULT: Error Reason [SMTP server reported: No recipient addresses]
WBXMLException: Internal Server Error - code: 0
ser-agent: 'Android-SAMSUNG-SMCCCCX/101.700'
Request could not be processed correctly due to a WBXMLException. Please report this.
-
- Elite member
- Posts: 1112
- Joined: Sat Sep 13, 2014 12:47 am
Re: zpush and zimbrabackend
Typically if there is a WBXMLException then there is something unusual in the protocol between the device and z-push. In this case you would need to engage the z-push guys. Open a thread on https://forum.kopano.io/category/26/gen ... -of-z-pushzgokan wrote:Hello
I'm testing Z Push. Z I'm getting an error like below, unfortunately. What can be the problem ? Can you help?
WBXMLException: Internal Server Error - code: 0
ser-agent: 'Android-SAMSUNG-SMCCCCX/101.700'
Request could not be processed correctly due to a WBXMLException. Please report this.
Re: Z-Push Zimbra Backend (Push Email, Contacts, Appointments & Tasks)
Thanks... I opened a post there.
https://forum.kopano.io/topic/825/zpush ... on-problem
https://forum.kopano.io/topic/825/zpush ... on-problem