Немногие знают, что у меня постоянно висит в Скайпе диалог с неким К., которого я уже давно знаю и с которым у меня часто происходят довольно примечательные диалоги. Их иногда довольно здорово, спустя полгода-год перечитать, потому что это уже отпечаток истории, как старый фотоальбом или записки пятилетней давности. Но скроллить мессенджер вверх, чтобы почитать всё в хронологическом порядке неудобно, т.к. там полноценный браузер и он тупит и тормозит из-за бесконечных подгрузок через AJAX. И недавно, я задумался об экспорте истории в удобочитаемый вид. На поверку оказалось, что самый лучший способ экспортировать полностью историю из Скайпа - это, судя по всему, устроиться в NSA. Почему? Да потому что, как обычно, развитие продукта отломало всё что можно.
Вот, например, есть ссылка на FAQ. Вроде бы всё адекватно написано. Но нет: во-первых в новом Skype для Windows 10 экспорт истории найти невозможно. Я искал минут пятнадцать, но его нет. В других местах, естественно говорят о том, что-де юзайте Skype Classic. Так вот - там эта кнопка открывает пустое окно. В Skype API этого тоже нет, там вообще кроме interviews и ботов ничего и нет. Шиш вам с маслом, а не история, ишь чего захотели.
Если говорить серьёзно, то в этом есть какая-то логика: что если я взломал чей-то аккаунт и захотел слить историю? Но тогда какой смысл вообще говорить об экспорте истории, какой смысл вообще в централизованном сервере скайпа?
Если говорить серьёзно, то в этом есть какая-то логика: что если я взломал чей-то аккаунт и захотел слить историю? Но тогда какой смысл вообще говорить об экспорте истории, какой смысл вообще в централизованном сервере скайпа?
Однако, в конечном итоге, историю удалось достать из файла C:\Users\<имя пользователя>\AppData\Roaming\Skype\<имя аккаунта Skype>\main.db . И то, по сути из-за того, что использовалась старая версия скайпа и там сообщения судя по всему, грузились до бесконечности. В итоге удалось достать сообщения, которые были отправлены 5 лет назад. А вот, если вы поставили скайп заново хоть какой - то дальше месяца назад по времени не улетите, как бы ни хотелось. По крайней мере, у меня не вышло.
Изнутри этот файл - тупо БД SQLite3, можно сходу выбрать все нужные сообщения через несложный код вида:
SELECT
`id`,
`timestamp`,
`from_dispname`,
`body_xml`
FROM Messages
WHERE
`convo_id` = <ID чата в таблице Conversations>
ORDER BY
`timestamp` ASC;
timestamp здесь - время отправки, from_dispname - имя автора, отображаемое в чате, body_xml - по большому счету HTML сообщения в чате. В принципе, это единственное место, где я был доволен ситуацией, ибо обрабатывай - не хочу, хотя и не секурненько. Также в этой таблице, есть ещё другие флаги и поля, которые хранят важную информацию, но мне пока хватило и этих.
Каких-то особых выводов в этой истории нет и быть не может т.к. всё соответствует трём максимам:
Каких-то особых выводов в этой истории нет и быть не может т.к. всё соответствует трём максимам:
- Всё что не сохранено локально в двух экземплярах можно считать удалённым
- Всё что хранится в облаке можно считать удалённым.
- Единственный хороший мессенджер - это тот, который вы написали и хостите сами. По крайней мере, если в нём чего-то не будет - то вы сами виноваты.
Комментариев нет:
Отправить комментарий