Message Album
← Semua panduan

Cara mengekspor seluruh percakapan iMessage di Mac

Kenapa aplikasi Pesan tidak punya perintah ekspor, metode gratis yang tetap berhasil, cara mendapatkan riwayat yang tidak pernah tersinkron ke Mac Anda, dan cara berakhir dengan album yang masih bisa dibuka bertahun-tahun lagi.

· 4 min read

Aplikasi Pesan di macOS tidak punya perintah Ekspor. Tidak pernah punya. Cari pertanyaan ini dan hasil teratasnya adalah utas dukungan Apple dan sebuah kiriman Reddit, yang cukup menjelaskan seberapa baik opsi bawaan menyelesaikannya.

Berikut yang benar-benar berhasil.

Di mana percakapannya berada

Di Mac, Pesan menyimpan semuanya dalam basis data SQLite di ~/Library/Messages/chat.db, dengan lampiran di ~/Library/Messages/Attachments/. macOS melindungi keduanya: tidak ada aplikasi yang bisa membacanya tanpa diberi Akses Disk Penuh di Pengaturan Sistem, dan foldernya tersembunyi dari Finder secara bawaan.

Dua hal mengikuti dari sini, dan keduanya menjelaskan sebagian besar kebingungan seputar topik ini:

  1. Alat apa pun yang mengekspor pesan Anda memerlukan Akses Disk Penuh. Itu sendiri bukan tanda bahaya; itulah satu-satunya jalan yang diizinkan macOS. Yang penting adalah apa yang dilakukan alat itu setelah membaca berkasnya.
  2. Basis data itu detail implementasi privat milik Apple. Strukturnya berubah antar-rilis macOS tanpa pemberitahuan. Itulah sebabnya alat ekspor perlu diperbarui, dan sebabnya album hasil ekspor tidak boleh berformat Apple.

Metode 1: Cetak ke PDF (gratis, bawaan, terbatas)

  1. Buka Pesan, pilih percakapannya.
  2. Gulir sampai paling atas sambil menahan Command + panah atas, sampai berhenti memuat pesan lama.
  3. Berkas › Cetak, lalu PDF › Simpan sebagai PDF.

Ini berhasil, dan untuk percakapan pendek inilah jawaban yang tepat. Dua batas nyata: Anda harus memuat seluruh percakapan dengan menggulir, yang menyakitkan untuk riwayat bertahun-tahun, dan PDF tidak bisa memuat video atau audio yang dapat diputar.

Metode 2: Kueri basis datanya sendiri (gratis, teknis)

Karena chat.db adalah berkas SQLite standar, Anda bisa mengkuerinya langsung. Beri Akses Disk Penuh ke terminal Anda dulu, lalu:

sqlite3 ~/Library/Messages/chat.db

Waspadai tiga jebakan yang menjerat orang yang melakukannya secara manual:

  • Stempel waktunya bukan waktu Unix. Pesan menyimpan nanodetik sejak 2001-01-01, jadi Anda memerlukan datetime(message.date/1000000000 + 978307200, 'unixepoch').
  • text sering NULL. Pesan modern menyimpan isinya di attributedBody, sebuah typedstream Apple terserialisasi, bukan di kolom text biasa. Menguraikannya dengan benar adalah bagian tersulit dari seluruh persoalan ini, dan memperlakukan binernya secara naif sebagai UTF-16 menghasilkan sampah yang tampak hampir benar.
  • Buka dalam mode hanya-baca. Gunakan file:...?mode=ro supaya kueri yang keliru tidak akan pernah bisa menulis ke basis data Pesan Anda yang sedang dipakai.

Kalau Anda ingin rute ini dikerjakan dengan benar alih-alih manual, imessage-exporter gratis, sumber terbuka, dan menguraikan typedstream dengan benar.

Metode 3: Ekspor ke sebuah album (yang sebenarnya diinginkan kebanyakan orang)

Hasil yang dicari kebanyakan orang adalah folder yang bisa mereka simpan: seluruh percakapan, terbaca tanpa perangkat lunak khusus, dengan foto dan video yang utuh.

Artinya sebuah ekspor yang menghasilkan:

  • Setiap pesan dari kedua sisi, berurutan, dengan stempel waktu.
  • Setiap lampiran disalin keluar pada kualitas asli, bukan diubah ukurannya ke dalam sebuah dokumen.
  • Format yang tidak bergantung pada alat yang membuatnya. HTML, JSON, dan Markdown biasa semuanya memenuhi syarat. Basis data berpemilik tidak.

Alat dalam kategori ini antara lain imessage-exporter, iMazing, Decipher TextMessage, dan Message Album, yang membuat situs ini. Penekanan khusus Message Album ada pada butir terakhir: hasil ekspornya adalah situs luring mandiri tanpa kerangka kerja, CDN, fon eksternal, atau server, ditambah manifes checksum SHA-256, dengan alasan bahwa sesuatu yang Anda simpan tidak seharusnya berhenti bekerja karena sebuah ketergantungan lenyap.

Mendapatkan riwayat yang tidak pernah tersinkron ke Mac Anda

Ini langkah yang dilewati kebanyakan panduan, dan sering menjadi alasan sebuah ekspor keluar tidak lengkap.

Mac Anda hanya punya pesan yang tersinkron ke sana. Jika percakapan itu dimulai sebelum Anda memiliki Mac tersebut, atau “Pesan di iCloud” sudah melepas lampiran-lampiran lama, mengekspor dari pustaka Mac sendiri akan melewatkan hal-hal secara diam-diam.

Solusinya adalah mengekspor dari cadangan iPhone:

  1. Sambungkan iPhone atau iPad lalu buka Finder.
  2. Pilih perangkat di bilah samping.
  3. Pilih Cadangkan Sekarang. Cadangan terenkripsi maupun tidak sama-sama memuat Pesan. Centang Enkripsi cadangan lokal kalau Anda juga ingin Kesehatan dan data terlindungi lainnya.
  4. Arahkan alat ekspor Anda ke cadangan itu, bukan ke pustaka Mac.

Cadangan memuat apa yang ada di ponsel, yang biasanya lebih banyak daripada yang sampai ke Mac.

Cara tahu apakah sebuah ekspor lengkap

Ajukan satu pertanyaan pada alat apa pun yang Anda pakai: apa yang dilakukannya ketika ada yang hilang?

Lampiran yang tidak pernah diunduh secara lokal, dan muatan pesan internal Apple yang tidak dapat diuraikan, keduanya wajar. Alat yang melaporkannya sebagai peringatan eksplisit membuat Anda tahu apa yang Anda punya. Alat yang menjatuhkannya diam-diam meninggalkan Anda dengan album yang tampak lengkap padahal tidak, dan Anda baru akan tahu pada hari Anda mencari satu foto tertentu.

Periksa jumlahnya juga. Kalau sebuah alat memberi tahu berapa banyak pesan yang dibacanya dari sumber dan berapa yang ditulisnya ke keluaran, kedua angka itu harus cocok atau selisihnya harus dijelaskan.

Apa yang harus dilakukan pada album itu setelahnya

Album yang hanya ada di satu tempat belum tersimpan, ia baru disiapkan. Salin ke tempat lain: disk eksternal, mesin lain, atau penyimpanan awan pilihan Anda. Karena ekspor yang baik adalah folder biasa berisi berkas biasa, ini hanya soal menyalin sebuah folder.

Kalau ekspor Anda menyertakan checksum, simpan manifesnya bersamanya. Itulah satu-satunya hal yang memungkinkan Anda memastikan, lima tahun lagi, bahwa salinan yang Anda lihat masih utuh.