Integration with CRM
Notes
- Whatever CRM we go with must have a Web API.
- Events tracked in CRM:
- User creation, deletion
- Event creation, deletion
- Project creation, deletion
- Updates to major fields in these models ("major is tbd")
- User joins a Project
- User RSVPs to an Event
Possible Architecture
In order to make requests to the CRM API in a way that does not affect the performance of the site (and hence the user experience), the integration will need to be asynchronous. We could use Django post_save signals on the models to send messages to a message queue. Another application could then consume tasks from the message queue and do the necessary work on the CRM side.
Federated Social Web
- Drumbeat user accounts should be valid WebFinger identifiers (i.e. paul@drumbeat.org) and should resolve to an XRD with information about services used by the user.
- Drumbeat should implement OStatus in order to support cross site follows / messaging.
- We should aim to pass SWAT0. The first "Social web acid test".