discourse/script/import_scripts/socialcast
Sam Saffron 30990006a9 DEV: enable frozen string literal on all files
This reduces chances of errors where consumers of strings mutate inputs
and reduces memory usage of the app.

Test suite passes now, but there may be some stuff left, so we will run
a few sites on a branch prior to merging
2019-05-13 09:31:32 +08:00
..
test DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
create_title.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
export.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
import.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
README.md
socialcast_api.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
socialcast_message.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
socialcast_user.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00
title.rb DEV: enable frozen string literal on all files 2019-05-13 09:31:32 +08:00

To get started, copy the config.ex.yml to config.yml, and then update the properties for your Socialcast instance.

This importer uses the Socialcast API.

domain: 'my-socialcast-domain'
username: 'my-socialcast-username'
password: 'my-socialcast-password'

Create the directory for the json files to export: mkdir output
Then run bundle exec ruby export.rb /path/to/config.yml

If desired, edit the socialcast_message.rb file to set the category
and tags for each topic based on the name of the Socialcast group it was
originally posted to.

You must create categories with the same names first in your site.

All topics will get the DEFAULT_TAG at minimum.

Topics posted to a group that matches any group name in the TAGS_AND_CATEGORIES
map will get the associated category and tags.

Other topics will be tagged with the original groupname and placed in the
DEFAULT_CATEGORY.

To run the import, run bundle exec ruby import.rb

To run the import in a production, run RAILS_ENV=production bundle exec ruby import.rb