Autor |
Nachricht |
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Di Sep 17, 2019 15:21 |
|
Folgendes Szenarion:
Abgleich mehrerer Geräte mit den selben Kontakten
Es wird dazu mit der SyncDB gearbeitet. Die Datei SyncDB_Phonebook.vcf wird aus einem CRM heraus aufgebaut. Es ist die beiderseitige Synchronsiation eingestellt.
MPE will nun folgendes machen:
Alle neuen Kontakte aus dem CRM sollen auf das Handy kopiert werden.
Alle Kontakte auf dem Handy, die nicht in SyncDB_Phonebook.vcf stehen, sollen gelöscht werden.
Für alle Kontakte, die im CRM geändert wurden, sollen die Angaben aus dem Handy übernommen werden.
Machen soll MPE aber folgendes:
Neue Kontakte aus dem CRM sollen aufs Handy.
Geänderte Kontakte sollen auf dem Handy überschrieben werden.
Neue Kontakte vom Handy sollen in die SyncDB_Phonebook.vcf
Ändere ich die Einstellung, so dass die SyncDB Vorrang hat, dann werden die neuen Kontakte auf dem Handy gelöscht. Das bringt mich also nicht weiter.
Es muss zur Zeit sehr viel manuell gemacht werden, wenn die Unterschiede angezeigt werden.
Wie muss alles so eingestellt werden, dass alles im Blindflug funktioniert, ohne dass man eingreifen muss?
Gruß Thomas |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Di Sep 17, 2019 19:23 |
|
Welche Kontaktkonten sind unter Handy => MPE-Client => Einstellungen => Zu synchronisierende Kontaktkonten auf den einzelnen Handys aktiviert ?
Ich rate jeweils nur ein lokales Kontaktkonto zu aktivieren. |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta |
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Mi Sep 18, 2019 09:00 |
|
Auf den Handys wird nur Telefon synchronsiert. WhatsApp, Telegram und Google sind nicht angehakt. Neue Kontakte werden in Telefon angelegt. |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Mi Sep 18, 2019 10:01 |
|
Sorry, ich hatte übersehen, dass Du es bist, der die SyncDB_Phonebook.vcf teilweise "manipuliert" und die nicht ausschließlich von MPE erstellt wird ?!
Wahrscheinlich solltest Du dort auch nach der Ursache suchen!
Ich habe das gerade mit 3 Geräten getestet (natürlich ohne die SyncDB_Phonebook.vcf zu manipulieren) und kann die von Dir beschriebenen Fehler nicht reproduzieren.
Nach welchem Algorithmus vergibst Du denn nun die VID ? |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta |
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Mi Sep 18, 2019 10:47 |
|
Die ersten Teile sind Konstanten und im letzten Block nehme ich die ID aus dem CRM. Neue Kontakte haben dann eine UID vom MPE. Eigentlich passt das auch, denn der MPE findet ja die Einträge, die anders sind. Aber nimmt halt dann die Handy-Einträge. Wie erkennt eigentlich der MPE, ob ein Kontakt auf dem Handy oder dem Computer neuer ist? Soetwas, wie Datum und Uhrzeit der letzten Änderung habe ich nicht in den Daten gefunden.
Thomas |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Mi Sep 18, 2019 12:06 |
|
Im Androidsystem existiert in der Datenbank kein Zeitstempel, d.h.
1. MPE kontrolliert ob es Veränderungen gibt siehe => Synchronisationsrichtung bei Sync "Nur MyPhoneExplorer"
2. Fand ein Sync unter 1. statt wird im Bestätigungsfenster auch ein Sync Handy > Syncdatenbank vorgeschlagen (auch bei einem Synchronisationskonflikt egal wann die Einträge geändert wurden)
Wichtig: Bei einem Abbruch der Synchronisation im Bestätigungsfenster und erneutem Sync, favorisiert MPE die Synchronisation des selben Syncpaares von der Syncdatenbank > Handy.
Thomas_FTL hat Folgendes geschrieben: | MPE will nun folgendes machen:
1. Alle neuen Kontakte aus dem CRM sollen auf das Handy kopiert werden.
2.Alle Kontakte auf dem Handy, die nicht in SyncDB_Phonebook.vcf stehen, sollen gelöscht werden.
3.Für alle Kontakte, die im CRM geändert wurden, sollen die Angaben aus dem Handy übernommen werden.
|
1. ist ja OK
2. Kann ich bei nur einem existierenden Kontaktkonto überhaupt nicht nachvollziehen ?!
3. Ist auch OK, wenn Veränderungen auf beiden Seiten stattgefunden haben |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta |
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Mi Sep 18, 2019 13:07 |
|
Auf dem Handy haben keine Änderungen stattgefunden. Die gab es nur im CRM und damit in der SyncDB_Phonebook.vcf.
MPE macht bei Synchronisation in beide Richtungen folgendes:
Mit anderen Worten, neue Kontakte kommen zwar auf das Handy, in allen anderen Fällen scheint aber das Handy Vorrang zu haben.
Wenn MPE auf Vorrang steht, wird auf dem Handy alles gelöscht,was nicht im MPE ist.
Wenn Handy auf Vorrang ist, wird im MPE alles gelöscht, was nicht auf dem Handy ist.
Beides ist logisch.
Ich möchte aber gern so synchronisieren:
Mit anderen Worten, es sollen alle neuen Kontakte vom Handy in den MPE geladen werden und bei Ungleichheit soll vom MPE aufs Handy geschrieben werden.
Man kann sich zwar durch die Liste durchklicken und alles einzeln anpassen, aber wenn aus dem CRM 10 neue Kontakte und 20 Änderungen kommen und das Handy wiederum 8 neue Kontakte liefert, ist das sehr fehleranfällig. |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Mi Sep 18, 2019 13:41 |
|
Thomas_FTL hat Folgendes geschrieben: | Mit anderen Worten, neue Kontakte kommen zwar auf das Handy, in allen anderen Fällen scheint aber das Handy Vorrang zu haben. |
Nein, existiert keine Veränderung im Handy sollte eine Veränderung der Datenbank auch einen Sync von der Datenbank > Handy vorschlagen.
D.h. die 3.Zeile ist bei Dir nicht korrekt!
Thomas_FTL hat Folgendes geschrieben: | ...und bei Ungleichheit soll vom MPE aufs Handy geschrieben werden. |
Workaround: Dann solltest Du den Sync immer einmal abbrechen und sofort wiederholen. |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta |
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Mi Sep 18, 2019 17:09 |
|
Zitat: | Nein, existiert keine Veränderung im Handy sollte eine Veränderung der Datenbank auch einen Sync von der Datenbank > Handy vorschlagen.
D.h. die 3.Zeile ist bei Dir nicht korrekt! | Woran merkt MPE, dass sich etwas verändert hat? Die Konvertierung der Umlaute kann es nicht sein. Wenn die SyncDB_Phonebook.vcf gefüllt wird, dann sind die Daten im Windowszeichensatz. Kommen sie zurück vom Handy ist alles UTF-8. Daran kann es aber auch nicht liegen, denn dann müssten alle Datensätze mit Umlauten als geändert markiert sein und das ist nicht der Fall. Das ist aber auch die einzigste Änderung im Handy, außer Android macht noch was heimlich mit den Daten.
Die Zeilen sagen genau das aus, was passiert. Bei beiderseitiger Synchronisation werden neue Kontakte in beide Richtungen kopiert und bei Änderungen an bestehenden Kontakten wird gnadenlos vom Handy zum MPE kopiert, auch wenn die Änderung auf dem Computer stattgefunden hat.
Zitat: | Workaround: Dann solltest Du den Sync immer einmal abbrechen und sofort wiederholen. | Wie kann ich das beim Aufruf über die Kommandozeile realisieren? MPE wird per Kommandozeile aus dem CRM gestartet.
Code: | myphoneexplorer.exe noautoconnect
myphoneexplorer.exe action=sync flags=closeafteraction syncitem=phonebook |
Thomas |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Mi Sep 18, 2019 18:40 |
|
Thomas_FTL hat Folgendes geschrieben: | Woran merkt MPE, dass sich etwas verändert hat? |
Durch einen Vergleich der Datensatzpärchen.
Ist ein Unterschied vorhanden, wird im Bestätigungsfenster ein Syncvorschlag realisiert:
1. Fand die Änderung in der internen Datenbank statt, dann
a) wenn kein Sync Handy<>MPE erfolgte: Interne Sync-Datenbank > Handy
b) wenn ein Sync Handy<>MPE erfolgte: Handy > Interne Sync-Datenbank [Datenbankkonflikt, beim wiederholtem Sync gilt wieder a)]
2. Fand keine Änderung in der internen Datenbank statt, dann Handy > Interne Sync-Datenbank
Du könntest
- vor dem ersten Sync in der settings.dat die Variable "ContactSync = 0" setzen ("Nur mit MyPhoneExplorerer)"
- Sync
- in der settings.dat die Variable "ContactSync = 18" setzen ("interne Sync-Datenbank)"
- Sync |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta
Zuletzt bearbeitet von icke1954 am Mi Sep 18, 2019 21:09, insgesamt 3-mal bearbeitet |
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Mi Sep 18, 2019 18:53 |
|
Vor dem ersten Abgleich habe ich alle Kontakte auf dem Handy und die Datei Phonebook.dat im Handy-Verzeichns gelöscht, damit ich dort einen jungfräulichen Zustand hatte. Das Telefonbuch wird nicht mit Google synchronisiert. Das habe ich in den Kontoeinstellungen vom Handy entsprechend deaktiviert, damit nicht von der Seite irgendwelche Effekte kommen.
Beim ersten Synchronisieren kamen dann alle Kontakte sauber aufs Handy. Eine Woche später wurde erneut synchronisiert. Dabei kam dann das Problem hoch.
Die Synchronisation in 2 Schritten probiere ich aus.
Thomas |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Mi Sep 18, 2019 20:43 |
|
Ich habe den Verdacht, dass sich in der Datenbank im Handy irgend etwas geändert hatte, was u.U. nicht sichtbar war ?! Dann wird der Flag Handy > Interne Datenbank gesetzt und der Trick mit dem doppelten Sync sollte funktionieren.
PS. Ich mußte noch eine Korrektur in meinem vorherigen Post machen, hatte die Variante vergessen, wenn nur im Handy / MPE eine Änderung erfolgte. |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta |
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Do Sep 19, 2019 21:29 |
|
Der doppelte Abgleich hat nichts gebracht. Ich versuche jetzt einen anderen Weg.
1. Abgleich MPE - Handy: Handy hat Vorrang
2. Verarbeiten aller Kontakte, die ihre UID vom MPE erhalten haben (Das sind die Kontakte, die auf dem Handy angelegt wurden)
3. Export der Kontakte aus dem CRM (alle Kontakte mit UID vom MPE erhalten eine UID vom CRM)
4. Abgleich MPE - Handy: SyncDB hat Vorrang
|
|
|
|
|
Thomas_FTL
Anmeldedatum: 27.07.2016
Beiträge: 31
|
Verfasst am:
Sa Sep 21, 2019 09:49 |
|
So, der neue Weg funktioniert super. Vielleicht auch als Anregung für andere, die eine Drittsoftware abgleichen müssen und dabei weder über OL, noch über TB gehen können oder wollen und die die ähnliche Ansprüche an den Abgleich haben.
In der settings.dat des entsprechenden Handys:
Code: | [Main]
ContactSync=18
[SyncDB]
ContactSyncMode= 2, dann 1
ContactConfirmation=0
|
1. Setzen von ContactSyncMode=2 (Handy überschreibt SyncDB)
Code: | myphoneexplorer.exe action=sync flags=noerrmsg,closeafteraction syncitem=phonebook
|
2. SyncDB_Phonebook.vcf auslesen und verarbeiten
3. SyncDB_Phonebook.vcf mit den Daten aus dem CRM neu aufbauen
4. Setzen von ContactSyncMode=1 (SyncDB überschreibt Handy)
Code: | myphoneexplorer.exe action=sync flags=noerrmsg,closeafteraction syncitem=phonebook
|
Gruß Thomas |
|
|
|
|
icke1954
Moderator
Anmeldedatum: 19.04.2014
Beiträge: 15899
|
Verfasst am:
Sa Sep 21, 2019 10:02 |
|
Danke für Deine Info und ein schönes WE
Gruß icke |
_________________ Samsung Galaxy S3 / Android 4.3
Samsung Galaxy S5 / Android 6.01
Samsung Galaxy S8 / Android 9.0
Samsung Galaxy Tab 4 Android 10.0
Samsung Galaxy S20 / Android 13.0
MPE Version 2.1 akt. Nightly / akt. MPE-Client Beta |
|
|
|
|