Відкрити файл Skype — Листування Skype. База даних

Ви захистили Skype хорошим паролем. Ви регулярно виходьте із свого облікового запису. Ви думаєте: «Мою переписку Skype з Васею чоловік точно не прочитає! Пароль-то він не знає!». Якщо цю статтю раніше Ви прочитаєте, то зрозумієте, що Ви під ударом всі ці півроку, що строчити Васі любовні зізнання. Якщо чоловік… Я не винна . Але для цього йому необхідний фізичний доступ до комп’ютера, з якого Ви сиділи в Skype. Як було обіцяно в попередній статті про SQLite, я розповім, як можна прочитати свою переписку в Skype з його бази даних SQLite абсолютно відкрито. Для цього нам знадобиться SQLite Expert. Якщо його немає на Вашому комп’ютері, то скачайте і встановіть.

Будемо вважати, що програма у Вас вже встановлена і навіть відкрита. У вікні програми на панелі інструментів, розташованої у верхній частині вікна, натискаємо на кнопку з зеленим плюсиком. При наведенні мишею на цю кнопку повинна з’явитися підказка «Open Database», як на малюнку.

Після натискання на неї з’явиться стандартне віндове вікно відкриття файлу. Щоб знайти файл бази даних Skype, у вікні у верхнє поле вводу адреси вставити наступну адресу: %APPDATA%SkypeSkAcc, де замість SkAcc напишіть свій логін в скайпі, і натисніть Enter.

Прошу взяти на замітку, що SkAcc — це не мій логін в скайпі =) Він комусь належить, але я його не знаю =).

В цьому ж вікні з’явиться список файлів зазначеної Вами папки. Клацніть мишею по файлу main.db і натисніть кнопку «Відкрити».

Як зображено на малюнку вище, у програмі SQLite Expert відкриється вміст бази даних Skype. Ми бачимо список всіх її таблиць. Давайте коротко пробіжимося по найцікавішим з них.

  • Accounts — в цій таблиці є докладна інформація про обліковий запис. У колонці skypename — логін в Skype, mobile_phone — мобільний телефон, прив’язаний до Skype, щоб відправляти SMS, skypeout_balance — баланс Skype.
  • Calls — з ким Ви спілкувалися голосом по скайпу за даними комп’ютером
  • Chats — список чатів, тут пишеться в загальному вигляді, хто з ким спілкувався. Наприклад, значення в колонці name #vasya/$masha;7330a1337f0667c5 — чат Васі з Вами. Більш зрозуміло це записано в колонці activemembers
  • Contacts — повний список контактів, логін в колонці skypename
  • Messages — найбільша на сьогодні важлива для нас таблиця, що в ній містяться повідомлення
  • Transfers — які файли ми отримували і від кого (колонка partner_handle)

Клацаємо лівою кнопкою миші по таблиці Messages. У лівій верхній частині вікна Ви побачите декілька вкладок. Клацніть по вкладці Data.

Якщо Ви скайпом активно користуєтеся, то в лівій частині вікна програми відкриється досить значна табличка. Найважливіші для нас колонки — це chatname (ім’я чату, подробиці в таблиці Chats), author (хто писав повідомлення) і body_xml — текст самого повідомлення.

Якщо Ви хочете побачити спілкування між Вами і певним контактом з Вашого списку, клацніть по вкладці SQL (на картинці вище видно), і у відкрите поле скопіюйте наступний запит:

select author, body_xml Messages from m inner join Chats c on m.[chatname] = c.[name] where c.[participants] = ‘masha vasya’ or c.[participants] = ‘vasya masha’;

тільки замість vasya і masha впишіть потрібні Вам логіни, один з яких, швидше за все, Ваш (у нас в прикладі masha), а другий — Вашого партнера по небажаного спілкування (vasya).

Повинно вийти приблизно так:

Натискаємо Клавішу F5. Перед Вами повинна відкритися вся збережена історія Вашого спілкування. Якщо Ви знаходитесь на темній стороні , і Ваша задача видалити повідомлення, то перш за все Ви повинні визначитися, що саме Ви хочете видалити. Якщо Вам не подобаються окремі повідомлення, то тут справа нехитра. Якщо Вам необхідно вичистити взагалі все листування з людиною, то тут по-хорошому треба длубатися в одній таблиці, щоб видалити сліди самого чату. Але загалом в системі завжди є якісь чати, які повністю порожні, тобто в них немає жодного повідомлення, такі є і у мене, і це нормально.

Перед тим як почати екзекуцію, скопіюйте файл бази даних в ту ж папку, назвавши його, наприклад, main-bak.db. На випадок, якщо щось піде не так.

Зміст

  • 1
    Видалення частини повідомлень
  • 2
    Чистимо історію грунтовно
    • 2.1
      Update
    • 2.2
      Вас чекають наступні статті:

Видалення частини повідомлень

Якщо нас цікавить вибіркове видалення повідомлень з даними людиною, то підкоригуємо наш запит, додавши в нього одну потрібну нам колонку:

select m.id, author, body_xml Messages from m inner join Chats c on m.[chatname] = c.[name] where c.[participants] = ‘masha vasya’ or c.[participants] = ‘vasya masha’;

Натискаємо Клавішу F5. Це дозволить нам побачити id не подобаються нам повідомлення. Запам’ятовуємо їх, нижче пишемо такий запит:

delete from Messages where id in (117, 118);

, де 117, 118 — це id не подобаються нам повідомлення. Замініть на свої id-шники через кому. Натискаємо F5, і немає палевных повідомлень!

Чистимо історію грунтовно

Якщо нам необхідно позбутися від усіх повідомлень і навіть від їх слідів, то тут треба повозитися трохи більше, як я і говорила. Спробуємо знайти всі небажані повідомлення, визначити ім’я чату і все, що стосується цього чату, видаляємо з декількох таблиць.

create temp table chatnames(chat_name);

insert into chatnames select distinct c.[name] Messages from m inner join Chats c on m.[chatname] = c.[name] where c.[name] like ‘#vasya /$masha%’ or c.[name] like ‘#masha/$vasya%’;

delete from ChatMembers where chatname in (select chat_name from chatnames); delete from Chats where name in (select chat_name from chatnames); delete Messages from where chatname in (select chat_name from chatnames); delete Messages from where chatname = ‘vasya’; drop table if exists chatnames;

Тепер необхідно видалити також інфу про всіх картинках і відеодзвінки з скайпу. Припустимо, що з двох нами використовуються логінов Ви — masha, стало бути видаляємо все про Васю.

delete from CallMembers where identity = ‘vasya’; delete Calls from where current_video_audience = ‘vasya’; delete from Transfers where partner_handle = ‘vasya’;

Не забудьте, що ми видалили лише згадка про картинках, але самі картинки залишилися за адресою %APPDATA%SkypeMy Skype Received Files. Подбайте і про їхнє зникнення.

Також слід пам’ятати про те, що Skype синхронізує повідомлення на клієнтові і на сервері. Для того, щоб якось орієнтуватися в цьому, Skype, записує деякі дані в таблицю Conversations. З тими контактами, з якими в мене не було ніякого спілкування, значення поля history_sync_state було (null). Судячи з усього, якщо ми боїмося власної тіні, теж виставимо таке значення. Це найпростіше зробити, клацнувши два рази по рядку з потрібним контактом (вибираємо по колонці identity) і в віконці, що відкрилося, в полі history_sync_state написав (null) або залишивши поле порожнім:

Значення сусіднього поля history_horizon було 0, після того, як я видалила всі повідомлення деякого свого колеги по скайпу, щоб протестувати все, про що я тут пишу. Коли я поправила перше з точки зору мого скайпу повідомлення, history_horizon замінилося конкретним значенням, поле history_sync_state з (null) стало порожнім, пізніше заповнилося деяким значенням, як у всіх контактів, з якими я спілкувалася і нічого у них не видаляла . Точно тут не можу сказати, мабуть, поле history_horizon теж бажано позначити (null).

І не забудьте видалити файл main-bak.db!

Що Ви говорите? Складно?!

Найпростіше і правильніше з цим Васею взагалі не спілкуватися або спілкуватися на тему погоди, так ніякої SQLite Expert вам не знадобиться.

Update

Поигралась з даними таблиці Conversations, обнуляти різні таймштампы, серед них таймштамп останньої активності (last_activity_timestamp), таймштамп скриньки вхідних повідомлень (inbox_timestamp), вже згадувані history_horizon і history_sync_state і ще деякі. Принаймні у мене, навіть коли я обнулила всі дані у конкретного партнера по скайпу, перезатягивания повідомлень не сталося після перезавантаження скайпа. Тим не менше, коли я копіювала різні версії main.даних з сервера підтягувалися відсутні для даної версії повідомлення. Можливо, скайп, орієнтується на щось.

Вас чекають наступні статті:

Поділитися з друзями
Корисні поради - Вказівка