Giter Club home page Giter Club logo

contact-conversion-wizard's Introduction

Contact-Conversion-Wizard Build Status Downloads Latest Release

Programm, welches auf einfache Weise Kontaktlisten zwischen verschiedenen Programmen/Geräten konvertiert.

Dieses Programm sucht Mitwirkende. Auch gelegentliche Patches (Tests, CI, Weiterentwicklung) und Dokumentation sind willkommen.

Einsatzzweck

Ursprünglich entstand das Programm, da dem Autor die existierenden Methoden das Outlook Telefonbuch in die Fritz!Box zu übernehmen zu umständlich waren.

Aus dem dem hierfür geschriebenen Programm (ursprünglich ein reines Outlook-zu-Fritz!Box Konvertierprogramm) ist im Laufe der Zeit ein universelles Kontaktlisten-Umwandlungs-Tool geworden, das Kontakte aus einer ganzen Reihe von Quellen importieren kann und eine vielzahl Formate exportieren kann.

Quellcode

Das Programm ist in C# geschrieben (Lizenz GPLv3). Binaries (.exe) zum Herunterladen gibt es in den Releases. Wie bei C#/.NET Programmen üblich, ist es auch unter Linux lauffähig, sofern man eine aktuelle Mono Runtime installiert hat (natürlich ohne Outlook Support).

Screenshot

Windows 8.1 Screenshot, das den Contact Conversion Wizard v3.5.0.2 zeigt: Ein GUI Fenster mit 3 Bereichen: Links: Daten laden; Mitte: Daten ansehen; Rechts: Daten abspeichern

GUI

Abhängigkeiten

Windows: .NET Runtime v4 Andere: Siehe Linux

Autor, Contributing, Mitmachen

Gerald Hopf entwickelte und stellte das Tool bis Mitte 2016 auf seiner Website zur Verfügung. Im ip-phone-forum wurde über einen Fork nachgedacht. Here it is.

Weitere Tools

Tool Programmiersprache / Plattform Web-Version Import Export Lizenz
Contact-Conversion-Wizard C# bevorzugt Windows; MacOS und Linux ggf. möglich - Outlook, Fritz!Box XML, vCard, Fritz!Adr, CSV, Google Contacts Outlook, Fritz!Box XML, vCard, Fritz!Adr, Snom v7, Snom v8, Gigaset Talk&Surf CSV, Asstra, Grandstream, Auerswald, Google Contacts GPLv3
fritzXML2vcard JavaScript - Node.js Nahezu alle Betriebssysteme verfügbar Fritz!Box XML vCard(s) MIT
vcard2fritzXML Java - Nahezu alle Betriebssysteme - vCard Fritz!Box XML GPLv2

contact-conversion-wizard's People

Contributors

rillke avatar tryallthethings avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

contact-conversion-wizard's Issues

BDAY: Missing

Hi,
könntest du beim Load Data from (vCard) noch das Feld BDAY: includen und falls kein jahr vorhanden ist 1900 einfügen?
Beispiel:
BDAY:--0119
BDAY:19000119

Projektdatei / Build instructions / Project file

The project needs a project build file. Decompiling the latest windows binary with JetBrains.dotPeek.2018.2.3 revealed lots of dependencies which aren't yet included:

> tree
├───Contact_Conversion_Wizard
│   └───Properties
├───Google
│   ├───Contacts
│   └───GData
│       ├───Client
│       │   ├───ResumableUpload
│       │   └───Util
│       ├───Contacts
│       └───Extensions
│           ├───AppControl
│           ├───Apps
│           ├───Exif
│           ├───Location
│           └───MediaRss
├───LinqBridge
├───LumenWorks
│   └───Framework
│       └───IO
│           └───Csv
│               └───Resources
├───Microsoft
│   └───Office
│       ├───Core
│       └───Interop
│           └───Outlook
├───Newtonsoft
│   └───Json
│       ├───Bson
│       ├───Converters
│       ├───Linq
│       ├───Schema
│       ├───Serialization
│       └───Utilities
└───System
    ├───Linq
    └───Runtime
        └───CompilerServices

Charset/decoding problems with export from macOS AddressBook

Hello,

thanks for sharing this program, very helpful!

Exporting an Address-Book from macOS I get garbled character data, whenever the VCARD is constructed like this:

BEGIN:VCARD
VERSION:2.1
PRODID:-//Apple Inc.//Mac OS X 10.11.6//EN
N;CHARSET=MACINTOSH:- K�chle;Erika;;;
FN;CHARSET=MACINTOSH:Erika K�chle
TEL;WORK;VOICE;pref:00000 - 00 0 00
ADR;WORK;pref:;;Muster Str. 00\n00000 Musterstadt;;;;
UID:00000000-0000-0000-0000-000000000000
X-ABUID:00000000-0000-0000-0000-000000000000:ABPerson
END:VCARD

I don't know the interna of the VCARD format, but it seems, that Apple has added an extension, reporting the charset encoding, which could be used to map the input to the right chars.

For now I could easily work around this in Bash with:

iconv -f MACROMAN -t utf-8 < export.vcf > export-utf8.vcf

vcf import

vcf files are ignored when phone number is empty

VCF UTF-8-BOM/UTF-8

CCW 3.5.0.0 installed from elsewhere.

I just discovered exporting into VCF, which would come in very handy.

When trying to opening the file I got Live Mail 2012 installing and reporting it not to be a valid vCard. When trying it on Android I got a parse error about the start of the file.

Opening it in Notepad++ I noticed it was encoded in UTF-8-BOM (which I did not know at the time). Converting it into UTF-8 and retrying, it was accepted by Live Mail (but I got hell by masses of popups. But more importantly: it als worked on Android.

So: it seems it better be simple UTF-8.

By the way, I may help on this project, because I use it myself. To start with on this issue.

Add generic CSV export

It would be nice, to have a generic CSV export, that does not target any phone/platform, so one could convert any of the possible import formats into a generic CSV.

Use case example:
I am currently fixing a macOS address-book export for a relative, so it could be imported into a Telekom Speedport. Workflow would be:

  1. export from macOS AddressBook as VCARD
  2. eventually fix charset issues via iconv
  3. import VCARD into CCW
  4. let CCW convert VCARD into "Generic CSV" and saving it
  5. import "Generic CSV" into LibreOffice Calc
  6. fix data and arrange for final output format
  7. save data from LibreOffice Calc in the desired CSV format
  8. import that into Speedphone

Thank you.

Unbehandelte Ausnahme bei Import aus Outlook M365 Version

Hallo!

Verwende die Software seit je her, fantastisches Stück. Nun nach längerer Unterbrechnung (~8-10 Monate) mal wieder ein Import/Export von Outlook zu Fritzbox. Nun leider .NET Framework Fehlermeldung beim klick auf Outlook Import Button:

************** Ausnahmetext **************
System.InvalidCastException: Das COM-Objekt des Typs "Microsoft.Office.Interop.Outlook.ApplicationClass" kann nicht in den Schnittstellentyp "Microsoft.Office.Interop.Outlook._Application" umgewandelt werden. Dieser Vorgang konnte nicht durchgeführt werden, da der QueryInterface-Aufruf an die COM-Komponente für die Schnittstelle mit der IID "{00063001-0000-0000-C000-000000000046}" aufgrund des folgenden Fehlers nicht durchgeführt werden konnte: Element nicht gefunden. (Ausnahme von HRESULT: 0x8002802B (TYPE_E_ELEMENTNOTFOUND)).
bei System.StubHelpers.StubHelpers.GetCOMIPFromRCW(Object objSrc, IntPtr pCPCMD, IntPtr& ppTarget, Boolean& pfNeedsRelease)
bei Microsoft.Office.Interop.Outlook.ApplicationClass.get_Version()
bei Contact_Conversion_Wizard.Form1.read_data_Outlook(Boolean customfolder, Boolean categoryfilter)
bei Contact_Conversion_Wizard.Form1.btn_read_Outlook_Click(Object sender, EventArgs e)
bei System.Windows.Forms.Control.OnClick(EventArgs e)
bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
bei System.Windows.Forms.Control.WndProc(Message& m)
bei System.Windows.Forms.ButtonBase.WndProc(Message& m)
bei System.Windows.Forms.Button.WndProc(Message& m)
bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Geladene Assemblys **************
mscorlib
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9105.0 built by: NET481REL1LAST_C.
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll.

Contact Conversion Wizard
Assembly-Version: 3.5.0.2.
Win32-Version: 3.5.0.2.
CodeBase: file:///V:/Software/Contact%20Conversion%20Wizard/Contact.Conversion.Wizard_3.5.0.2.exe.

System.Windows.Forms
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9075.0 built by: NET481REL1LAST_C.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll.

System
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9065.0 built by: NET481REL1LAST_C.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll.

System.Drawing
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0 built by: NET481REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll.

System.Configuration
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0 built by: NET481REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll.

System.Core
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9115.0 built by: NET481REL1LAST_B.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll.

System.Xml
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0 built by: NET481REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll.

System.Windows.Forms.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0 built by: NET481REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_de_b77a5c561934e089/System.Windows.Forms.resources.dll.

System.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0 built by: NET481REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.resources/v4.0_4.0.0.0_de_b77a5c561934e089/System.resources.dll.

Microsoft.CSharp
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/Microsoft.CSharp/v4.0_4.0.0.0__b03f5f7f11d50a3a/Microsoft.CSharp.dll.

Microsoft.Office.Interop.Outlook
Assembly-Version: 15.0.0.0.
Win32-Version: 15.0.4569.1507.
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/Microsoft.Office.Interop.Outlook/15.0.0.0__71e9bce111e9429c/Microsoft.Office.Interop.Outlook.dll.

office
Assembly-Version: 15.0.0.0.
Win32-Version: 15.0.4613.1000.
CodeBase: file:///C:/WINDOWS/assembly/GAC_MSIL/office/15.0.0.0__71e9bce111e9429c/office.dll.

mscorlib.resources
Assembly-Version: 4.0.0.0.
Win32-Version: 4.8.9032.0 built by: NET481REL1.
CodeBase: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_de_b77a5c561934e089/mscorlib.resources.dll.

************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.

Zum Beispiel:

Wenn das JIT-Debuggen aktiviert ist, werden alle nicht behandelten
Ausnahmen an den JIT-Debugger gesendet, der auf dem
Computer registriert ist, und nicht in diesem Dialogfeld behandelt.

Was kann ich hier tun? :-)

Please support Speedport CSV

The CSV headers should be (found it on some Telekom support forum, not guaranteed to be right):

"Name","Vorname","Rufnummer Privat","Rufnummer Arbeit","Rufnummer Mobil","Rufnummer Mobil 2","Strasse, Nr.","PLZ","Ort","Geburtstag".

Thanks.

Snom csv format not correct

According to this documentation a master contact needs to duplicate the first number in two lines. The first line is the master line and describes the name etc. The numbers are in the following lines. The key to link the lines is the telephone number of the "Master"-line. The master line is from the type "sip" instead "home"

"","0123456789","MASTER","","Max","Musterman","","","","","","","false","","sip",""
"","0123456789","none","","Member_Alias","0123456789","","","","","","","false","","home",""
"","00112233","none","active","Member_Alias","0123456789","","","","","","","false","","mobile",""
"","333444","none","active","Member_Alias","0123456789","","","","","","","false","","business",""

What i get with the v8 csv export is instead:

"Max Mustermann","00100002","MASTER","","Max","Mustermann","","","[email protected]","","","","false","","home",""
"","0123456789","","","Member_Alias","00100002","","","","","","","false","","home",""
"","00112233","","","Member_Alias","00100002","","","","","","","false","","mobile",""

for the relevant vcard snippet:

FN:Max Mustermann
N:Mustermann;Max;;;
EMAIL;TYPE=HOME:[email protected]
TEL;TYPE=HOME:0123456789
TEL;PREF=1;TYPE=CELL:00112233

On import this results in the following additional number:
grafik

I don't know where the "00100002" comes from in the contact conversation wizard but it is just wrong for at least the firmware version v10.1.175.10.

Bug: TEL;TYPE="something-in-quotes" in vcard is not properly recognized

Currently, Nextcloud does its .vcf export phone numbers like this example:

TEL;TYPE="WORK,VOICE";VALUE=UNKNOWN:+49123456789
which will not be recognized because of the quotes.

In form1.cs, you could change the line 1426 to

switch (type.Replace("\"", ""))

that would do the job, but maybe there is a better place for doing the replace, so I don't add a pull request.

Remove GitHub build Action

Please remove GitHub build Action as it is 1. always failing and 2. obsolete as build validation is covered by travis-ci.

Thanks,
Stefan 😄

VCARD files with CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE not imported correctly

I have here a Samsung Galaxy A3 phone which exports the contacts like this (with both the standard app and the Google app):

BEGIN:VCARD
VERSION:2.1
N;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=C3=96=C3=A4=C3=BC;=54=65=73=74=20=45=6E=74=72=79=20=C3=B6=C3=A4=C3=BC;;;
FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:=54=65=73=74=20=45=6E=74=72=79=20=C3=B6=C3=A4=C3=BC=20=C3=96=C3=A4=C3=
=BC
TEL;CELL:123
END:VCARD

In CCW the names are not decoded and show up as =C3=96=C3=A4=C3=BC;=54=65=73=74=20=45=6E=74=72=79=20=C3=B6=C3=A4=C3=BC

(Using an other app which exported the data differently I was able to copy the contacts to a Fritz Fon. Great Programm! Thank you!)

Parsing error occures with FRITZ!Box XML phone type="other"

Beside of the selectable types via GUI (home, work, mobile, fax_work) FRITZ!Box knows a fifth type "other", which apears in the German language version as "sonstige".
If you want to import a FRITZ!Box XML with type="other" an unskipable parsing error occurs.

Google-Anmeldung

Die Google-Anmeldung funktioniert (zurzeit) nicht.
ccw-fehler
Der Fehler tauchte schon früher auf. Ich bringe ihn hier nur mal wieder in Erinnerung ;-)

Contacts without phone number not read from Outlook

I always read my contacts from Outlook, which is leading for me.

I went through the roof because a newly added contact was not exported. I only noticed after I imported the resulting file into my phone.

I took me quite some time, after trying a couple of things, to notice it was not read because it had no phone number. Adding a zero as a number worked around that. I don't seem to be able to configure this behaviour.

But I don't get that. I might not have a number yet, but just an e-address, or maybe not even that but a physical address or whatever. I want to be able to convert it anyway and import it into my phone, or elsewhere.

So that's my request.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.