[Из песочницы] Viber для Windows и история сообщений

Работаю я обычным эникейщиком, и произошла как-то у меня тоже вполне обычная история — переезд человека на новый другой компьютер. Не буду особо вдаваться в подробности, просто скажу, что возникла необходимость переноса истории Viber, которая была этому человеку жизненно необходима.

2ed7c90a3a6d45708741418cd595171b.png

У Viber есть одна интересная фича: синхронизация начинается с момента установки. То есть если вы установили Viber на PC в 10.00, то сообщения, отправленные и полученные в 9.58 в истории вы не увидите. Зато все последующие, вне зависимости от того, запущена была программа или нет, при запуске подхватятся автоматически.

66dcdb9f739449a5bdedf675e3883dfe.png

Поэтому вариант с новой установкой у меня не проходил. Я обратился к официальному способу бэкапа сообщений. Сайт вайбера сообщал, что такая возможность присутствует. Но с одним интересным нюансом — эту историю нельзя восстановить. Не знаю, кто это придумал и чем он руководствовался при таком решении, но запасаться бокалом вина, устраиваться у камина и почитывать свои старые сообщения я не собирался.

Ну ладно, попробуем другой способ — полный перенос программы. Для тех, кто не знаком с Viber для Windows, расскажу, что сам себя и всю информацию он хранит в личной папке пользователя. Для Windows 7 это %USERPROFILE%\AppData\. В подпапке Local хранится сама программа, а в Roaming — то, что нас более всего интересует, волшебная папка с номером телефона. Ещё, конечно, не лишним будет упомянуть о папке ViberDownloads в Documents, которая является кладезью для любителей украсть провокационные фото. Что ж, условия были практически идеальные — на старом и новом компьютерах была установлена Win7×64, имя пользователя и доменное имя на обоих PC было одинаковым. Пробуем просто перенести и вуаля — получаем при запуске следующее сообщение:

eb2c454f26094b0497e72b420a7ffbbc.png

Результат меня удивил — историю на фоне я таки увидел. При нажатии кнопки «Продолжить» проходит новый процесс регистрации, при котором, конечно же, всё стирается. Я решил копать в этом направлении дальше.

a7fad7215a0246a5b108fd2f0a12724b.png

В Roaming в папке с номером телефона я нашёл 2 файла *.db и решил подсунуть только их. Результат тот же. А по отдельности?

f5fc498f5a8248048f841c27475dbba1.png

Вуаля! С viber.db прокатило! Но, правда, пришлось предварительно пройти регистрацию.

Итак, для переноса истории сообщений требуется:

  1. Предварительно скопировать файл %USERPROFILE%\AppData\Roaming\ViberPC\%номер_телефона%\viber.db
  2. Пройти регистрацию на новом компьютере
  3. Перенести наш файл viber.db в %USERPROFILE%\AppData\Roaming\ViberPC\%номер_телефона%\ на новом PC


Но на этом я не остановился. А что, если попробовать забрать файл viber.db с другого номера? И…

df85d9ea5ad34c3aa0150fb2e28eeb41.png

Заработало. Выходит, я могу прочитать сообщения пользователя, имея доступ к его профилю. Отправлять от его имени не смогу, как и читать сообщения, пришедшие/отправленные уже после копирования файла другого пользователя. Радоваться мне от этого или грустить, я не решил. Но зато решил уведомить об этом службку поддержки Viber. Три тщетных попытки и месяц ожидания ответа — не то, что я ждал от довольно крупной компании.

Если на Хабре есть представители компании, я бы хотел, чтобы они ответили на вопрос: это баг или фича?

P.S.: Первый запрос в службу поддержки был отправлен 30 декабря прошедшего года. 24 января (!) мне, наконец, ответили и попросили расписать ситуацию подробнее. Справедливости ради, я смог это сделать только 1 февраля. Но с тех пор ни слуху, ни духу, поэтому с чистой совестью публикую этот материал.

© Habrahabr.ru