Upcoming Events
NYC CiviCRM Meetup - September 7th
September 7th, 2010
This next NYC meetup will feature a case study or 2, a look at what's new in (more...)
Configuring, Customizing and Extending CiviCRM - New York
September 16th, 2010
This comprehensive two-day hands on training course is targeted at (more...)
CiviCRM User and Administrator Training - New York
September 16th, 2010
A comprehensive two day hands on training course covering the configuration, (more...)
CiviCRM Code and Test Sprint - New York
September 18th, 2010
This code and test sprint is targeted at experienced developers who want to (more...)
CiviCRM Toronto Meetup
September 21st, 2010
Come meet others from the Toronto Area who are interested in, using or (more...)
CiviCRM Philly Meetup – September 2010
September 23rd, 2010
Come meet others from the Philadelphia Area who are interested in, using or (more...)
CiviCRM Seminar - Dublin
September 28th, 2010
NfP Services are hosting a free seminar at The IBOA, Stephen St Upper, Dublin 8 (more...)
London developer and implementer training
September 30th, 2010
This comprehensive two-day hands on training course is targeted at implementers, (more...)
London user and administrator training
September 30th, 2010
A comprehensive two day hands on training course covering the configuration, (more...)
Berlin user and administrator training
October 6th, 2010
A comprehensive one day hands on training course covering the configuration, (more...)
Berlin developer and implementer training
October 7th, 2010
This comprehensive one-day hands on training course is targeted at implementers, (more...)
Benelux meetup in Brussels: Connect, communicate and activate your supporters and constituents
October 11th, 2010
Come meet others who are interested in, using or developing for CiviCRM. For (more...)
CiviCRM Toronto Meetup
October 19th, 2010
Come meet others from the Toronto Area who are interested in, using or (more...)
CiviCRM Toronto Meetup
November 16th, 2010
Come meet others from the Toronto Area who are interested in, using or (more...)
CiviCRM integration with Drupal Rules module
- Not Just a Contact Database
-
These optional components give you more power to connect and engage your supporters.

civiCONTRIBUTE
Online fundraising and donor management.

civiEVENT
Online event registration and participant tracking.

civiMEMBER
Online signup and membership management.

civiMAIL
Personalized email blasts and newsletters.

civiREPORT
Report generation and template management.
Workflow has been an important piece missing from CiviCRM. We figured that integrating with the Rules module in Drupal would address this problem. I decided to tackle it on as a weekend project :)
Kudos to the rules developer, Wolfgang Zeigler for designing AND documenting an excellent module. The developer documentation is very comprehensive and along with the integration modules, i was able to write an integration module in a few hours. The source code for the module can be found in our svn repository
We hope to address and answer some of the integration questions with the community, similar to how the Views Integration Module has been developed. CiviCRM has got pretty good hook support, so I suspect adding extensive rules support is very feasible, i.e. fire rules based on CiviCRM hooks. We need to answer a few other questions to help us move this integration forward in a fruitful manner:
- Data types to expose? Exposing all the top level CiviCRM objects as data types makes sense out here. Pretty much the same set of objects/tables that Views exposes (Contact, Contribution, Participant, Member, Activity)
- Events to fire? Firing a rules event for all operations (insert,update,delete and view) on the above objects seems reasonable. We should also fire an event on a form submit (so an action could redirect the user to a different page)
- Default actions? Some basic actions can be: add/remove from a group / tag, create a "object", send email with the object values, log to table/file, create/update an activity to reflect the change made (suggestion by DaveJ)
- Default conditions? Compare two objects, contact in group/tag, object with value V in field F
- Passing variables to other actions? This is a useful feature and should allow us to pass data from one action to the other. I suspect we will use this extensively as we add more actions and conditions.
I'm struggling a bit with actions / conditions that make sense and are useful. Let me know if you have any ideas on what will be useful in this context. If you can help build out this module and implement some of the functionality above that would be great and highly appreciated. Ping me on IRC if you can help. This definitely has the potential to take CiviCRM up to another level :)







Comments
Has anything happened on this?
I am a user and I think this would be a great module. Has anything happened on this?
Regards,
Amit
Unfortunately not ..
but maybe you can be the person that gets it started :)
lobo
Re: Useful actions and conditions
It would be useful to be able to tie contact field updates and activities to create a more flexible form of audit log:
1. Let the user specify a given custom field (condition), and an activity type to create when that field is updated (action).
2. Let the user specify a given activity type (condition), and a given custom field to update when that activity is created (action).
Use case 1 is a straightforward audit trail. The "activity" in that case is simply "I updated field foo". Use case 2 allows things like reason codes, which would be represented as custom fields in the activity itself. Example: I banned this user (set their "ban" field to "true") because "they were naughty". "Naughtiness" would be one of the possible reason codes in a custom field attached to the "ban user" activity type.
This is a great start
I am trying to add a method that will make contributions and event registration to be credit to a household (contributions - soft credtied to an individual). I am working adding a rule based on contribution create and event registration. I will post when I have it done.
Additional triggers
One of the triggers I am looking for is:
Complete registration for an CiviCRM event (filter by event type). I have a situation where we want to have registration for a webinar through the civiEvent module that then triggers a php action to curl to an external website.
THX
Cas
Awesome work!
a few ideas:
Treat CiviCase Activities and ActivitySets as states, so that we can mimic the "change state from X -> Y" behavior. For example, it would be great to "send an email to case manager and creator" when case "changes state from ActivityType1 to ActivityTypeN"
Not sure from your post if you've covered this already, but "send an email" actions to any of the CiviCRM roles/groups would be great. Same with reporting - noticed that wasn't on your top level list (so "run report X after number of contributions for this month = X").
It may be that most of this is covered by your default conditions, but wanted to throw out a few examples just to make sure :)
Fantastic! How about Activities?
Great stuff, Lobo!
Creating or updating an Activity could be a really useful action. E.g. log in Civi that a user has completed a webform or content profile, submitted a comment...
Dave J
good idea on activities ..
yes, creating activities as an action makes sense. I'll modify the blog post above to reflect this