github
Advanced Search
  • Home
  • Pricing and Signup
  • Explore GitHub
  • Blog
  • Login

seven1m / onebody-updateagent

  • Admin
  • Watch Unwatch
  • Fork
  • Your Fork
  • Pull Request
  • Download Source
    • 5
    • 0
  • Source
  • Commits
  • Network (0)
  • Issues (0)
  • Downloads (11)
  • Wiki (1)
  • Graphs
  • Branch: master

click here to add a description

click here to add a homepage

  • Branches (1)
    • master ✓
  • Tags (11)
    • 0.4.3
    • 0.4.2
    • 0.4.1
    • 0.4.0
    • 0.3.0
    • 0.2.2
    • 0.2.1
    • 0.2.0
    • 0.1.2
    • 0.1.1
    • 0.1.0
Sending Request…
Enable Donations

Pledgie Donations

Once activated, we'll place the following badge in your repository's detail box:
Pledgie_example
This service is courtesy of Pledgie.

Handles pushing data to a remote OneBody instance. — Read more

  cancel

  cancel
  • Private
  • Read-Only
  • HTTP Read-Only

This URL has Read+Write access

Fix bug causing all records to be updated when no relationships are 
present. 
seven1m (author)
Mon Jan 18 21:58:08 -0800 2010
commit  e514b82298ccce59444f4d904f80c2dd27f618fc
tree    97316925c5fafa36b171e9a75458ab704adc3a6c
parent  4ee33a88430b76c6b505f939fb766ab783581df2
onebody-updateagent /
name age
history
message
file .gitignore Loading commit data...
file README.markdown
file VERSION
directory bin/
file example.csv
file example.yml
directory lib/
file onebody-updateagent.gemspec
README.markdown

OneBody UpdateAgent

Ruby gem that pushes data from a membership data source to a remote OneBody instance via the REST API.

Download and Install

Install Ruby if you don't already have it.

Run the following command ("sudo" may be required in some environments):

gem install onebody-updateagent -s http://gemcutter.org

Configuration

  1. Run update_onebody at a terminal, then take note of where the example.yml config file resides.
  2. Copy the example config file to a convenient location and edit appropriately.

Your "site" address will probably be something like "http://example.com" or "http://yoursite.beonebody.com".

You can get your user api key from OneBody (you must be a super admin) by running the following command (on the server):

cd /path/to/onebody
rake onebody:api:key EMAIL=admin@example.com

If your instance is hosted at http://beonebody.com, you may email support@beonebody.com to get your api key.

Preparation

Using your membership management software, reporting solution, database utility, custom script, etc., export your people and family data to a single comma separated values (CSV) file, e.g. people.csv.

Duplicate family data should be present for each member of the same family.

The first row of the file is the attribute headings, and must match the attributes available:

  • Person Attributes
  • Family Attributes (prefix each attribute with "family_")

Not all attributes are required.

Optionally, if you have shell access to your hosted instance of OneBody, you can run rake onebody:export:people:csv to export the current OneBody data (if you have any records in the OneBody database) as a starting point.

Use the following attributes to track the identity/foreign keys from your existing membership management database. Do not include "id" and "family_id" columns. legacy_id legacy_family_id

There is an example csv file in this directory for reference.

Converters

As of this writing, one Church Management System (ChMS) is supported via a Converter. The Converter translates field names and data into the formats and locations expected by OneBody.

To use a converter, you must specify it in your config file. The example config file has these settings disabled; simply remove the pound sign at the beginning of each line to enable the use of the converter. Specify the name and any additional settings.

Usage

To run UpdateAgent:

update_onebody -c path/to/config.yml path/to/people.csv

If you plan to schedule UpdateAgent to run periodically without human intervention, you'll want to at least use the -y switch, which assumes yes to any questions:

update_onebody -c path/to/config.yml -y path/to/people.csv

You may also log all output:

update_onebody -c path/to/config.yml -y -l path/to/updateagent.log path/to/people.csv
Blog | Support | Training | Contact | API | Status | Twitter | Help | Security
© 2010 GitHub Inc. All rights reserved. | Terms of Service | Privacy Policy
Powered by the Dedicated Servers and
Cloud Computing of Rackspace Hosting®
Dedicated Server