Okay, thank Jesus I managed to get this fixed and this is what it took.
This solution required a Rooted device.
- Restore Viber backup (for me I did this using MyBackup Pro)
- Install SQLite Debugger from the Play Store
- Using SQLite, try locating the Viber database files by selecting App then choosing Viber from the list (if you want to locate the database manually, for me it was under /data/data/com.viber.voip/databases)
- Choose the "viber_data" database
- Open the database, scroll to the bottom, choose "Create backup"
- Save the backup somewhere on your SD card (not inside the viber folder or else it will get deleted)
Repeat the same steps for the "viber_messages" database
- Uninstall Viber (or if you are using MyBackup Pro, go under Toolbox and "Wipe the Cache & Data" for Viber)
- Reinstall Viber so that a fresh, clean working set of databases are generated by the app (or re-open Viber)
- Do the usual setup of entering your phone number, letting it sync contacts etc
- Once Viber has settled down, close it
- Re-open SQLite Debugger
- Navigate back to the "viber_data" database
- This time, choose Restore Backup
- Select the backup file from your SD card
- Kill Viber if requested and wait for the restoration
Rinse and repeat for the "viber_messages" database
Once it is all done, reboot your device and hopefully, the next time you open Viber, the old messages & calls are all there! Unfortunately for me, presumably due to the change in ROMs, the photos sent in Viber messages are in my Gallery but NOT in Viber itself.. I suspect this can be fixed if the path is saved somewhere in the messages database - but right now, I'm just glad to have the text back.
If you get repeated errors from Viber during this process, try freezing the app using MyBackup Pro Toolbox (I believe Titanium Backup also has this option)
If this helped you, please click the THANKS