 Okay, can anybody hear me? Everybody hear me? Yes, okay. Good afternoon. I'm here to talk about Building engaging communities with chemification commerce and integrations. It's a long title. It's so it's a short talk so I'm going to get on with it Okay, my name is van van Edvanger. I was a Drupal developer and I turned functional analyst And I'm here to talk about gamification As I said before there is only 20 minutes Including the questions. So I'm going to go pretty fast. If there are questions afterwards, feel free to contact me or the people at our booth downstairs so First and foremost, this is going to be an inspirational session about an actual Project we are doing so it's still under development. I Translated it into a very short talk about Drupal and how we come we applied Commerce the community and gamification Like I said working products Working progress about the company in the medical sector. So again for more information Feel free to drop by and talk to me or talk to us for everybody at drop solid So how did the project start? We have this client and we came to the client and he said we want to Extended website We already knew that the client invested heavily in their social or social media Presence so we asked in different workshops. So the workshops were divided into Strategic workshops like understanding the business logic. We are there. Where are they going to? How we're going to implement gamification if it if that is what they want but also a lot of Functional detail. How are the things going to work? How is everything connected? How are API is implemented and then we had technical workshops? So first of all their request was like, okay next to our public website We want to add a space where our partners our affiliates can manage their businesses On top of that we want to create a community of users and a community that feeds itself and Thirdly and not an important is we want to add a shop So that was the initial brief and we were like, okay, let's refine this Let's try to understand what those people want and now we can optimize everything First of all the partner portal. So it's a login for their profession professional partners professional partners can be Therapists physicists who work for this company, but they have also their own company. So they can manage Their commissions their company their employees all inside that partner portal Important side note the partner portal in order to create that had a very large API independency and in this case it's focused on Microsoft Dynamics Secondly what they wanted is a large community and for us that was the first thing we needed to tackle because Communities are language based for example, you can have a Dutch community that contains Countries like Belgium and the Netherlands, but you could also have English communities which contains a lot more countries for us this for us this was a complex a complex issue because Shops work Based on language and location. So we need to find a way to intertwine those two Secondly the community also needed a Facebook like clone So users have a wall where they can post react share at followers follow people, etc And that's also a place to facilitate content creation. Like I said before The goal of the community is to feed the community So there were multiple rules and permissions and a whole workflow system and a wizard for basic users on how to create content for the community and Thirdly and lastly they needed the online shop So we used a Drupal commerce using the products API and here also a very large API dependency on business central So the additional complexities in this very high-level setup is the multilingual setup versus the multi-market setup So we have a certain amount of content restrictions. So the community is based on language Commerce the commerce is based on markets. There's a lot of user hierarchy Like the roles and permissions complex editorial workflows and so on and also here the many many API dependencies So that was the functional part. We are like, okay, we need to understand. What are we going to build? How are we going to build it? But in order to align business logic and expectations We need to add another layer to seamlessly melt all elements together into one cohesive project So we we started thinking playing a game of ping-pong with the client and we said, okay Let's add a layer of gamification and for the client also was like, what is gamification? So we again, we did a lot of workshops and we came with some sort of reward system Where the users and the members are able to collect community coins, which the WAP administrators can configure through the conditional logic I'll go into that into detail in a moment and the whole model was like earn and spend first of all They can earn. We have to create a loyalty. They have to earn Stuff by supporting the community for example, they can write a blog post to the community will love like, okay Somebody wrote a blog post about a certain product They get some loyalty for it and then they can spend the the coins they earn in the shop and they Get rewarded So by adding gamification, we were we were able to stitch all those Individual islands together into one into one part, but how and where did we implement implement all of this? so Community members and I'm going to quickly go over this one Community members have a personal dashboard. So when people create an account, they have a personal dashboard They can see an overview of what's happening in the community. First of all, like I said before you have the timeline Which displays content. It's a Facebook like timeline with posting commenting and other stuff like that They have my health. So and also my partners. So users can connect through a certain partner The results from the exercises they do with those partners are also added to their personal dashboard They have their own network. They can say, oh, that's an interesting guy I want to follow that partner or that user and then follow him and then see their content appear on their timeline They can create content and they do moderation based on three profiles and a workflow They can participate in discussions, but again, these are language based in order in order to filter out clutter They can share data with the professional partner and they can collect and spend community Community coins for example, they write a blog post. They add a comment in a thread. They rate a product They share a page. They complete their profile. There are a lot of ways to earn content Also, we made a custom wizard for content input for basic members You have to know in the community there were three levels of members First of all is the first stream of members. We don't know what what's it about So we created a custom wizard that explains everything and they can create Custom content for the community All this and more is reflected in the time and also the extended notification center So this is a sneak preview of work in progress This is what a community member gets to see What can he do what simple simply stated they can add content And they create content based on their current language. They can write a story a blog post tips and tricks training Whatever and they can also Do it through an editorial level but that I mean for example, I am a basic user I create content, but my content is not yet published There is another user who needs to revise it in the workflow and publish it when that is done The original content creator gets for example, a certain amount or amount of coins Next to that they can connect to the partners also Added to the gamification. They can attach and detach themselves to one or more partners They can do a follow-up on their health. They can share information with the partner and find another partner The most important thing is you have to also know that the client has a very large amount They invest on monthly basis on social media So they really are trend checking what's happening and we need to always implement that But for them the most important thing is like they want to post items on the time timeline They want to follow and unfollow people. So they are informed about new trends new stuff that is coming Again, like I said before comment rate share on posts and products and they stay informed through notifications So there is a notification center that's on one hand sends push notifications The moment you earn something but also as a dedicated page is some sort of overview page where all your Gamification items are listed Also very important is the setup of their profile not all fields are mandatory So they can set personal preferences when they do so they earn coins They will be used for a certain amount of personalization on the timeline For example when you write a blog post you can add certain topics if you're interested in those topics Those blog posts will be pushed to the top of your feet So the web admin and this is what I want to talk about Is it can moderate the community? They can moderate all content including the workflows They can configure additional shops. They can do anything it is built in Drupal They can do lots of things But they also can configure the community based on internal and external events So they can add an action like share create They can apply it to a certain content type and then assign the community coins that can be earned to that action So I made some examples just to make it clear Example one is configure that the user earns 20 coins when creating a blog post So when we translate that to gamification Users are incentivized to create a blog post and when the post is approved So at the end of the workflow, so if you can say when it's published It appears in the community and the creator gets rewarded So we have a community you create content you get your reward and you can spend it in the shop. So we make Kind of a circle movement. So How are we How did we build this how can A web administrator configure that so Let's take the same case configure that the user earns 20 coins when creating a blog post So you can give your event a name you can give it a description And then you have to assign a certain type either you have a Drupal internal event and those are like create Comments and stuff like that or you can trigger an external event By an api and I'll come back to that later So when you do that you can add the event of the action you can say well something is created When there is a moderation when there is something shared when there is something rated when you have profile completion under certain conditions When you comment on something when an order is completed you can earn something So What we do that when you when we know what needs to be done We set the target entity type. So in this case, yeah, well, it's content that needs to create it The target entity bundle in this case is which content type is this applied to so content from a blog item Well, you can earn the amount of 20 credits Other than that I told that they have a Extended notification system by default when you create an event The notification is created using tokens. So we can see it in the example We can use tokens. So we created a lot of custom tokens that web administrators can use in order to give them a lot of flexibility To create custom alerts for people. For example, if they want to create an event that's temporary Can put it in they can use it make it together using tokens and change the text So we want to give them as much flexibility as possible. Of course When we tested this there are many many many edge cases. So as a side note, this has been thoroughly tested in order to avoid Loops inside the flow This is the in an overview with a simple Drupal view with an overview where all the events From our test environment are logged When somebody creates a new action or wants to manage an existing action You get the pop-up or a new page and then you can all the fields that I mentioned earlier You can combine them and save them and it will work Another example is for example Configure that the newly added accounts earn coins whenever their profile is completed. So that's a that's a basic Thing for onboarding to get new Kind of say souls to the website is it's the get to know with the system join the community Complete your profile and get coins. You can use them in the shop So a new user joins the community Complets the profile info and gets rewarded and he can be sent to the shop if you have enough coins, of course A third example, and this is the the the more complex one we can configure counts Coins whenever a member uses a device that resides at the office of an external partner So for example, I have to go on physiotherapy And in my therapy, I have to they have to attach me to a machine for half an hour That data is also stored in the machine From some of the machines that data was also sent to microsoft dynamics We have an api key. You could add it there when you say external event triggered by the api You can also add coins to that and all that information also appears then in the Feet of that user. So this is also something we can configure But we also have to keep in mind that while gamification of many advantages It should be thoughtfully implemented to align with your website's goals and target audience For us for us, it's um, I'm going to go a little bit faster for us It was very important to understand the business logic that we do not over engineer or under engineer something. So we made it between brackets So that is some room to wiggle if needed. So we're not going to do Overengineering of the gamification, but it can be faced in in in later phases So just quickly on gamification for the client was important increased engagement So member status visibility learning and skill development. We can facilitate learning. So it's important that Members of the community learn how to create a block and what are the rules that are attached to it Motivational and goal achievement. We have to incentivize the buttons and the actions This is something I didn't mention but when you create an event a button that is linked to that will get incentivized like Hey, create a block break and a block post and earn 50 coins for example The social interaction most important for them. It's the community. We have to encourage users to invite them to join It's it's inviting. It's sharing reviewing the brand loyalty one. Look what they are doing. Oh, this is great And do stuff there and then differentiation setting apart from competitors and trying to be more appealing than what's on the market But there is more much more This is the overview of the current status of the project Just going to quickly show What it's about and I just highlighted the very only the black spots in there So there is a lot of things we can talk about but that will be for another time So if there are any questions, I have three minutes left. Yes Well, first of all, it's important to know that it's still a Project under development. So we are still in testing phase now with the client with the test audience internally But this for me it all boils down to what the client mostly wants He wanted a community that feeds the community in a way They were tired of creating content for their main site and they were like, okay, wait Let the community create the content But we can moderate them and we can point certain members of the community with a higher member status so they can Enrich or change content that appears on on on the website And we get people to come to the website because they earn something and they have they are incentivized to do more And that was their first of that is their first thing when we go live To to create content. For example, the products in the shop You can write a review on a product. You can share it. You can rate a product And that's the important thing they want to do without having to invest that That much money themselves because As I told before they invest a lot of money in social media presence and they want to Automate it in the future But that's something I would love to talk about the moment we have some data But indeed it's it's monitored. It's something we uh, we're gonna watch Yes, they spend it in the shop For real products, yes Yes, yes Yes Well, it's um the gamification is applied on an action and the action is universal But then you have communities like you said like writing a blog or or creating a A paper or something that that's all that's all possible. But then individually you have your own How can I call it wallet With your coins and these are yours and then you can go to the shop that is attached to your profile Your profile knows geolocation wise you you entered your profile information For example, you're from Belgium. You speak Dutch. You have the be slash anal shop You go there and there you can spend the coins It's not like this that you they can also add a limit to a certain amount So there are no negative values in the shop So there is a lot of thinking but you spend it in your assigned shop Yes No, no, no, no, it's the coins Yeah, furthermore, they can We build in something in the settings of the whole system that They can say a coin is a value or a coin is a percentage So they can play with it, but we told them You can play with it, but it's very dangerous. You need to test it You need to test all test cases so that you're not checking out in the shop that the shop owes you money For example, so yeah, but it's true. It's uh, it's a case. So, uh, yeah But who is saying But they they pay they pay for the products, but the coins give a discount No, no, no, it's a discount. It's a discount value. Yeah, you can add a certain they can when they create in Microsoft Dynamics a product And it's it's synchronized with Drupal commerce in commerce. You can say okay for this product You can add the maximum of That many coins depending on the value of the coins So it's a discount system And not Not for free. No, no, no, no, no. Yeah. Yeah, okay. Yeah, thank you