Transcription
Hey, by the end of this video, you're going to know exactly how you can create a real estate investor qualification and lead booking bot using Closebot V2, or simply known as Closebot.
Right now, for those of you who've never used Closebot before, Closebot V2 is going to be like Closebot version one for you because you've never seen version one. But for those CloseBot users that have used version one, or Closebot classic, are familiar with the old style of prompting and setting objectives for your booking bots or your qualification bots. They have since released their version two product, which is a complete improvement—actually a complete overhaul of the entire bot building structure. It's drag and drop canvas style, just like Zapier or Make.com, which is very nice, even GoHighLevel's workflow builder. There are some nicities that have come here with this new build. Now, there are essentially more actions we can use, but there's also some challenges that come with it. And so, I'm going to go over some of that here in a second.
But, if you're new to the channel, I wanted to welcome you. My name is Justin. I like to create content just like this, showing you how I solve problems in my business. I run a community called Automation Station where currently there are 1.9K, 1,900 members who are here. I give away tons of free resources. As a matter of fact, this build is going to be available for completely free. All you need to do is join for free and then come in here to video announcements and then search for the title or the upload date of this video. If there is a resource available, like a link that I'm going to provide to you so you can just import this bot or a text file, it will be located in that post. All right, enough of that. I want to cover some important fundamentals here that—or not fundamentals—but some things I just want to cover before we move on.
Now, classic versus V2. So, Closebot has introduced some very powerful features. That's the drag and drop builder that I talked about, expanded functionality in the form of actions. They've introduced webhooks so we can now reach out to external systems all within GoHighLevel. We have switch nodes so we can determine intent. We have branching, if statements, true or false. And then we have more custom scenarios. If you're not familiar with Closebot, none of this makes any sense to you. But don't worry, follow the tutorial. You're going to see exactly what I mean. We're going to put some of these things to use. And then there's a conversation node which I'll probably cover in a future video, but that's also a powerful addition.
Now, one of the challenges that having all these actions brings to existing Closebot users is that in the past Closebot users have had to rely on a combination of GoHighLevel workflows and Closebot objectives and maybe multiple bots in order to sort of finagle bot switching or intent switching. Now, a lot of that functionality is inherently included inside of Closebot version 2. So, it might require you to shut off some workflows that you have or maybe modify some workflows that you have inside of GoHighLevel and move some of that functionality into Closebot's native functioning bot builder or agent builder.
Without further ado, let's go into some struggles that I'm currently having. This is just struggles of me using this system. It's brand new for everybody. And so, there are a few key components to the system. You have personas, job flows, providers, and sources. Sounds like, you know, a bunch of words, but we're going to see how they all relate to each other. I'm still getting comfortable with how they all relate to each other. But I think the important thing to note is that a persona plus a job flow equals a bot. Okay? So, a bot's not complete without those two. Providers are like the AI provider. So, OpenAI, Anthropic, DeepSeek, I think Gemini, and Grok, we can use all of those with this system. Now, think of that as like the brain of the bot. It's what's going to be doing the processing and the responding for all the lead engagements. And then we have sources. That's like our sub account inside of GoHighLevel. What is this connected to? What is this actually doing work on behalf of? And in Closebot V2, they now support HubSpot. Not going to cover HubSpot in this tutorial, but I'm going to focus on GoHighLevel sub accounts. I'm also just having some challenges migrating, like I mentioned, legacy workflows that I used to rely on into Closebot V2 functionality. So, as I do this, as I iterate on building these bots, I'll get better and better on sort of weaning off of GoHighLevel workflows because there's actually zero workflows required for this bot to work and it's base standard. But, however, I am going to have a few workflows that work along with my bot and then eventually maybe I can remove those workflows entirely as I get used to it.
Build efficiency. I'm having struggles with build efficiency just because there are so many components: personas, job flows, provider sources. Sometimes I hop around and I don't know where certain settings are just yet, but that'll get better with time. And as I develop a process, as I develop a framework, I'll be sure to share it with you so you get more efficient. And as a matter of fact, I'm giving you the bot for free. So it's probably the most efficient way to do it. You click the link, you import it, you're good to go.
Also, variables. Use of variables is hazy to me right now. I'm not sure where I can use variables, where I cannot use variables. It's actually pretty clear where I can use variables, but some places don't have the easy variable picker. You'll see what I mean here in a second. And so I'm not really sure if those variables are working or not. I have uh reason to believe that in some places they're not working, and so I'll be giving that feedback back to the Closebot team hopefully to improve the product.
And then custom values. I used to rely on custom values pretty heavily and I would use them inside my prompt. But it seems GoHighLevel custom values are not being rendered now and they've since been replaced with what are called source variables or source attributes. And we'll see a little example of that here in this tutorial. So let's go ahead and get going.
First, what I want to do is—I—let me explain the scenario we have going on. So, this is a brand of mine. This is my wholesaling company and fix and flip company out of Fayetteville, North Carolina. And so, I have a landing page here. It's just a WordPress site with a simple form. And every time somebody fills out this form, the bot gets engaged. The bot will reach out to the lead, ask them qualifying questions, and try to book them on a cash offer call. This has been extremely effective. The bot has booked many appointments doing this, sometimes by mistake. I used to push traffic to this website along with Flipping Home Buyers, another brand that I have, but I don't even push traffic to this website anymore, but I do have the bot connected to it. And every once in a while, I get an organic lead. The bot qualifies them and books them. The last two leads to come in got booked and we made offers on those properties. So, it's very powerful. As we transition to V2, I want to make sure that this bot continues to stay alive.
So, here is my V1 bot. Again, if you're new to Closebot, the V1 interface may not make sense, but it's okay. Okay, just know that this is a legacy system and we need to move it over to Closebot V2. Now, Closebot has migrated this stuff for me. I went ahead and deleted it all because I wanted to start from scratch. I wanted to learn and I wanted to teach you guys. Here we go. We're going to go into Closebot and over here in Closebot, you have the sort of this—this agent dashboard here. You would be at the dashboard, but we're in the agent section here. You have personas. Now, in personas, this is essentially the personality of the bot's name, how they're going to respond, and a few other settings that are in here. Now, the nice thing about personas is that you can share personas with different job flows. So, let's say I have, like in this case I have Flipping Home Buyers, which is another brand of mine that uses a persona named Alex as well. And then I have Flipping Fayetteville who uses a persona named Alex here, this little robot. And so, I can actually—don't need to create a new persona. If I wanted to, I would just click create new persona. I would name it and then I would just put something in. I'll click next. And then I can set the settings. How to respond. And I can put the little prompts here and, you know, how to respond is actually located here in the main prompt: How to respond. I literally just copy and paste. But I already have a persona created. I just want to go through these settings so you can see. Frequency of typos, frequency to break up larger messages, delays. I actually don't even put delays or I don't set this to anything. I leave it as zero and it works just fine. The tone of the bot. And then the providers, like Closebot—I'm sorry, like OpenAI and Anthropic. I keep messing that up because I named it Closebot, but it's OpenAI and Anthropic. If I had a new provider, this is where you would add Gemini, DeepSeek, Grok, if you had API keys for those. I'm not going to cover how to get your API keys for these services. There's tons of tutorials and documents on these websites on how to get these API keys, but I already have my providers set. If you needed to add new providers, you would literally just add them here inside of AI providers, and it would be pretty plain and simple.
Now, let me go ahead and go back to my agent builder. All right, so I'm back in my agent builder. I'm going to create a job flow because I already have a persona, like I mentioned. So, let's go ahead and add a new job flow. And we're going to name this Flipping Fayetteville qualification bot. All right, I'm going to leave this in groups. The nice thing about GoHighLevel version two, they've introduced groups. So, I have a production group, a development group, and then just a generic group. You can create groups if you want. I have a development group for everything that I'm developing. And then once I publish it, I'll move it into production. So, I'll go to next. Now, it's asking us to attach the source. Now, we already have a source attached because they've—Closebot has migrated everything from Closebot version one to Closebot version two. So, any sub accounts that I had previously linked, they've automatically included the sub account in there. Now, one thing to look at, and I wanted to point this out, is here inside of the app marketplace and if you go to installed apps for the sub account, you should see—you might see an app here by Closebot. And this app right here, if you look at it, it says managed by the agency. Let me let that load. So, managed by the agency and sub account distribution type. I won't be able to delete this app. And this was a problem, like last week, where this would be installed and then a new app would get installed by Closebot version two. I reached out to Closebot, let them know, and they've since fixed the issue. But you actually can't remove this app right now on your own. You can reach out to GoHighLevel support and remove it, which I probably should do, but it's been working without doing it. So, I'm going to leave it alone right now. But they have a new app and that app is not at the agency level. It's only at the sub account level. So, if you're linking a source for the first time, you should only see one of these and you should only see it say sub account level and you'll be able to uninstall and install it as you see fit. But, let's go ahead and come back in here and I'm going to select the GoHighLevel sub account. You have GoHighLevel. You have Lead Connector, which is the gray label for GoHighLevel. HubSpot and then webhook. We're going to select GoHighLevel. And then I'm just going to come in here and select Flipping Fayetteville sub account. And you notice here we have filters. So these filters are essentially, hey, when will the bot respond? When don't they respond? Standard. I just have an X here for AI off. So if I come over here that we have a bunch of tags. If I wanted it to only respond when cash buyer was selected then I would just select that. Now I'm not going to explain the nuances in here. It's pretty standard just to have AI off, not responding. That's what this little X means. But essentially, actually I will. Anything that's an X or red means any of these tags, if any of these tags are present, it's not going to respond. But if you have greens, like wholesaler and abandoned cart, for example, if you have those, then both of these need to be present in order for it to respond. That's how I understand it. I could be wrong. Correct me if I'm wrong down in the comments, but that's how I understood it in the transition. But right now, I'm just going to leave the AI off tag here. And then channels, we're going to respond on all channels. But by default, if you have nothing selected, it'll be all channels. But let's say you wanted to respond on everything but Instagram. And you—if that's the case, you would just come in here and start selecting all the channels you want for it to respond on. And then just leave Instagram out of it. And that's how you would do that. But we're going to go ahead and respond to all channels because we don't want to miss a lead. Let's go next. And then we're going to start from scratch. So we're going to go ahead and deploy this template.
First thing I'm going to do is hop into settings. We're going to select our persona that we created earlier. So, you watch me sort of create the persona also, although I didn't save, but I would create the persona first. And then you'll select the persona, then go to job information. And now I'm just going to come over here into our old bot. And then I'm going to come in here and copy this and paste it. Now, here it says, "You are a confident investor named Alex at Flipping Fayetteville, which is the best cash home buying company in Fayetteville, North Carolina. The company is super local, trusted in the community." Here is where I don't know if variables actually work here. And this is contact name. So I know Closebot has a native variable named lead name. So if I do @lead_name, I know Closebot will replace that with the actual lead's name. And that's it. Now the reason why I say I don't know if variables work in here is because variables work pretty well in here. And I could tell because if I click contact full name, it pops up in this sort of nice graphical user interface here. But that's fine. We're going to come over here and roll with it. I've also noticed that if I use custom values here or location names here, it just doesn't pop up. So that's why I think variables are not working in here. Closebot team, if that's not actually the case, please let me know and I will correct myself. So here, important business information. Pretty simple. I'm just going to come in here and I'm going to replace these variables with the actual lead contact name. I'm just going to use the lead name at symbol that Closebot references all the time. But if I wanted to use the contact full name, I could. All right. But I'm just going to use lead name here. It's pretty simple. Yep. This is my—Yep. Cool. My partner. Awesome. Awesome. All right. That works. Pretty simple prompt. That's the beautiful thing about Closebot. You don't need to make an incredibly complex prompt. They do most of the prompting for you. You just need to—had to give it—you just need to give it like that additional context so that it knows who you are.
All right. Next thing I'm going to do is add the personality. So, we have the bot voice, which is relaxed, confident, and friendly. And I think that's actually at the persona level. And so I'm just going to go ahead and save and close this. We'll go back to the persona level. Actually, I'm not even going to—I'm going to leave the persona level alone because we did that earlier with Alex in my last bot build. But in the persona level, you had personalities right there at the bottom under how to respond, you can add those personalities in there. It's not incredibly important that you do that, but if you had specific personalities that you wanted, or bot voices that you wanted, you would add that there. This is an old bot, and honestly, these aren't even great bot voices anyway, but it's fine. It's been working.
So, next thing we're going to do is go to objectives. So, we're going to build out these objectives here, but we're going to do so a little bit differently inside of the canvas builder. So, just so that you note, timeline and motivation are all custom fields inside of my GoHighLevel sub account. So, you won't see these standard when you're building, but if you have a sub account and you have these custom fields configured, for example, I go to settings and I come over here to custom fields. You'll see that I have motivation and I have selling timeline as custom fields in here. You—if you don't have them and you're trying to build this same exact bot, you would just have to come in here and add those custom fields and then come over here and refresh your bot so that it can pick them up.
So, first thing we're going to do is add an objective. And the first objective I'm going to add is name. There's a good chance we have the name already, but I'm going to add it here anyway. Let's name it full name. I'll explain why here in a second. So, I'm going to come over here. Look at the—looks like I don't even have name here. I don't know how I made it this far without asking for people's name. It's typically 'cause I have it already 'cause they filled out a form. Come over here. Short description is going to be—that extra prompt is going to be this popup and advanced settings and paste it. Now, skip if not blank. So, what this does is if we already have their name, it's not going to ask that question. It's just going to skip the objective. Okay? So, that's why I said it doesn't matter, but we do want to have it here just in case. It's pretty standard to ask for somebody's name before you start talking to them. And so, I'm going to leave this objective all on its own. I've noticed we can stack objectives. We're going to do that next. But I notice if I stack the full name with other objectives, it tends to skip the full name or jump around and ask for the email first. And I don't like that behavior. And so I'm just going to make sure that the full name gets—gets added first or gets asked first.
Next thing we're going to do is come in here and let's go. Let's see. We need—let's delete this. We need address, name, phone number, and email. I'm going to leave address all on its own. We're going to do email and phone number here. All right. So let's go ahead and add and we'll pop open email. The frustrating part about this is email—like in the old version of Closebot whenever we selected like standard fields these descriptions automatically got filled out. They're not there yet with this one. So I'm sure they will make that change here shortly. But right now, luckily I have a reference and you have a reference now because you have this video, and so you could just copy and paste, but this is exactly how you get the email address. You don't have to say it precisely like this, but this works. Now I'm in this objective. I'm going to add a subobjective, right, just by clicking that plus button up there. And this is going to be the phone number. So, I'm going to come over here. I'm going to name this phone. I'm going to come back and pull the mini description from here. Paste it in the short description here. And then any extra prompts. Looking for a valid phone number. Sounds good. Put it down here. Now, when I save this, you'll see we have two objectives in this one objective. So, the bot has the freedom to ask them however they want. Maybe it'll ask for both at once. Maybe it'll ask for the phone
Number first, the email first. Whatever. It's smart enough to know when to mark these as complete.
Next thing we're going to ask for is the address. So I want the address all on its own. And so let's go to objective. And instead of full address, I'm just going to ask for the street address. Now I've noticed if I ask for the full address, it wants the street address, the city, state, zip code. And makes sense, right? It's asking for the full address. But sometimes I don't really need the full address. I just need the address. And I'd rather have less friction; get the address, maybe get like the city, state, and zip or the zip code, but I don't need it all.
So, what I'm going to do is I'm gonna ask for the street address so that it satisfies the street address objective, but inside of the prompt, I will add this extra prompt right here, which should include, okay? So, it'll give it some leeway. If somebody provides it, cool, but it's not going to be so hard up on it. So, street address. I I asked for the address inside of the form fill anyway, so there's a good chance that I already have the address. But again, even if I don't, it'll be just fine if I have just a street address. Google Maps is pretty awesome right now.
All right, so that covers the first four objectives. There's this interest objective here that I don't necessarily I don't necessarily know if I want to ask this. Yeah, I'm not going to ask this. It's a waste of a question. And if somebody's reaching out to us, they're interested. And if they contact us cold, then naturally the conversation will go to we're flipping home buyers or flipping Fayetteville. And if you're interested in selling your house, let us know. Yes, I don't think we need this. That's a waste. So we're going to leave that alone.
Now timeline, we need the selling timeline. So if I come over here, add the objective. Let's look for timeline or selling timeline. Let's see here. I wish we could type in there, but we can't type in there just yet. This will get better with time, I'm sure. Let's see. Man, this is an old sub account that I have like a bunch of stuff. I actually learned how to use GoHighLevel in this sub account. And this is like back in 2019 is when I first started using this GoHighLevel. And this is probably my first sub account. So, there's a lot of garbage in here. So, forgive me as I look through all these custom fields. Selling timeline. There we go. That's what we wanted. All right. Selling timeline.
And then here I'm going to just say so in in one of Closebot's lives they said to prompt the agent this way. He's saying tell the agent exactly what they want. So I'm going to add some things here. Get at lead names approximate timeline for the sale. And I will just copy this and paste it. And then I'm going to actually add a subobjective here. I did this differently in the flipping home buyers bot, but I'm going to add it as a subobjective here and let's see how it works. It's It's cool to split test. Instead of it being an objective on its own, I'm going to add motivation as a subobjective of selling timeline. Name it motivation. And one unique thing about motivation is we only try to get this twice cuz this can be a sensitive topic to ask somebody like why are you selling your car? Why are you selling your house? Some people get offended when you ask that. So we don't want to like rub salt in the wound of somebody who may be going through a difficult time. So we'll set the max attempts there to two. Okay. And then we will save that.
So now we have our objectives. We have full name, email, phone, street address, selling timeline, and motivation. Now something interesting that I do is once I get all this information, assuming they given me all this information, I mark them as a qualified lead and I notify the team myself and my partner that we have a qualified lead even though they haven't booked yet. If they gave us all this information then I consider them qualified and so before what I used to do is I had that in a GoHighLevel workflow. So if I come here to automations and I look at let's see if I look at flipping Fayetteville goal checking this is a workflow that I would look for motivation and timeline I would make sure that those goals were met and then I would consider them a qualified lead. If they were a mobile home lead I would put push them down this way. If they're single family I push them down this way. I'm gonna simplify this. And essentially what I'm going to do is I'm gonna add a tag inside of Closebot using Closebot version 2's canvas builder and some of their upgraded actions. And anytime that tag is added, then I'll activate this workflow. And then I'm going to simplify this whole thing. So it'll make this workflow pretty easy. And so let's go ahead and do that.
But before we do that, I want to determine if it is actually a qualified lead. If they gave me selling timeline and motivation, then I'll consider it a qualified lead. And I'm going to use this branch action here which is just like a true or false thing. And what's cool is you can use AI to evaluate it. So what I'm going to do is pop this open and I will say qualify lead question mark use AI to power the decision. And then I'll just make a simple description here. If at say at lead name provided us with a valid selling timeline and motivation. So if they provided us with a valid selling timeline and a motivation, then they should go down this true branch here. And at this point, if it's true, then we are going to add a tag called qualified, which is super nice that we can do this from the canvas builder. So I'm going to add a tag named qualified and click save. And so true means it'll add the tag name qualified, which will trigger that workflow once we modify it. And then what happens after this? We're going to try to book them on a calendar. Okay.
So, I'm going to go ahead and close this. I'm going to scroll down here till I find the booking action, which is right here. GHL booking. And I'm actually going to name this offer call. And let's see what the description was here. Book a 15-minute call with our offer specialists. I'm actually going to remove my name because actually my partner takes these now. 15-minute call appointment with our offer specialists. Cool. Calendar name is going to be offer call. And let's find the calendar ID. So, I'm going to come back over here. Look at the calendars. Pop open my calendars. And where do I have it? Flipping Fayetteville walkthrough calendar. No. Cash offer call. Oh, no. Offer call. This is the one that I used to use. Shout out Quinn Nolan when we were working together. New breed cash offer right here. Offer call is the one I'm going to use. I think that's the right one. If not, it's fine. It's a calendar. We'll figure it out. Actually, yeah. Right here. Offer call is what I was using before. So, I'm just going to paste that calendar ID in here and click save. And so, now if they're qualified, we'll add the tag qualified. And then we're going to book a call. But if they're not qualified, we're still going to try to book a call with them. Except we're just not going to add the tag qualified yet. So, even if they don't give us the selling timeline and the motivation, we still want to try to book a call with them because maybe that's information they didn't want to give. I just don't want to notify the team that we have a qualified lead if they failed to give us that information. Cool.
So once we have that set, what I want to do is wait for that bot to save. Looks like we're still saving. It's going a little slow today. And while that's saving, I'm going to come over here into my automations and I'm going to make sure I disable any old motivation, old automations that used to be for Closebot version one. And GoHighLevel has been extremely buggy lately with their workflow builder. I like my folders to show up here. But if you look here, I have this Closebot folder. This is a super old version of Closebot that required all of these workflows. You might be familiar just with that one workflow version if you're a more recent user of Closebot, but this is how it used to be and this is how it was. And this bot was still functional. Shout out to the team for making upgrades and not making it break. But I'm going to go ahead and draft all these because I don't want my bot to activate using version one. So, I'm just going to draft all of My actually AI off tag management. I might actually leave that one because I have a bot kill switch that I use. So I'll leave that one on so we can turn off the bot. All right. What else do we have here? Lead intake. Call routing disqualified. Goalchecking. So goaling. Let's go ahead and modify this really fast. So we're going to delete this trigger. I'm actually going to add a new trigger, which is contact tag. So whenever the qualified tag is added, we are going to trigger this workflow qualified. And what we're going to do is just go straight down. We're going to move all these actions up here. And then I don't know, I no longer need to check if those goals were met because Closebot's doing that for us. And so we also don't need to add the qualified tag anymore because Closebot's doing that for us. So, we're removing workflow actions, creating a more simple workflow, and I'm going to save this. Awesome.
Okay, there's one more thing I'm going to add, and that is I want to add a workflow. Whenever the AI responds, I want to remove them from the no answer follow-up. So, right now, I have a follow-up sequence. If they don't answer, it's just a static sequence where we reach out to them over time, just trying to get them to respond to us. And so now what I'm going to do is I'm actually going to create a new workflow and I'm going to say it's going to be triggered by a tag added AI responded. So if AI responded tag was added then we are going to remove them from the no answer follow-up workflow. Let me name this tool I responded remove from nurture just as an example. remove from workflow another workflow and that workflow is going to be named no answer follow-up. We're going to take them out of that workflow just in case they're in it. If the AI responded, that means that they have responded and they no longer need to be in there because we're going to handle follow-ups inside of Closebot. I'm going to show you that here in a second. All right. Now that we have that in there, we have that published. I actually need to add a workflow step or a an action here because previously Closebot version one used to add that AI responded by default, but they don't do that anymore. So what I'm going to do is I'm going to add a tag here an objective or not an action here that is AI responded. So if this workflow is triggered it means because somebody responded and Closebot's moving them through this workflow. So we're going to add the AI responded tag save. Yeah, there we go. And so that's going to happen first and that'll trigger that workflow to remove them from my no answer nurture sequence.
Now, before I click publish on this bot, what I'm going to do is I'm going to come over to my sources and I'm going to move this over to my other screen just so that I can just maintain some sort of privacy. I'm going to pop back in here in a second. All right. So, I'm here in sources. I'm just I I've filtered down to flipping Fayetteville and I'm going to click on edit sources. And one thing I want to do is make sure that these settings are set because sometimes if you're mapping a new source, these settings won't be set by default. But bot auto shut off on manual reply and graceful goodbye. I want those open. So if I choose to respond to the lead manually, I want the bot to shut off automatically. Sometimes these are turned off by default, which I think should they should be turned on by default, but that's just me. I also don't know that this is the right place for or the best place for these settings because you have to hop around like I had to find these for it took me a while to find these. So next thing we're going to do is go to connected bot. So it looks like we have the flipping Fayetteville qualification bot connected which is good to go. And this actually might be the old version. I'm not sure, but we'll see here in a second. If we had any source variables, then that this is where they'll be configured. I didn't show you source variables. I'll pop back into the job flow later and show you where those get created. But we didn't use any source variables here, but very important. Here's where we enable follow-up. So, let's say somebody responds to the bot. The bot is mid-objective and somebody stops responding. The bot will automatically follow up with that person on a tempo, timing, and tempo that we decide. You don't have to have a workflow for this. This is very powerful. So, what I'm going to do, and this is different from the no answer follow-up. So, the no answer follow-up is, hey, if a lead just came in and they stopped responding, then we they have an answer. So, they're going to go into that static follow-up. But, let's say they did respond and then they just started they ghosted us, then this is when this will kick in. So, let me go ahead and I'm going to respond pretty much every day, but Sunday. And we're going to change this from 9:00 a.m. to 7:00 p.m. I don't know if this is a sub account time or the contacts time. It's probably in the documents somewhere, but I haven't read it. Now, we're going to add the follow-up schedule. So, I'm going to be pretty aggressive here. So, the first follow-up will go out after 30 minutes. Then, it'll go out after 1 hour, and then we're going to do 3 hours. Reason I'm so aggressive is like real estate leads are pretty expensive. If you are a real estate investor or real estate agent, you know what I'm talking about. So, we're going to add six follow-ups. We're going to add 30-minute follow-up, 1-hour follow-up, three-hour follow-up, one day, one day, one day. So, if this is going to happen for every objective. So, let's say they respond to one objective and then they stop responding to you again the next day. Then, this is going to go through this interval. It's pretty annoying. Sure, you can modify this however you see fit. So, I'm going to go ahead and save that. And let's go and check out. Let's see here. I want to make sure everything is turned off in this bot account. Yep. All right. And what I'm going to do is pause the video. I'm going to make sure that I don't have a contact for the example lead that I'm about to submit. And then we're just going to go ahead and test this bot live.
All right. So, we're looking good. What I'm going to do is come over here because before I told you that I would show you where the source variables are set. So, source variables are like custom values where you can create Oh, and look, I see an issue here where I didn't connect these. So, let's go ahead and make sure that's connected. Save. And we actually have to make some changes here in a second. But, so if you come in here, you can look at job flow variables. Let's say I had something like service area. Let's say you wanted to share this job flow with another company. You can just add these values. And let's say like this is a service area. If I click save here, what'll happen is in the source the sources menu when I click edit sources in the variables section, I would be able to add context to this. Okay. But we're not using these right now. So I'm just going to go ahead and click save. Now, one thing I did forget to add is aggression detected. So, if aggression is detected, I just went scrolled down, found that action. I'm going to add the AI off tag. So, if I go over here to modify tags, I could do modify tags AI off. Or I can do stop responding. I'm going to use stop responding. I think that will suffice. Let's see if that works. And then I also want to make sure I have a stop responding node here at the end, which I didn't. And a matter of fact, I can probably use the same stop responding node right here. So, I'll put that down there and we'll connect that. There we go. All right. So, I'm going to export this and provide this to you as a link. But let's go ahead and test it first. I'm going to publish this bot and wait till it gives me a message saying that it's published. So, give me one second. And it looks like the bot has been published. So, what I'm going to do is I'm going to come in here and submit a lead and make sure that this is working. Let me pull up the sub account that I'll be chatting from. All right, John Doe. And here's a phone number. Click submit. This should trigger workflow. It's actually This isn't going to work because I think the previous workflow that I had for lead intake was actually updating a field called bot override in the past. And when that field bot override, yep, it sure is. So that was part of a legacy system. So I'm going to have to modify this here in a second. Let me go ahead and do that now. So I'm just going to say, hey, contact first name. This is Alex from flipping here. I could use variables and I should, but I'm not going to. Flipping Fayetteville. I see you are interested in getting a cash offer on your home. I just have a few questions to ask to get your offer processed. Is that okay? Cool. Just random here. We're going to go ahead and click save that. I'm going to delete this cuz we no longer need that. And save this workflow. And then instead of filling out the form again, all I'm going to do is come over here and search for what phone number did I put in there. Did I say John Doe? John Doe. There you go. I'm just going to process John Doe here. And I should receive a text message saying exactly that. All right. Let's see. Contact. I'm leaving the troubleshooting in here because I think it is it's important. So, let's see. Did the initial SMS go out? Let's see. Enrollment history for John Doe. That just happened at 3:11. Okay, I think I know why. No, allow re-entry was in there. So, I wonder why that didn't actually go through. John Doe at 3:11. John Doe at 3:11. Make sure I didn't get the text message here. I think I know why. This is triggered by Yeah, I'm just going to go ahead and submit the form again. How about that? I'm going to pause the video, delete the contact, and then I'm going to submit the form again. All right, so I went ahead and deleted that contact. Let's go ahead and submit that form again. Let's just say 123 Main Street, and then John Doe phone number. Here we go. Submit the form. Get my cash offer. All right. Now, let's see if we get a text message. Should see that be processed here. There we go. I just got a text message. Let me drag this over so you guys can see what I'm dealing with here. Give me one moment to pull this over. Just trying to protect people's phone numbers and stuff. All right. Where are you? Here we go. Okay. So, we should be able to see this here. I'm in my demo account. Ignore the photo here. I've tested many of bots in here. Hey, John. This is Alex from Flipping Fayetteville. You're interested in cash offer. I'm just going to say yes. And at that point, the bot should respond and a few things should happen. The bot should respond and then we also should have the AI responded tag if it is working exactly as we think it is. So, I'm just going to wait for the bot to respond here and see if that AI responded tag gets added inside of that sub account. So, there you go. It responded. I appreciate your quick reply. What's the best email address? We didn't provide an email address. We just had the phone number, address, and name. So, it's asking for the email address. Now, let's come into here. Let me make sure. Let's see if I
Pull open that contact, John Doe. We should see that John Doe has an AI responded tag. If that action is working correctly, and there it is: AI responded tag. They shouldn't be in any other automations. Perfect. Exactly what we expected.
So, let me come back in here and go back into the sub-account and say, "Yeah, sure. Here's my email address: support.com." And if I wanted this to say something different, the extra prompt, I can tell it why we're asking for the email address. Or I can not ask for the email address at all, honestly. But we like to have it just so that we can add them to a drip campaign. Great. Thanks.
Just curious. Is there something specific going on that you're considering selling your property? So, it's asking for motivation. I'll just say, yeah, we are moving across town. Now, this information should be stored inside of the motivation field. So, I fully expect for it to be—I'll wait till it responds here just to see if we can find it. Again, this sub-account has a ton of custom fields that probably should be deleted, but it is what it is. Let's come over here and look at. So, we have the address, additional info. Cool. So, it didn't add it in here. I wonder where it's at. Motivation. Where else would it be? Let me refresh this one more time. I want to make sure that information is being stored. Additional info. Interesting. I'll troubleshoot that after this: why that contact field is not being stored. Thanks for sharing that.
Do you already have a rough idea of when you like to—Yeah, I want to sell ASAP. So, this information should be getting stored inside of these custom fields, motivation and selling timeline. So, let me come back in here and let's see if I can identify where these fields should be. So, selling timeline. So, it looks like it's in the contact additional info. Okay. And then motivation is also in additional info. So, that should be being stored inside of additional info here. So, I'm curious as to why that's actually not happening. And the reason why I want to make sure—Oh, and I typed that in the wrong—My bad. That's actually going to turn the AI off actually, which is not what we wanted because I responded in the wrong window. Let me go ahead and find my tags here and make sure AI off is not on because we responded manually. Let me hide empty fields just so I can remove this stuff. That actually didn't work. That's that's interesting. I'm gonna go ahead and send that here from the actual right sub-account. Sorry, I got mixed up. But that's curious that it actually didn't work. I'm going to reach out to the support team on that because AI off tag should have been added and should have stopped responding. But maybe it'll do that now. Who knows?
So here you see that it moved to qualified lead. So that tag got added because we provided the timeline and we provided the motivation. We're still having issues with it actually showing up inside of the custom values or the custom fields. So, let's see if I can find motivation. This sub-account has far too many custom fields. Don't re-recommended it. So, here's the motivation. And here, where's the selling timeline? It's not closing timeline. Should be selling timeline. I might have passed right by it. There it is: sell selling time. It's empty. So, I think what's happening here—this is the reason why I'm making these, by the way, because these transitions have not been as smooth as I'd like them to be—and it's exactly what's going to happen. But I think what's happening here is that inside of the app marketplace, what I told you earlier, this legacy app is probably not configured to update fields correctly. So, I might actually have to go in here and delete this app. I might have to reach out to Go HighLevel support and delete this app because what actually needs to be installed here is the Closebot app, which doesn't even show—which is interesting. Yeah, we're going to need to troubleshoot that. I'm going to make a video showing why that happened after, but right now I'm going to I'm going to keep moving on.
So here, thank you for letting me know—we can schedule a 15-minute call as soon as possible. Let's do Tuesday at noon. So, I'm going to see if the appointment booking functionality actually works. Let's come back into—Man, that's upsetting that the custom fields are not being stored. Let's see. Lead intake. I'm just going into the contact this way so I don't show all the contacts' information. Your call with our offer specialist is set for Tuesday, June 3rd at 12. We look forward to helping you with your fast and smooth sale. So, let's see if they actually created an appointment. There we go. We have the appointment for June 3rd, which is Tuesday. Is that Tuesday? That's not Tuesday, June 3rd, is it? I'm going crazy. Yep, it is. That's tomorrow. Funny. Okay. All right. And there it is. So, that got set. And then the opportunity was updated because I have another workflow that does that. Let's make sure we have—Oh, look at this. Selling timeline got updated, but motivation didn't get updated. That's super weird. But it looks like we've got all our tags that we expected. So, that's really weird. Not sure why the motivation didn't get updated. I'm not going to troubleshoot that live right now because I do think it is an app marketplace issue. I'm going to reach out to the Closebot team and give them some feedback on this one and see if we can get that working. But yeah, there we go.
What I'm going to do here for you guys is I'm going to export this bot. By the way, this autosave feature is is pretty cool, but I don't think it works like it's supposed to work cuz I'm publishing the bot and the version hasn't updated, but if I refresh, the version will be updated. The autosave just does what it wants sometimes. But I'm going to export this and I'll provide it inside of the school community in the form of a link so you can go ahead and deploy this for you or one of your clients. If you found this video helpful, please comment, subscribe, and just note this is all new. So I'm going through building it. There's going to be stumbles and fumbles, but I think you'll be experiencing the same thing. So I think it's important for you to see sort of the process. And yeah, till next time. See you in the next video. Peace.