Disable default GAB syncronization
-
Android 7.0 Kernel 3.18.14-111-4523 , Samsung Galaxy S7 Edge
I will paste a screenshot tonight, in the contact on the phone it shows the name and the email address and
“Connected via Exchange” that presumably means it came from Exchange, not sure.
Anyway I won’t take your time further until I have investigated.
Thanks for getting back to me so quickly.
-
So there is 100% a problem here.
What we did is the following:
we created with kopano-admin a new user called dummy email dummy@dummy.com
did nothing else (the user isn’t even logged in into webapp or deskapp or outlook) and… It appeared on the user’s mobile phone in the list of contacts.
I am not aware of us setting up any job that copies the GAB contacts into a separate public folder or anything else…
-
please post some screenshot and logs to back you claims.
Edit: please also include your z-push config.php plus the output of
z-push-admin -a list -u $youruser
-
Will do although it may take a while as I do not have the phone in my hands (different person).
-
I can replicate it on my own phone too.
Created an account dum@dum.com and I get it
Will send screenshot tonight and I will post the exact versions of the packages including kopano-core.
Note that kopano-core is an older 8.4 overnight build so perhaps that could be the issue?
Anymore, more tonight when I get back home.
-
One thing: I am not using LDAP but the standard Kopano user creation.
-
So this is what happens.
- , there is no user called “dum” in Kopano.
The screen is therefore blank in the search in Android.
- I add a user “dum” with the following command
kopano-admin -c dum -f dum -e dum@dum.com -p dum
- I go back to the phone and I can now see the new contact when I search on it.
and
- When I search a contact that I also have in my own contacts, I can see the original contact but also the corporate contact in addition (forget about whatsapp).
- After debugging the webxml I can see that the corporate contact actually comes through during the search in Android, rather than a contact being added. In fact I can observe that the corporate contact doesn’t come up when the phone doesn’t have a data connection.
The XML is below, in this case I searched for “Luca” but it comes up with Luca Salvini in the corporate directory too…
20/07/2017 22:25:12 [13193] [DEBUG] [mrc] Request::ProcessHeaders() ASVersion: 14.0 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] ZPush::CommandNeedsProvisioning(16): true 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] FileStateMachine->GetState() read '31658' bytes from file: '/var/lib/z-push/5/3/androidc700440035-devicedata' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] ASDevice data loaded for user: 'mrc' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] TopCollector(): Initialized mutexid Resource id #18 and memid Resource id #19. 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] TopCollector initialised with IPC provider 'IpcSharedMemoryProvider' with type '20' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] LoopDetection(): Initialized mutexid Resource id #22 and memid Resource id #23. 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] LoopDetection initialised with IPC provider 'IpcSharedMemoryProvider' with type '1337' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] ZPush::HierarchyCommand(16): false 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] DeviceManager->ProvisioningRequired('651286485') saved device key '651286485': false 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] DeviceManager->getPolicyName(): determined policy name: 'default' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] DeviceManager->getProvisioningPolicies(): loaded 'default' policy. 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] ZPush::CommandNeedsAuthentication(16): true 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] KopanoBackend->Logon(): Trying to authenticate user 'mrc'.. 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] KopanoBackend->openMessageStore('mrc'): Found 'DEFAULT' store: 'Resource id #34' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] KopanoBackend->Logon(): User 'mrc' is authenticated 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] Store supports properties containing Unicode characters. 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] ZPush::CommandNeedsPlainInput(16): false 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I <Search:Search> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I <Search:Store> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I <Search:Name> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I GAL 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Name> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I GAL 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Name> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I <Search:Query> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I luca 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Query> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I <Search:Options> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I <Search:Range> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I 0-19 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Range> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Options> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Store> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] I </Search:Search> 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] WBXMLEncoder->startWBXML() type: vnd.ms-sync.wbxml 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Search> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Status> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O 1 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Status> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Response> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Store> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Status> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O 1 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Status> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Result> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Properties> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:DisplayName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O Luca Damaggio 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:DisplayName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:Alias> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O lucadm 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:Alias> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:LastName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O Luca Damaggio 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:LastName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:EmailAddress> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O luca@lucadamaggio.com 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:EmailAddress> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Properties> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Result> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Result> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Properties> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:DisplayName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O Luca De Giorgi 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:DisplayName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:Alias> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O lucag 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:Alias> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:LastName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O Luca De Giorgi 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:LastName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:EmailAddress> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O luca@degiorgi.co.uk 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:EmailAddress> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Properties> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Result> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Result> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Properties> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:DisplayName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:LastName> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <GAL:EmailAddress> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O luca.salvini@ventisetteconsulting.com 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </GAL:EmailAddress> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Properties> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Result> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Range> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O 0-2 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Range> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O <Search:Total> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O 3 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Total> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Store> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Response> 20/07/2017 22:25:12 [13193] [WBXML] [mrc] O </Search:Search> 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] WBXMLEncoder->endTag() WBXML output completed 20/07/2017 22:25:12 [13193] [WBXML] [mrc] WBXML-OUT: AwFqAAAPRUwDMQABTUdMAzEAAU5PABBFA0x1Y2EgRGFtYWdnaW8AAUoDbHVjYWRtAAFMA0x1Y2EgRGFtYWdnaW8AAU8DbHVjYUBsdWNhZGFtYWdnaW8uY29tAAEBAQAPTk8AEEUDTHVjYSBEZSBHaW9yZ2kAAUoDbHVjYWcAAUwDTHVjYSBEZSBHaW9yZ2kAAU8DbHVjYUBkZWdpb3JnaS5jby51awABAQEAD05PABBFA0x1Y2EgU2FsdmluaQABSgNsdWNhAAFMA0x1Y2EgU2FsdmluaQABTwNsdWNhLnNhbHZpbmlAdmVudGlzZXR0ZWNvbnN1bHRpbmcuY29tAAEBAQAPSwMwLTIAAVADMwABAQEB 20/07/2017 22:25:12 [13193] [WBXML] [mrc] WBXML-IN : AwFqAAAPRUdIA0dBTAABSQNsdWNhAAFKSwMwLTE5AAEBAQE= 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] KopanoBackend->TerminateSearch(): terminating search for pid 12507 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] LoopDetection->ProcessLoopDetectionTerminate() 20/07/2017 22:25:12 [13193] [ INFO] [mrc] cmd='Search' memory='3.31 MiB/4.00 MiB' time='0.14s' devType='Android' devId='androidc700440035' getUser='mrc' from='::1' idle='0s' version='2.3.7+0' method='POST' httpcode='200' 20/07/2017 22:25:12 [13193] [DEBUG] [mrc] -------- End
WebApp:
3.4.0.762-516.1
Kopano Core:
8.4.0-344
Z-Push:
2.3.7+0 -
Hello @mcostan ,
ah this is what i already suspected. android by default is not able to sync the gab, but it has the possibility to do lookups at the server when searching the addressbook. With the upcoming z-push 2.4 and activesync 14.1 support these looked up contacts will even have pictures.
PS: please use code blocks when posting logs and config files
-
Thanks Felix.
Question for you. Is there any way that there can be a switch somewhere in z-push (or elsewhere) to disable this functionality? That is: the GAB isn’t searchable at all by Android?
-
Hi @mcostan ,
you could disable the gab in the server.cfg, which should prevent the mobile from searching it as well.
Why do you want to disable this? I could understand that you don’t want to sync a potentially large gab to your mobile clients, but why don’t you want the online lookups?
-
hi Felix,
If I disable the GAB in server.cfg would that disable it in webapp too?
This setup stems from my own fault, that is, I originally set up the few users using the kopano authentication as opposed to LDAP. Which means (as far as I understand) that it is impossible to hide individual users from the GAB as it is in LDAP. So the only way is to hide the GAB itself…
-
@mcostan said in Disable default GAB syncronization:
If I disable the GAB in server.cfg would that disable it in webapp too?
yes
@mcostan said in Disable default GAB syncronization:
This setup stems from my own fault, that is, I originally set up the few users using the kopano authentication as opposed to LDAP. Which means (as far as I understand) that it is impossible to hide individual users from the GAB as it is in LDAP. So the only way is to hide the GAB itself…
yes, its not possible to hide individual users from the gab, when using the db backend. but if you want to hide individual users the route to go would be to disable the gab as a whole imho.
-
thanks, all clear, much appreciated.