Как стать автором
Обновить

Комментарии 40

В Linux версии также используется sqlite?
Сам не пробовал, скорее всего да, но только с версии 4.

Тут, кстати, недавно проскакивала новость о том, что скайп 4.1 вышел для Linux, так что уже можно проверить.
При удалении истории из скайпа она физически тоже не удаляется и ее легко можно восстановить. Даже утилита есть для этого SkypeLogView
Физически часть истории, похоже, удаляется с течением времени. В частности, именно для проверки этой гипотезы я и полез в базу. Обнаружил, что из трех случайно найденных на компе бэкапов все разные — т.е. содержат уникальные только для этого бэкапа сообщения.
Номера версий линухового скайпа и виндового никогда не были связаны. Так что если что-то было в виндовом в 4ой версии в линуховой оно могло быть в 2.x.
Вот в этой статье автор как раз разбирает историю скайпа 2-й линуксовой версии. Так что во второй все таки нет sqlite. Возможно, в 4-й появилась.
Скайп почему-то бесит. Он очень удачно и вовремя занял нишу голосового общения в инете. Это пожалуй единственный плюс. Из минусов — не хранит базу на серваке, настроек всё меньше и меньше (enter \ ctrl enter), памяти жрёт, базу открытой хранит.
«Из минусов — не хранит базу на серваке»

Спорный вопрос. Я, к примеру, предпочитаю чтобы база хранилась таки у меня. И если кто то получил доступ к ней, то это уже лично моя халатность.
Он занял нишу во многом благодаря отсутствию лишних, по мнению простого пользователя, настроек и простоте установки.
Большая часть пользователей предпочитает удобство соображениям безопасности, а уж о таких вещах, как место хранения базы, они вообще не задумываются.
А редактирование и удаление сообщений вообще киллер фича.
Skype — peer to peer система. То есть, строго говоря сервера там нет. (Хотя есть суперноды...) Ему вроде как негде хранить историю, кроме как локально. С этим кстати связанна еще одна раздражающая особенность. При переходе с одного компьютера на другой тебе приходит для синхронизации старая переписка. И бывает, что последнии сообщения из старых почему то скайп воспринимает как новые, не прочтенные, сообщения.
Скайп ужасен для переписки. Очень странно почему это фактический стандарт у нас.
Зато он прекрасен для голосового общения. (хорошее качество, умеет вычитать звук из колонок из того, что получает в микрофон). И с него можно звонить на телефоны.
Да ну ладно, «peer to peer». Он же куда-то логиниться, кудой-то на обычные телефоны звонит, откуда-то рекламу показывает. Да и пробегала тут на Хабре новость как-то о том, что Microsoft скайповские суперноды на свои серваки по-тихоньку переносит.
У него ещё есть рано появились удобные чат-конференции на несколько человек и клиенты под мобилки. Ну, плюс, отличная проходимость через прокси и nat.
удобные чат-конференции

Очень смешно.
При удалении сообщения в чате (через контекстное меню), в локальной БД остается исходный текст сообщения?
В большинстве случаев ответ на Ваш вопрос утвердительный..
Можете перечислить эти случаи? Потому что он всегда удаляется)
В чате сообщение удаляется. А вот в локальной бд нашел его, но только с пометкой удаленное. Хотя не все удаленные есть.
У меня версия 5.10.66.116.
Строка сообщения не удаляется, но текст стирается (становится пустым). Заполняются колонки edited_by и edited_timestamp. Аналогично в случае редактирования сообщения меняется body_xml, изменяется edited_by и edited_timestamp.
Вроде все по-честному :)
В SQLite базе хранится только то, что видно в чате, а вот в лежащей рядом папке chatsync/ можно найти полную историю сообщений в бинарном скайповском формате, включая текст всех правок и стертых мессаг.

Более того, даже если собеседник написал что-то вам в оффлайн, а потом удалил, когда вы зайдете в skype его исходное сообщение все равно попадет в chatsync.
А кто подскажет, как корректно удалить историю переписок с мобильного скайпа на андроиде? вот только что провел эксперимент, удалил хистори с десктопного скайпа, и теперь он ее якобы не видит, а мобильный все равно подтягивает в рамках интервала хранения. Облазил все меню, так и не нашел.
Настройки — Приложения — Управление приложениями — Skype — Очистить данные
Нету такого пункта «приложения» в настройках. :( 10 раз прокрутил.
В настройках приложений самой Adroid, а не Skype. Удалятся все настройки и данные приложение (включая историю).
Потыкал у себя на макбуке. База лежит по адресу /volumes/Macintosh HD/Users/имя пользователя компьютера/Library/Application Support/Skype/аккаунт скайпа. Так же самая SQLite, та же самая картина.
После покупки Skype'a Microsoft'ом он становится все монстрообразнее. Памяти стал есть больше. Версия для Android теперь практически за день разряжает телефон.
Лезть ручками в SQLite это уже какой-то крайний метод. Есть же API для доступа. Пока аккаунт пока еще ваш и скайп работает, можно на python со Skype4Py только так написать экспортилку истории и всего остального.
Причина не в том, что я не смог справиться со Skype API, а в том, что мне хотелось именно что залезть в базу и посмотреть, что там есть, минуя API. Цели я своей достиг, решил поделиться. Доступ через API с использованием python описывается в другой статье — ссылку на нее я давал чуть выше в комментариях.
И есть разница — сообщения помеченные как удаленные через API не отдаст
Я чуть выше написал, что текст помеченных удаленными сообщений в базе тоже удаляется.
Спасибо за статью, действительно сообщения доступны. Давно интересовался этим вопросом, но никак руки не доходили разведать что и как. А раньше, помню, скачивал разные проги типа эспорт истории.
После обновления Skype, из настроек чата пропала опция «Enter с новой строки». Получается, что по Enter теперь только отправка. ВЕРНИТЕ!!!
Можно ещё сюда, только всё равно ведь не поможет.
Подскажите, пожалуйста, как удалить всю историю общения с определенным контактом.
Синтаксис такой:

delete from messages
where dialog_partner = '<имя пользователя>'


Но вы же знаете, что при следующем входе собеседника в скайп вам снова зальется вся история общения?
Спасибо!
Нет, не знал. А что произойдет, если заменить текст сообщений у себя на пробел, например?
Не проверял — надо тестировать.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории