You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

142 lines
7.8 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset='utf-8'>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<link rel="stylesheet" href="/assets/css/style.css?v=96e407dbfef5e6ab83daa6dca716c304bdc64c14">
<link rel="stylesheet" type="text/css" href="/assets/css/print.css" media="print">
<link rel='shortcut icon' type='image/x-icon' href='favicon.ico' />
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Begin Jekyll SEO tag v2.5.0 -->
<title>vcards | josiah ledbetter</title>
<meta name="generator" content="Jekyll v3.7.4" />
<meta property="og:title" content="vcards" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough." />
<meta property="og:description" content="this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough." />
<link rel="canonical" href="http://localhost:4000/personal/2019/04/18/vcards.html" />
<meta property="og:url" content="http://localhost:4000/personal/2019/04/18/vcards.html" />
<meta property="og:site_name" content="josiah ledbetter" />
<meta property="og:type" content="article" />
<meta property="article:published_time" content="2019-04-18T00:00:00-05:00" />
<script type="application/ld+json">
{"description":"this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough.","@type":"BlogPosting","url":"http://localhost:4000/personal/2019/04/18/vcards.html","headline":"vcards","dateModified":"2019-04-18T00:00:00-05:00","datePublished":"2019-04-18T00:00:00-05:00","mainEntityOfPage":{"@type":"WebPage","@id":"http://localhost:4000/personal/2019/04/18/vcards.html"},"@context":"http://schema.org"}</script>
<!-- End Jekyll SEO tag -->
</head>
<body>
<div id="container">
<div class="inner">
<header>
<h1>josiah ledbetter</h1>
</header>
<section id="downloads" class="clearfix">
</section>
<hr>
<section id="main_content">
<p>this past week my dad and I helped my grandmother with a few Computer Things. my grandfather died at the end of last year and the process of getting “Computer Things” to a usable state for my grandmother was pretty rough.</p>
<p>One of the things that was unexpectedly frustrating was transferring stuff (photos, contacts, whatever) from my granddads account to my grandmothers. as near as i can tell, a different family member had been helping my grandmother and closed several of my grandfathers old accounts. including email accounts and /iCloud/ accounts.</p>
<p>normally, transferring contacts from one persons icloud to anothers is pretty straight forward (theres an export button on icloud.com), but if you cant succesfully auth to icloud it gets a lot trickier. theres probably a few ways to do this, but the tack i ended up taking was:</p>
<ol>
<li>find a totally different source for the contacts (in this case, my grandfathers outlook 2010 install)</li>
<li>export those contacts to vcards</li>
<li>import those vcards to icloud.com under the new account</li>
</ol>
<p>That is the bones of what happened, but the details kept screwing me over.</p>
<p>first, outlook 2010 contact exports by default come out in an outlook specific format (.msg) that cannot be imported into icloud. ok well fine, surely theres a straight forward way to deal with that.</p>
<p>good news: you can directly export contacts from outlook to vcf
bad news: its fucking hidden behind a “send as business card” dialogue option that is fucking unintuitive. thanks 2010 microsoft.
worse news: it sends a very old .vcf format, 2.1. The minimum I could get working with icloud was 3.0</p>
<p>ok well surely you can convert the 2.1 version to 3.0? in fact, what is even the difference? here is some wikipedia examples:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>BEGIN:VCARD
VERSION:2.1
N:Gump;Forrest;;Mr.
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;WORK;VOICE:(111) 555-1212
TEL;HOME;VOICE:(404) 555-1212
ADR;WORK;PREF:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;WORK;PREF;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8:100 Waters Edge=0D=
=0ABaytown\, LA 30314=0D=0AUnited States of America
ADR;HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;HOME;ENCODING=QUOTED-PRINTABLE;CHARSET=UTF-8:42 Plantation St.=0D=0A=
Baytown, LA 30314=0D=0AUnited States of America
EMAIL:forrestgump@example.com
REV:20080424T195243Z
END:VCARD
</code></pre></div></div>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>BEGIN:VCARD
VERSION:3.0
N:Gump;Forrest;;Mr.;
FN:Forrest Gump
ORG:Bubba Gump Shrimp Co.
TITLE:Shrimp Man
PHOTO;VALUE=URI;TYPE=GIF:http://www.example.com/dir_photos/my_photo.gif
TEL;TYPE=WORK,VOICE:(111) 555-1212
TEL;TYPE=HOME,VOICE:(404) 555-1212
ADR;TYPE=WORK,PREF:;;100 Waters Edge;Baytown;LA;30314;United States of America
LABEL;TYPE=WORK,PREF:100 Waters Edge\nBaytown\, LA 30314\nUnited States of America
ADR;TYPE=HOME:;;42 Plantation St.;Baytown;LA;30314;United States of America
LABEL;TYPE=HOME:42 Plantation St.\nBaytown\, LA 30314\nUnited States of America
EMAIL:forrestgump@example.com
REV:2008-04-24T19:52:43Z
END:VCARD
</code></pre></div></div>
<p>the thing that caused most of the issues for the contact set I was working on was the ~TEL;~ lines. the type declarations, when present, needed to be altered. to fix this is pretty simple:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cat /path/to/dir/* &gt; all-outlook-contacts.vcf
sed -e 's/TEL;/TEL;TYPE=/g' -e 's/VERSION:2.1/VERSION:3.0/g' ../new-contacts/all-outlook-contacts.vcf &gt; ../new-contacts/all-CLEANED.vcf
</code></pre></div></div>
<p>yes thats right, i am very 3 now is most of the work lmao. this worked, but I still couldnt import the vcf files to icloud - it would think for a while, then error saying that at least one of the entries was unreadable. i skimmed through the file visually and found some lines that were interesting - on a few cards there was a LANGUAGE declaration:</p>
<div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cat ../new-contacts/all-outlook-contacts.vcf | grep =en
&gt;N;LANGUAGE=en-us:last first
&gt;N;LANGUAGE=en-us:last first
&gt;N;LANGUAGE=en-us:last first
&gt;N;LANGUAGE=en-us:last first
</code></pre></div></div>
<p>wtf is that, that isnt mentioned in the spec until vcards 4.0</p>
<p>my best guess is that this is just some Fancy Colour from outlook specifically, because nobody else was talking about this based on quick google searches. I just removed it from these 4 cards and went on to import them to icloud succesfully.</p>
<p>the lesson i learned during this process is:</p>
<ul>
<li>dont close peoples accounts right away; make sure everything is prepared before accounts are closed.</li>
<li>by the time i die i should establish a fucking runbook to go over the necessary steps for people who arent technically inclined</li>
<li>open formats are great</li>
</ul>
</section>
<footer>
</footer>
</div>
</div>
</body>
</html>