Migrace SMS mezi telefony - Windows Phone, Android, .VMSG
V předchozím článku jsem popsal, jak na migraci kontaktů mezi telefony a dohledání chybějících, když se vám synchronizuje pomocí cloudu či SIM karty jen část kontaktů. V tomto článku migraci dokončím a popíši, jak na přesun textových zpráv.

Prvním krokem je export všech zpráv do VMSG formátu. Na Windows Phone si stačí stáhnout aplikaci Microsoftu Transfer My Data a exportovat si všechny textovky do souboru (volba export to sd card, viz obrázek výše). Pojmenujte ho sms.vmsg.
Druhým krokem je přenést tento soubor na cílový telefon, poténciálně si ho upravit a naimportovat. Pojďme se na to podívat blíže.
Pokud chcete přesunout / naimportovat všechny zprávy z nachystaného VMSG exportu, doporučuji použít například aplikaci Import SMS from Windows Phone z Google Play, která je bezplatná (pro SMS) a import by měla zvládnout v pořádku. Alernativou je aplikace VMG Converter, která v bezplatné variantě naimportuje maximálně 200 vybranných zpráv, v placené bez limitu.
Já jsem ale nepotřeboval naimportovat tisíce zpráv, které mi to exportovalo ze starého telefonu a chtěl jsem si vybrat jen konverzace z pár nejdůležitějších telefonních čísel a z nich jen ty důležitější zprávy.
Proto jsem vytvořil další Python skript, opět psaný v Python 3. Spoustěl jsem ho přímo na Android telefonu pomocí QPython3, při upravování či spouštění na Windows je třeba si dát bacha na znaky konců řádku.
Skript je ke stažení zde: vmsgSelector.py
Co skript umí? Otevře vybraný soubor (nebo standardní vstup, default je sms.vmsg ve stejné složce), vyhledá telefonní čísla v seznamu (viz dále CONFIG), vybere jejich zprávy a zahodí úplné duplicity (někdy telefony tvoří), volitelně zahodí hodně krátké zprávy (odpovědi ANO, NE, OK, ..., viz CONFIG) a volitelně výsledné zprávy rozdělí do souboru po X zprávách (v CONFIGu, default 40 000).
Uvnitř skriptu si dle svých potřeb nastavte sekci #CONFIG (na začátku skriptu):
- phoneNumber_interest_list = ['666123456', '777123456'] --- seznam tel. čísel, které to vyhledá a jejich zprávy přenese, upravte si na 1-n svých čísel
- inputFile = 'sms.vmsg' ---- nastavuje se vstupní soubor
- outputFileMaxMsg = 40000 ---- po kolika zprávách dělat výstupní soubory
- iRemoveSmallerThen = 12 ---- zprávy kratší než 12 znaků se zahodí (má hodnota, lze nastavit i 1, pokud zachovat všechny)
Pak už jen skript spuste a výsledky naimportujte do cílového telefonu, například pomocí aplikací výše.