 Good morning everybody. I'm Catherine Carruthers. I'm a freelance webmaster. I have to look at my computer to know that. I've been building websites in general since the web was invented, mostly for labour organizations where I was staffed. And for the past couple of years I've been a freelance webmaster just working with non-profits and charities to do their Drupal sites mostly, but almost always CPCRM to do event planning and fundraising and stuff like that. So when I saw a call for speakers this morning I thought, I can talk about CPCRM for now. So in case you don't know what it is, it's kind of like Salesforce, but for non-profits and charities and political organizations, for civic-minded organizations and they call it instead of client relationship management system, it's a constituent relationship management system, so that's harder to say. But it handles the relationship parts of it differently, even though it does have, money can be involved in collecting contributions and donations and event fees and stuff like that. It's less, like instead of having a sales funnel going through your CRM, it's a relationship funnel, so you're looking at the activities that people are doing with your organization. It's also an open source project similar to Drupal and I don't, everybody knows how open source works, right? Yeah, okay. So CPCRM works right now very well with Drupal 7 backdrop and WordPress and Joomla. And they're working on, there are a couple of organizations working on making it work well with Drupal 8. It's not released for Drupal 8 yet, but there are, as I'll get to later, a couple places that are actually implementing Drupal 8 with CPCRM. The major things it does are dependent on the organization, so I've got a couple of clients who use it mostly to manage their email with their members or the general public, both in, like you can have individual emails, group emails, and then bulk email with an SMTP provider. It also has a really nice event planning segment, so you can create various types of events, so you can have conferences, meetings, webinars, all of that, both paid and just signed out. And the event planning part of CIVI handles all of that. Registration keeps the records in the person's dashboard and so you can see, at a glance, the entire scope of your relationship with a person. You can see all the emails they've gotten, whether they've unsubscribed, whether they've come to all of your events, whether they've paid for all of your events or signed up for all of your free events and then not shown up, so maybe shouldn't be invited anymore, like all of that kind of stuff is really easy to access in CPCRM. It also deals with contributions and donations, so for charitable organizations it's really useful to be able, for a fundraiser, to be able to get a history of a person's monetary involvement with your organization, so you can target your top donors and invite them to a special event or hit them up for more money. And then there's subscriptions and memberships. I've done a lot of work with memberships, so like specifically paid memberships, you can have a membership expire and then all of the content on your website that's member-focused, all of a sudden, you know, if you haven't paid your membership it's just gone with Drupal. We'll get into why it's easy to do that in Drupal as opposed to in WordPress or Joomla. It's really harder to set up that kind of role-based access to things, so one of the benefits to having CPCRM and Drupal is if you have payable information you can really easily block it down with your Drupal permissions. And then there's case management, which I haven't done, but that's like if you're an organization that has clients where you're managing, say, family for a social work situation or something like that, or like medical and social assistance organizations can use it to manage their clients' cases. Okay, the hosting requirements for CPCRM are similar to Drupal, like if you can run Drupal, you can usually run CPCRM. I usually add on some extra memory, especially if you're going to have a lot of end users using the CPCRM, so if you've got a lot of people interacting with your CPCRM as opposed to just your internal staff, you'd want to add on some RAM for the extra sessions, but otherwise, if you can run Drupal, you can usually run, like unless it's very, very low-end hosting that Drupal crawls on, you can run CPCRM on any hosting. There are recently a few providers who are, like I know of Symbiotic and Praxis in Montreal that do manage Drupal and CPCRM, so if you don't want to deal with the hosting, like if you're a small organization and you don't have people like us to manage it, you can use a hosted managed CPCRM, so all you're worrying about is the actual CPCRM configuration. MyDropWizard, it's in the state, so we get into all kinds of other issues with having your data stored outside of Canada, but aside from that, MyDropWizard is doing hosted managed CPCRM, they're doing CPCRM as a service basically, so software as a service with Drupal 8, so they're rolling that out over the next few weeks and they're actually offering right now a limited number of free migrations, so if you have a client maybe who has CPCRM on Drupal 7 and they're interested in moving to Drupal 8, if you go to MyDropWizard, like this weekend, you can fill out an application and they're doing a certain number of migrations for free to Drupal 8, migration and upgrade, and then you sign up for their service for six months or something and then you get your migration for free, so if you happen to know of anybody who's strapped that needs a new CPCRM on a new Drupal, that's an offer that's going to be running really soon. Okay, there are two supported versions of CPCRM, similar to like you can have Drupal 7 or Drupal 8, you can be running CPCRM 4.7, which is kind of the latest and greatest, every new feature goes into 4.7 point whatever when the new one comes out, or they've got a long-term support version which is 4.6, so when some extensions may not be, like get into that later, but CPCRM has its own extensions library similar to the Drupal contributed modules, so some extensions are written and tested with 4.6 and not 4.7, so if you want to run 4.7 you'd have to do some of your own testing of modules to make sure that they're working, but they're not necessarily supported by the extension writers on the newest version. Okay, once you've figured out what version you're running and what you're running it on, then getting into CPCRM itself, out of the box it's got three different contact types, so you've got individuals, organizations, and households, and then you'll create your own types of organizations. You can create an entire contact type, but that's really complicated, and I'm assuming most people don't want to do that, so you would create a subtype that uses all the contact type that just groups your types of organizations, so that's in my experience it's usually either chapters or regions or member organizations of a larger organization that would be subtypes, so that then you can create relationships between people and their organizations, so I put a few of the organizations, because as in life you could have an individual whose like Mike is employed by open concept, he could also be a member of the Ottawa Drupal Association, and a member of a household with his partner and children who get mail delivered to them, so when you're doing mail, the only thing households is really used for in most charities is to ensure you're not sending like five pieces of mail to the same house because you've got multiple people there, so you'll with one thing you can say only produce one mailing label per household, and so you join the people into the households and similar for organizations, because often especially for charities you'll have individual donors and members and things like that, but you also may have organizations that do not necessarily have individuals attached to them on your mailing list, like you'd send letters to local businesses dealing with Drupal, you'd send a letter to, if you don't know Mike, you'd send a letter to open concept as an organization, so it's clearer once you get into it, and if anybody has any questions, feel free to stop because otherwise I'm going to run out of talking to you. Mr. Prime Minister, is it still intended to be able to be run as stand-alone? No, they don't have a stand-alone, very very few people or organizations were using the stand-alone, and the purpose of the stand-alone was really if you didn't have a website, so who's using a CRM that doesn't have a website, so if you really don't want to deal with the, you know, having a real website, you can always just have an empty copy of Drupal or WordPress or whatever, like depending on the extensions and modules you want to use, you just pick your CRM and bring that up and just don't populate the website. So that in the day when it was intended to be able to be run as a stand-alone, I know that there's a lot of redundancy between wide-silly, modern, and more Drupal there, so you use it. Yeah, and they've really, when we go and look at the extensions and modules, they've really streamlined the list of modules in Drupal that duplicate things that were in CDCRM, so when you go to the extensions list, you see everything that's relevant for your installation, so if you're running 4.6 on, actually I think we're going to get to that in just a few minutes, but I have a whole slide about extensions and modules, so one of the things almost everybody uses is some form of bulk messaging, so there are many ways to set that up. You can, if you're very daring, just use the built-in server mail processing and blast at thousands of emails and then deal with all the bounces and responses or not and just have them go into a can and really annoy people because they keep getting emails because the bounces aren't being processed properly on the backend or you can set up a proper mail service to handle bounces and like if you're comfortable with handling a mail service as a manager, one messaging system it does not play nicely with is Exchange and Office 365. They just, like 0365 just drops everything coming because it doesn't understand Internet Standard SNTP headers and stuff like that because it expects to talk through its own gateways all the time. And Google, where's it at? I've never done Google, I find that when I've tried to use Gmail as my SNTP outgoing, it does a lot of throttling that it's not telling you about. So you'll think you've, like City CRM will report that, yes I've sent out you a thousand email messages, but actually Google just drops a lot of them, so without telling them. So like they don't come back as bounced or throttled or anything, they just don't actually go anywhere past Google. It may be different if you've got like a corporate Google that you're all up to no, okay. I've never tried it because I had horrible issues with it. There are, there's cbsntp.org is a little company that is set up specifically, like all they do is manage SNTP servers for City CRM. So the absolute easiest way to set up outgoing bulk mail, the City CRM, is to open an account in cbsntp and pay them in their 20 bucks a month or whatever. And it, it does escalate in price if you're, if you really get into bulk mailing and you're sending out a lot of stuff. Like I have one client who sends out 100,000 messages in a month regularly, so for them it would cost a lot more than the hosting to support their mail through cbsntp. So they're using a service called SparkPost that is free for your first 40,000, I think, and then very reasonably priced for bulk mailing over that. So I think they're going to end up spending like $25 a month on a big month to do all of their mailings. I like SparkPost. And also people at SparkPost have like their own APIs and everything and they make it really easy to hook into them and they've written an extension for City CRM. So all you have to do is get like an API key and plug it into your City CRM and say, yes, send all my mail through SparkPost. But like I said, there are other options for doing email but that's kind of, if you want to keep it simple. There used to be an extension but I'm not sure, like I've never used it because, again, of the pricing mail chimp once you get into bigger mailings gets more expensive. And the things you're paying for with a service like SparkPost has its own mail chimp-like features but the things you're really paying for with those services is all of the analytics and bounce handling and all of that. And those are all handled through City CRM so you're not really using that as much. Like you need your bounce channel set up to come back to you but from, like what I've done, I find SparkPost is the easiest and cheapest to get it all. And we are, you know, when you're talking about charities and nonprofits, you know, money is very, you know. I haven't done, no, I think you'd have to, you could manage the membership in the list through City CRM but it doesn't have, like, a chat function built in. I wouldn't be surprised if they're working on that because later in the resources I've got a link to, they're using Mattermost for their, like, developer and support chats now so I wouldn't be surprised if they tried to integrate Mattermost into City CRM at some point. Yeah, like all of the unsubscribes and stuff like that are handled in City CRM but... Yeah, I mean you can certainly import, you could do your list management through City CRM at worst by doing import exports but yeah because I was thinking the actual chat functionality. Yeah, it isn't there but it's a really interesting thing to look into, yeah. Okay, one of the things I've loved about City over the last few years is, and especially with Drupal is that you can set up all of your email lists to be confirmed so all users have to confirm that they agree to be on this list to comply with the Canadian anti-spam legislation and the opt-outs and unsubscribes are all handled like right in City CRM so you're not accidentally sending out government-considered spam. And it's just out of the box actually the unsubscribed messages and the opt-out messages are like it's not just a line that pops up saying okay you're out because generally you want to keep people in so you can add your own messaging around these screens but the out-of-the-box screen confirm like it says please confirm your unsubscribed so you have a chance there to do a little user retention if you want to and they have to verify their email to unsubscribe. Yes I haven't set that up because again I'm working with people who like everybody coming in is signing up through the website so we give them the option to opt-out or unsubscribe in every message so we haven't made them go back and forth but you can have that in your Drupal setup like if you're if you're signing people up through a Drupal site then yeah you can use the Drupal opt-in like set up your user accounts in Drupal that way so it really depends on the front-end putting it in front of the like when you would press you'd have to add a couple of extensions to do that whatever we press called their plugins yeah you'd have to add plugins to WordPress to do that whereas it's just in your user configuration in Drupal so okay this is the big black on the screen it is the first couple of paragraphs from the link at the bottom and in the very long page about CMS permissions and CBCRM ACLs because you have both so you can choose to configure very granular access within CBCRM so if you've got like recently I had an event manager who it has no other responsibilities in CBCRM she's just running an event for a chapter of an organization that I'm looking for the National Head Office and we were able to in CBCRM let her just come in and see who signed up for her event every day instead of having to run a report and send it to her she can just log in anytime she wants and see the event list so you can do that very fine grain control in CBCRM itself but you have and again this is a screen capture of all of the default CBCRM permissions and it actually isn't showing up on the screen because it goes on for pages and pages that you can set in Drupal you define roles of you know site administrators event coordinators membership managers whatever you know the rule the functional roles you have in your organization you set those up as roles in your Drupal and then you can give over writing permissions to each person to see exactly what they're supposed to so because they're Drupal permissions they work exactly like Drupal permissions so when you go into CBCRM if you have no permissions to see or interact with events you do not see the events menu at all you just get the like each user just gets the things you've defined in Drupal permissions okay but there's extensions so similar to there are there are Drupal modules that affect CBCRM only on Drupal and then there are there's a CBCRM extensions library so in your CBCRM if you go to a minister extensions you will see a list of and then click on add new you'll see a list of all of the extensions that are relevant for your implementation so it looks at your Drupal version your CBCRM version I think you can probably filter it down further but the default list is just everything that will work for you that's tested for your version you can still go out just like in Drupal and find a sandbox extension that's not certified for use on yours and install it but through the point and click method you it will only show you things that will work so most people like that there are some yeah there are some that are one that works on every version of CBCRM 4.6 so it's it's been tested on WordPress and Drupal yeah because it's just in CBCRM is the city discount so and it's one of the most popular so if you're running events you can say okay if you're a member already you get in free if you're this role you get a 50% discount if it's an early bird you get this discount code like so you make up disk coupon codes basically that people can enter and get the right amount of money so that is anything that's specifically in the city CRM alone and doesn't depend on the the functionality of the content management system will show up for everybody they'll they'll work on all of the difference of the CRMs and yeah and similar to like in Drupal you'll have well in Drupal you don't have things that work automatically from one version to the next ever but like it'll show you in in a module which versions are available so CBCRM extensions are like that there are also a number of Drupal modules that only like they're stored over on Drupal.org just like all other modules but they only interact with Drupal sites so while they are accessible from CBCRM.org they're they're only listed for Drupal sites so the main ones like the most fun ones that you'll always install are webform CBCRM integration and I just recently did a CBCRM migration from Joomla to Drupal and when they saw webforms they were just like oh my god it's webforms just blew their mind so what the webform CBCRM integration module does is it exposes CBCRM fields to be used in a webform so instead of just making up new fields that say first name, last name, organization blah blah blah like all the things you're already storing in CBCRM you just pop those fields in the CBCRM fields as tokens and then when somebody feels like you're form that information and can we send you email that information immediately goes into CBCRM so because that's the database that's exposed on the webform so same with contact form integration it has I think as notes any web like anything you're doing on Drupal contact forms can be stored in CBCRM and then it will show up in dashboards as things to be acted upon by the staff so that's pretty cool and then there are commerce and UberCard integrators that take basically the the CBCRM contributions pieces and use the Drupal commerce or UberCard on Drupal payment channel to get the money and then just record it in CBCRM's contributions so you can also set up if all of your money stuff is set up in CBCRM like all you're doing is donations or event fees and you're not also doing commerce activities on your website you can set up a direct payment processor in CBCRM so like PayPal or IATS and again IATS has done a lot more work to make their payment processor work well in CBCRM and because they're a payment processor for our credit card processor for nonprofits so they like CBCRM so CBCRM works then but you can also use more commercial. Do you know of anyone who is going to shopify? I don't know I imagine they are but again with that you would probably hook up Shopify to commerce right? and then like using Shopify as all I've done so far is like embed Shopify sales things in a Drupal site as standalone things that we're running through Shopify so I haven't done that and I haven't seen it published yet but someone is probably working on that. Okay. On CBCRM.org there are two here I'm just gonna there are two big books that is the user got three big books they've split the the bigger one into developers and administrators so there's a user guide a developer guide that talks about the API and all that and how to make your own extension and an administrative guide for people like me who are you know site builders and people who just want to read a lot and click and not record so because it's possible something I was asked earlier is why would you not use Red Hen or the the Drupal CBCRM core and it's mostly because when it comes down to it if you're a nonprofit or a charity you you want to be taking in donations and not spending a lot of money on developing a CRM even though it might be more integrated into your Drupal using CRM core you want event planning and bulk emails and all of those things very expensive police so CBCRM is just easier for that audience of people and for site builders to go through and also on the main resources page it's got a list of I believe these may be promoted extensions because they the extension library itself is quite large they have a slightly different relationship with money over at CBCRM so they'll do make it happen campaign so there's something that all of the users want but nobody has the resources to actually code it from the ground up they'll start to make it happen campaign and pay a developer or a group of developers out of that to actually do the work so like they tend to be for a large thing so similar to what Drupal did that with the like when D8 was almost ready but not quite and they needed that fun push to just hire some people like to be able to hire some people to actually write and test the code they did they took contributions towards that so CBCRM does a similar thing because there's a there are a couple of companies that are focused on developing it for as paid developers but for the most part it's just you know people who need a certain thing so that's the resources on CBCRM org itself they've been for the last year or so using Mattermost to do it's kind of like Slack but open source to do chats like they're doing a lot of support through Mattermost and then it's it's public like it's out there and searchable and easy to find they also have channel on where you ask questions okay next month there's going to be a city camp in Montreal so anybody super interested in CBCRM I have no idea how big it's going to be I take it's going to be tiny there are a couple of really good what one of the core team members is now in Montreal and so he's one of the drivers behind this and there are a few other organizations that like practice and symbiotic and kumbit that are working on bringing some of the people in in the CBCRM community so there's one day of sessions and then two days of sprinting two or three days of sprinting after in Montreal okay and now I'm at the end of my slides and at the time when I was going to say does anybody have any more questions I've got a couple of sites I can show people for examples of things if there's a specific like for usability when I was previously working for a union and our staff there were all researchers and communicators and people like that they were not technical in any way and they were able to you know manage campaigns and do you know their monthly emails or email blasts and all that with very little intervention so well it's the interface of setting it up is a little intimidating like when you first come to CBCRM site well actually when you set it up there is a page called the configuration checklist so basically to to create a new CBCRM you just go through this and when everything's changed color you know you hit all the pages you have to type something on this does not unfortunately tell you if you did it right like you have to try sending out your email when we go somewhere and stuff like that but this does tell you at least looked at all the different configuration areas because then once once you're up and running then you have this administration console and it's got like all of the different places where you can create all of your your data types manage your templates and schedule and messages you can do CBCRM and multi-lingual Yes. I have a general question about the velocity of development the uptake how's it doing like I went back in the day it was like a really big trend I think the the kind of the the guy that spearheaded the project has kind of stepped back and so now it's there's a core group so like it's kind of like if Dries retired from doing Drupal then you'd have you know here's still all of the businesses doing Drupal and all the people writing the code would still exist but they've been trying to establish more of that kind of team mentality around approving updates and stuff but they're still doing like there are new features monthly and and new releases like 4.7 is on I think 0.31 and it's three years old so it's you know anyway when Greenberg okay yeah has like I think he was helping channels from various sources towards CBCRM is there one primary source of funding right now no it's like there there are a couple of larger institutions that have bought into it mostly it's become quite popular with political parties so they're a good source of funding because you're not taking like they're also they're trying not to take funding from charities because that goes into the bottom line like nobody wants to send money to a charity that's spending too much of a percentage managing their systems so it's kind of like you want them to have good systems but you don't want them to spend money on it because it's your harder money and you want it going to whatever the charitable thing is so they they hit on a lot of political parties labor organizations other you know kind of social action organizations but that maybe can spare a bit more money and development time to to build the program so one of one of the most recent things that when I don't have an installation of it to show you but there's a piece called city campaign so it's for political parties when you're doing like walk lists or call lists so you can go okay I have 25 volunteers who need to cover a writing in a walk list you can print them out a walk list or put it on their iPads and they go okay Susie at number 35 said yes she'll vote for us and don't go there because they're dogs on you and stuff like that so they they have gotten that done but as with any other open source project there's no like there are a couple of companies that contribute a lot back but they're not like there's no kind of paid for funding source yeah sorry I know there is a lot of discussion of like in the in the access control list there's a function so that you can share things with somebody who's in a role that's kind of above you so that students can share homework say like upload their homework to their dashboard and share with their teachers but they can't see any of the teachers so there are those relationships developed if you need them but I'm not there must be because that somebody wrote somebody wrote this the stuff in the ACLs for that like using that use like I've seen use cases for it not actual needs of institutions okay