Project: Kune
Code Location: git://
Download File
* README Wave Import

This document was originally written for documenting the export of all the waves from the old Google Wave and import them in Wave In A Box (WIAB), nowadays known as Apache Wave. This may be also valid to export/import waves from an Apache Wave instance to another.

IMPORTANT: Nowadays there is another utility to do this, distributed within Apache Wave, that aims to simplify things:
The current document describes the process without that utility. 

In order to run the mentioned .sh scripts, you may need to download the necessary scripts from

** Features:
- Import all the waves in which specified user is a participant.
- Wave Id's and wavelet Id's remain same, except domains.
- Domains of participants are renamed to Wiab server domain.
- Attachments are not imported nowadays.

** Get Google OAuth application Id:

 - Go to
 - Create a new project.
 - Click on "API Access" on the left, then "Create an OAuth2.0 client id".
 - Enter a product name. Leave the logo empty. Click "Next".
 - Application type: Installed application.
 - Click "Create client ID".
Make sure to you have compiled WIAB by running the following command:
ant dist

** Export waves from GWave to JSon files:

 ./ <ClientId> <ClientSecret> <ParticipantId> <ExportDir> [-i IncludeWavesList] [-e ExcludeWavesList]
 Parameters are:
        ClientId - Google application Id;
        ClientSecret - Google application secret;
        ParticipantId - Wave participant name, for example;
	ExportDir - directory to write export files;
	IncludeWavesList - optional, list of waves to include,
              for example!w+9aLgzbTk0u!w+Cl2NTbgKCW;
        ExcludeWavesList - optional, list of waves to exclude.
  Note: For Linux machines you might need to prepend the "!" with "\", i.e.!w+9aLgzbTk0u ->\!w+9aLgzbTk0u

   Copy/paste URL from console to browser. Press Enter.
   Copy/paste URL received code from browser to console.

** Import waves to WIAB:

  Enable the import waves feature in server.config
    enable_import = true

 ./ <WaveServerImportUrl> <WaveServerDomain> <ExportDir>
    Parameters are:
	WaveServerImportUrl - URL of import service, for example http://localhost:9898/import;
	WaveServerDomain - domain of WIAB server, for example;
	ExportDir - directory with exported waves.


In order to properly import, you may need to do some changes in the WIAB code, as indicated in:
Take into account you should compile with "ant" the wave code after the changes, for the "http://localhost:9898/import" to work. You will know your /import works if from a browser it outputs the following:
  Problem accessing /import. Reason:
  HTTP method GET is not supported by this URL
  Powered by Jetty://
A "Not found" and similar results show the WIAB source code is not incorporating properly the "/import".