[Tickets #14655] OS version detection when using android/gmail app doesn't work

noreply at bugs.horde.org noreply at bugs.horde.org
Fri Jun 9 13:33:00 UTC 2017


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: https://bugs.horde.org/ticket/14655
------------------------------------------------------------------------------
  Ticket             | 14655
  Created By         | manuel-horde at mausz.at
  Summary            | OS version detection when using android/gmail app
                     | doesn't work
  Queue              | Synchronization
  Version            | FRAMEWORK_5_2
  Type               | Bug
  State              | Unconfirmed
  Priority           | 1. Low
  Milestone          |
  Patch              |
  Owners             |
------------------------------------------------------------------------------


manuel-horde at mausz.at (2017-06-09 13:33) wrote:

The multiplex detection in ActiveSync/Device.php relies on the OS  
version being sent by the client. However the gmail app only sends the  
UserAgent, no OS version or any other properties to detect the OS.  
Thus everything gets multiplexed / no support for separate calendars.

A currently up2date android / gmail app sends these properties:

       device_type: Android
      device_agent: Android-Mail/7.5.21.158049789.release
  device_supported:  
a:1:{s:8:"Contacts";a:58:{i:0;s:22:"POOMCONTACTS:FirstName";i:1;s:21:"POOMCONTACTS:LastName";i:2;s:23:"POOMCONTACTS:MiddleName";i:3;s:19:"POOMCONTACTS:Suffix";i:4;s:24:"POOMCONTACTS:CompanyName";i:5;s:21:"POOMCONTACTS:JobTitle";i:6;s:26:"POOMCONTACTS:Email1Address";i:7;s:26:"POOMCONTACTS:Email2Address";i:8;s:26:"POOMCONTACTS:Email3Address";i:9;s:33:"POOMCONTACTS:Business2PhoneNumber";i:10;s:32:"POOMCONTACTS:BusinessPhoneNumber";i:11;s:17:"POOMCONTACTS2:MMS";i:12;s:30:"POOMCONTACTS:BusinessFaxNumber";i:13;s:30:"POOMCONTACTS2:CompanyMainPhone";i:14;s:26:"POOMCONTACTS:HomeFaxNumber";i:15;s:28:"POOMCONTACTS:HomePhoneNumber";i:16;s:29:"POOMCONTACTS:Home2PhoneNumber";i:17;s:30:"POOMCONTACTS:MobilePhoneNumber";i:18;s:27:"POOMCONTACTS:CarPhoneNumber";i:19;s:29:"POOMCONTACTS:RadioPhoneNumber";i:20;s:24:"POOMCONTACTS:PagerNumber";i:21;s:34:"POOMCONTACTS:AssistnamePhoneNumber";i:22;s:23:"POOMCONTACTS2:IMAddress";i:23;s:24:"POOMCONTACTS2:IMAddress2";i:24;s:24:"POOMCONTACTS2:IMAddress3";i:25;s:25
:"POOMCONTACTS:BusinessCity";i:26;s:28:"POOMCONTACTS:BusinessCountry";i:27;s:31:"POOMCONTACTS:BusinessPostalCode";i:28;s:26:"POOMCONTACTS:BusinessState";i:29;s:27:"POOMCONTACTS:BusinessStreet";i:30;s:21:"POOMCONTACTS:HomeCity";i:31;s:24:"POOMCONTACTS:HomeCountry";i:32;s:27:"POOMCONTACTS:HomePostalCode";i:33;s:22:"POOMCONTACTS:HomeState";i:34;s:23:"POOMCONTACTS:HomeStreet";i:35;s:22:"POOMCONTACTS:OtherCity";i:36;s:25:"POOMCONTACTS:OtherCountry";i:37;s:28:"POOMCONTACTS:OtherPostalCode";i:38;s:23:"POOMCONTACTS:OtherState";i:39;s:24:"POOMCONTACTS:OtherStreet";i:40;s:28:"POOMCONTACTS:YomiCompanyName";i:41;s:26:"POOMCONTACTS:YomiFirstName";i:42;s:25:"POOMCONTACTS:YomiLastName";i:43;s:22:"POOMCONTACTS2:NickName";i:44;s:26:"POOMCONTACTS:AssistantName";i:45;s:25:"POOMCONTACTS2:ManagerName";i:46;s:19:"POOMCONTACTS:Spouse";i:47;s:23:"POOMCONTACTS:Department";i:48;s:18:"POOMCONTACTS:Title";i:49;s:27:"POOMCONTACTS:OfficeLocation";i:50;s:24:"POOMCONTACTS2:CustomerId";i:51;s:26:"POOMCONTACTS2:Gover
nmentId";i:52;s:25:"POOMCONTACTS2:AccountName";i:53;s:24:"POOMCONTACTS:Anniversary";i:54;s:21:"POOMCONTACTS:Birthday";i:55;s:20:"POOMCONTACTS:WebPage";i:56;s:20:"POOMCONTACTS:Picture";i:57;s:19:"POOMCONTACTS:FileAs";}}
device_properties:  
a:5:{s:16:"announcedVersion";s:23:"2.5,12.0,12.1,14.0,14.1";s:9:"userAgent";s:37:"Android-Mail/7.5.21.158049789.release";s:7:"version";s:4:"14.1";s:7:"blocked";N;s:9:"multiplex";i:15;}

where as "Android-Mail/7.5.21.158049789.release" is the current gmail  
app version.

Also the current code in getMajorVersion and getMinorVersion  
incorrectly parses the useragent as Android 7.5

I assume the best thing to do is to add "Android-Mail" to the parsing  
and return some fixed android version. e.g 6.0 or something. Plus  
extend the _sniffMultiplex method. I can send a PR for that if desired.





More information about the bugs mailing list