Master AI Voice Agents: Automate Calls with AI and No-Code | Manthan Patel | Skillshare
Search

Playback Speed


1.0x


  • 0.5x
  • 0.75x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 1.75x
  • 2x

Master AI Voice Agents: Automate Calls with AI and No-Code

teacher avatar Manthan Patel, AI Instructor

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Watch this class and thousands more

Get unlimited access to every class
Taught by industry leaders & working professionals
Topics include illustration, design, photography, and more

Lessons in This Class

    • 1.

      Introduction

      1:45

    • 2.

      Building Our First AI Voice Agent

      17:41

    • 3.

      Drafting Detailed Prompts, AI Agent Identity, and Tasks

      10:13

    • 4.

      A Complete Prompt Engineering Guide for AI Voice Agents

      13:56

    • 5.

      Enhancing AI Voice Agents with Knowledge Bases

      4:53

    • 6.

      Efficient Use of Knowledge Bases and Vector Data

      2:22

    • 7.

      Exploring AI Voice Agents: Levels and Applications

      10:21

    • 8.

      Understanding Advanced Functions and Features

      21:52

    • 9.

      Building an AI Appointment Voice Agent from Scratch

      32:33

    • 10.

      Outbound Calling with AI Voice Agents

      33:30

    • 11.

      Automating Phone Calls with AI and No-Code

      6:45

    • 12.

      Mastering Inbound AI Calls: Adding Personalization

      19:57

    • 13.

      Automate and Personalize Calls Instantly with n8n

      12:54

    • 14.

      Appointment Reminder AI Voice Agent with n8n

      16:53

    • 15.

      Using AI Agents for Business Promotion, Upsells, and Sales

      20:30

    • 16.

      Full-Stack Real Estate Multi-Prompt AI Voice Agent

      28:49

    • 17.

      The Perfect Receptionist

      19:58

    • 18.

      Mastering Multi-State Agents: A Step-by-Step Guide

      21:56

    • 19.

      Mastering the Fundamentals of Conversation Flow Agents

      18:38

    • 20.

      Building Conversation Flow Agent from Scratch : Notion + Gmail

      24:49

    • 21.

      Batch Calling

      3:39

    • 22.

      Branding Solution for Agencies

      5:09

    • 23.

      Creating Your Own AI Voice: Easy AI Voice Cloning

      3:33

    • 24.

      Simplify Your Team's Workspace

      1:21

    • 25.

      Class Project

      1:01

    • 26.

      You Made It! Closing Moment

      1:26

  • --
  • Beginner level
  • Intermediate level
  • Advanced level
  • All levels

Community Generated

The level is determined by a majority opinion of students who have reviewed this class. The teacher's recommendation is shown until at least 5 student responses are collected.

11

Students

--

Projects

About This Class

Master AI Voice Agent and Automation Business Communication

Learn to create and implement AI voice agents that transform how businesses handle calls. This hands-on course teaches you the fundamentals of AI voice automation while exploring real-world applications and best practices.

What You'll Learn:

  • Design natural-sounding AI voice conversations
  • Build effective appointment booking systems
  • Create multi-step call handling workflows
  • Set up voice agent integrations with business tools
  • Understand voice cloning and personality design
  • Implement quality monitoring and improvements

You'll Learn These Key Skills:

  • Conversation flow design
  • Voice automation setup
  • Integration planning
  • System optimization
  • Performance tracking
  • Quality assurance

Who Is This Class For? Business professionals, communication specialists, and technology enthusiasts who want to understand and implement AI voice technology in practical, effective ways.

Resources Provided:

  • Conversation design templates
  • System setup guides
  • Best practice examples
  • Implementation strategies
  • Quality check frameworks

Join us to learn the art and science of AI voice communication. You'll develop a solid understanding of how to create effective automated conversation systems that enhance business operations.

Meet Your Teacher

Teacher Profile Image

Manthan Patel

AI Instructor

Teacher

Hi there, I'm Manthan, a seasoned graphic designer and marketer with over 5 years of experience in the field. I'm deeply passionate about design and have a strong commitment to delivering creative solutions that captivate and inspire.

My Journey:

I embarked on my design journey 5 years ago, driven by a desire to turn my creativity into a profession. Since then, I've had the privilege of working with a diverse range of clients, from startups to established brands, helping them communicate their unique message through design.

My Skills:

I specialize in a wide range of design areas, including:

Logo Design: Crafting compelling brand identities that capture the essence of a business. Print Design: Creating eye-catching posters, brochures, and other... See full profile

Level: All Levels

Class Ratings

Expectations Met?
    Exceeded!
  • 0%
  • Yes
  • 0%
  • Somewhat
  • 0%
  • Not really
  • 0%

Why Join Skillshare?

Take award-winning Skillshare Original Classes

Each class has short lessons, hands-on projects

Your membership supports Skillshare teachers

Learn From Anywhere

Take classes on the go with the Skillshare app. Stream or download to watch on the plane, the subway, or wherever you learn best.

Transcripts

1. Introduction: Whether you are business owner, marketer, or someone who want to learn about EI voice assistant, you are at the right place. Let me start by telling you something exciting about this technology. Imagine being able to make hundreds of calls simultaneously with AI voices that sound incredibly human like and managing all the conversations even better than new customer service. You introduce me, I'm ManthanPatel, and I have built my entire agency around this technology. And now I'm pulling back the curtains to show you everything. And when I say everything, I mean it from my very first EI call to thousands of calls per day. To be honest, this is a blue ocean or a blue market. No one knows how to create a fully fledged EI voice assistant to serve their clients or for their own business. That's why you have a great leverage to learn and implement this technology in your business, even before most of the people have heard about it. I'm talking about EI, that sounds so natural that even people on the other side won't even notice that they were talking to EI. They will handle all of the conversation, manage all of the objections, and really book appointment in your calendar while you are sleeping or in Hawaii. If you want to stay ahead of this business world, you are at the right place at the right time. This course, I'm going to share you everything. No fluff, no theory, actionable advice that can really transform your entire journey overnight. Fair enough, though. Once you see what I'm going to show you in this course, there is no going back. You will never look at sales and business communication the same way again. Alright, that's all for this introduction lecture, and I hope to see you in the first lecture. Bye bye, take care. See you there. 2. Building Our First AI Voice Agent: Let us start building our first agent and let us get off the ground. So clicon create an agent. We have three options here. First is single prompt agent, multi prompt agent, and custom LLM. These two are pretty much the same because in custom LLM, all we need to do is add the link in our single prompt agent because custom LLM is single prompt agent only. The only difference is we are bringing our own custom LLM by using the link. We have only two option, fundamentally, which is single prompt agent and multi prompt agent. The difference is in single prompt agent, we are assigning every role to our agent. This type of single prompt agent can be really useful for short calls and straightforward task. But in later lecture, you will see why we are going to use multi call agents because they can accomplish more tasks rather than using single prompt agent. But we need to understand something first for short calls and straightforward task. These type of agents you can build really quickly and deploy right away. But in later section, you will see we are always using multi prompt agent because they are more robust reliable. Again, don't worry. Let us take bible step at a time. Let us start building our first agent, which is single prompt agent. We have two options here. We can start from blank or you can use templates. But as this is our first lecture, I want to start it everything from scratch. So let us start from blank. It will populate with something like this where on the left hand side, we can write our prompt here. These are some of the features that we can assign to our voice agent and on the right hand side, this is a testing where we can see what are the output, what are the response of our Air voice agent. Again, let us take one step at a time. First of all, we need to enter our prompt. Prompt is basically telling our voice agent what to do, what tasks to perform, and what type of response they need to give to our user. Prompt is like a brain of our entire AI voice agent. The more intensive and the more detail your prompt is, the better response of your AI voice agent. I have seen a lot of people just writing music generic prompt and they expect exceptional or grade output. Well, that will be never the case. We have to make sure that we give each and every detail to our EI voice agent as a prompt so that it will perform that specific action or task that we require. Again, don't worry. In the next lecture, we are going to have the entire prompt engineering breakdown for EI voice agent, but as of now, we are keeping it very simple. All guys, let us start writing our first prom and don't worry if you write a prompt and it is not up to the quality, it's not end of the word. We can always refine and we can always reiterate with our prom. Before we get started, I just want to cover one thing. There are basically four type of building block for an effective prompt, so I will divide those. First is we have to give identity to our EA voice agent. For instance, you are a friendly bot, you are a professional bot, you are a customer service bot. We need to make sure that we prompt our AA Voice agent and attach an identity to it. Then we have to give style or guard rails to our A voice agent. For instance, you are a funny chat board. You are a very useful or very kind chat booard, something like that. Third is response guideline. This is very important because we need to give a context to our AIoice agent. What type of response should it give? For example, our Avoice agent should give long response or short response, speak a number in this specific format, speak this currency in this specific format, et cetera, et cetera. So we need to make sure that we provide specific response guideline to our AI voice agent. So we have response guidance or guidelines ast, which is the most important is what type of task or what type of goal we want to achieve from our AVOice agent. For example, ask for the user first name, ask for their email, ask if they have any equation or not at the end of the call. Everything we want to perform, our AVOice agent will be specified under task en role. Role to perform or Role to perform or better say goal. All right, let's summarize the four building block again. The first is we need to attach the identity to our AI Voice agent. What type of style or what type of response should it provide? And lastly, what type of role or task it should perform on the call. Don't worry, guys, we are going to have extensive prompt engineering lecture on Ivoice agent in the next section, but as of now, let us keep it simple. Now you might ask why we are dividing our prompt into four sections and not just writing in one single paragraph. The reason is if we write in one single essay format or paragraph, our EI voice agent will more likely to hallucinate or to give wrong answer. That's why we are dividing into four major building blocks. So let us write our prom first, but we need to take an ideal scenario, right? So let us take an ideal scenario of a dental clinic or dental office. So whenever someone is calling to the dental, our AIVoice agent should answer all the user queries and concerns, answer all the timing details, what days our dental office will be open, something like. Let's start with identity first. We need our AI voice agent to be a friendly bot, so we will write. You are a friendly voice assistant. At whatever dentec clinic you want to use. Whatever name of the dental clinic you want to use, I'm going to use Bright Care, the universal name of denteC Clinics. Bright Smile Dental Care. A dental clinic located at 123 opening hours are nine to five or 9:00 A.M. To 5:00 A.M. Or 9:00 A.M. To 5:00 P.M. And closed on weekends. Sunday and Saturday. I know you guys might be bored out already, but these are the things that we have to write in order to make sure that our response are top notch. And don't worry, you don't have to write this prompt every single time. We are going to use Cha GPT or Cloud, but in the next lecture, I will show you how you can use EI to write our EI prompt. Then next thing is we have to define the system and the guardwels. Why this is very important because let's say we are building our E voice agent for medical use, right? So we have to define the guard wells that don't go beyond your boundary. For example, don't provide any medical suggestion, any medicine suggestion, something like that. So that's why these building blocks are so important. We will define the style of a voice Uh, I'm just writing whatever coming in my mind, so feel free to use your guidelines or your use case. You speak naturally and avoid Let us avoid any medical jargons. Medical jargons or terms. Unless ask, awesome. I ask, explain them simply. And why we are using these hyphens, again, we need to make sure that our prompt is readable by our LLM because our LLM will read in a format of chunk. So for them, it will be like chunk number one, chunk number two, chunk number three, something like that. I don't know what is going on the end of LLM, but our LLM read in a chunk size. So if we are breaking down our chunk into smaller pieces, it will have a better output or better result. Sorry, I'm getting too technical here, but don't worry, you don't have to understand any of it, but it is my duty to give you enough context about this A voice agent. So let us go back to our prompt. We will say, keep your answer or keep your responses friendly, especially when the patient is very worried and frustrated. A something like this. I'm not very special or great at dental clinic. Now, last thing is we have to define the gat wells. We will say, Well, you have enough knowledge because you are so smart, but don't provide additional medical or medicine advice. About dental care, you don't give medical advice or promises for any specific treatment or diagnosis. I don't know what terminology they use in medical field. Awesome. So this is the part of the guardrail, and this is the part of this style. Now, what answer or what type of specific formatting? What type of response should they give back to our user? We will say, we want to keep our voice agent very easy to understand and they should speak in a very easy. Next is response guidance. So we want our a voice agent to be very easy to understand and easy to hear. We will break down any complex instruction into simple easy manner. Any instructions into easy steps. Yeah. We can also say, check that if the user is aligned or if the user understand what our AAVice agent is saying. We will say, like, check that patients understand you. So in between the call or when there is a pause, our AAVoice agent will ask, Are you okay with me or are you? So in between the call, if the user is confused, our AAVoice agent will say, Are you understanding what I'm trying to say or something like that? And lastly, we need to say that guide patients to speak with the dentist for their concerns or problem because our AAOice agent is not expert at giving medical advice. So whenever a user asks, like, should I use this medicine or this? No, our AVOice agents say, none of it, I don't know it. Ask your dentist for your concern or your query. Guide patient to speak with the dentists about this concern. Feel Video two X or 1.5 X the speed of this video. Finally, the task and the goal our EIB was agent should perform. We can say, like, your main job. Or jobs are helping with user query or consents and explaining basic dental procedure, like whenever someone is calling and want to know what is root canal or how to whiten the teeth, how to remove the teeth, just basic explanation only. Just basic explanation only. All right, as well as give care advice like brush twice a day, don't eat or don't drink after 10:00 A.M. As well as our Air agent should give care advice like don't eat after 10:00 P.M. Versus twice a day, something like that, giving care instruction or advice. Lastly, connecting urgent issue with the right staff member or with the dentist. This is the advantage of using A voice agent. For example, our customer or the user want to talk to the real human. Our A voice agent will transfer the call to the assigned number or the assigned staff member. Well, that's it. And congratulations. You have written the first prompt for AA voice agent. And trust me, prompting is everything in your A voice agent. The more detail, the more contexts, the more information you provide to your prompt, the better will be your A voice agent and it's your responses. Don't forget to click on Save otherwise, your prompt won't save and you have to rewrite it again. Let us click on Save and let us discuss other features and option in retail EI. Let us go back to overboard to understand this better. So how does retail EI work? Let us go back to board to understand all of this thing better. How does retail EI work? First thing is we have to select the transcriber. The good news is Retail already has inbuilt or by default transcriber attached to it, you don't have to attach the transcriber, but you do have to attach the LLM or the large language model you want to use. For example, Retail offers GPT and Cloud. GPT is powered by open EA and Cloud is powered by enthropy. As you can see, we have a bunch of options. For example, GPT, realt, mini realtime, Cloud sont, Cloud 3.5 IQ. You feel free to choose your option with your pricing range. You can also see the price attached to it. 0.05/minute, 0.006/minute. So feel free to use whatever is according to your pricing or your budget. And then we have to select the voice. After that, we have to select the voice. So let us go back to retail. The next option is select voice. So we have three options as of now, playHD, 11 labs, and Open AI. We have way many amazing voices, as you can see. So let us play some I really like Victoria. Hi there. I'm Victoria. Your AI companion. Ready to assist you with anything you need to make your day smoother and more efficient. As well as pool Hi, I'm Paola. Here to make your day smoother. What can I do for you? Like, seriously, you cannot distinguish between a real person talking and EA voice. He Mira. Hello, I'm Myra, your voice assistant. Let me know how I can help. Wehmonica. Good day. I'm Monica, your digital assistant. Ready to navigate through challenges and streamline your day. It is biased. I don't speak in this accent. Like, even I'm Indian, but okay. We have Joe. Hi, I'm Joe. Got something on your plate? Tell me what's up, and I'll help sort it out for you. Joe seemed very straightforward and up to the point. I'm Grace, your virtual assistant at your service for all your needs from answering questions to completing tasks. Okay. I really like Victoria, so let us use this voice. Simply we can use voice. Even we can add our custom voice into it. I will show you how you can do that. But as of now, let us use Victoria Awesome. We have Victoria set. And lastly, we can select the language. So as of now, I'm using English India, but feel free to use any language you like or whatever is your preferred language. 3. Drafting Detailed Prompts, AI Agent Identity, and Tasks: That, not to forget, you can adjust the configuration of your LLM and your voice. Click on setting and we have LLM temperature. What is LLM temperature? It is ranging from zero as you can see to one. So zero is on the lower index and one is on the highest index. The main thing to understand in LLM temperature is if you want your response or the AI voice agent to be straight, direct and give answer from the prompt, feel free to use zero or something like 0.1 or 0.2, that maximum. But if you want your AI voice agent to be creative, to give answer out of the box, we can increase the temperature to 0.7, 0.8, and even to one. But make sure that if you are using LLM temperature one, it is more likely to generate creative or answer on its own, and it will not stick to the knowledge base or the prompt. So as of now, let us use our temperature to around 0.1 or 0.2, so that it is not boring as well as it is not getting out of our head. Thereafter, we have structure output. So the answer or the response generated will be in GSN schema. Don't worry about it, let us live as it is. Let us click on Voice setting, the voice model we can select from. So right now we are using 11 lab voice, right? So it will automatically sele turbo Veto, which is the best model available out there. But feel free to use other options as well. For example, if you want a medium quality, but English only, you can use flesh Veto. If you want the highest quality, you can use multilingual multilingual means your Avoice agent will be able to speak in Hindi, Japanese, Gujarati, English, at the same time. So that's the beauty of using a voice agent. It is not limited to English only. You can expand the boundaries. You can make your A voice agent speaking 18 preferred languages. Thereafter, we have voice speed. This name is pretty straightforward. If your response should be fast, feel free to increase it. 1.3 X, 1.4 X, but as of now, let's keep it one to have initial and human like conversation and not robotic. Moving on, we can also adjust the sentiment from our voice. For example, we want to be emotional or we want to be kind and calm. You can also adjust the voice temperature here. So if we decrease it, our voice will be calmer. If we increase it, it will be excited and emotional. So as this is in medical or dental use case, let us use calm and the voice volume. Again, leave it as it is. If you want to increase the voice, feel free to do it. But as of now, let us keep it one and click on sal. So that's pretty much it. We have covered this entire provision. And if you have any question, just let me know in the community and I will get back to you. Thereafter we have something in the bottom call welcome message. Basically, this means that when our A voice agent is calling someone or when someone is calling our A voice agent, what should be the first sentence or first word our A voice agent should speak? Or should it say silent? Should it say simple word or should it say simple sentence? We have to define it here. It has around three options. E initiate, AI begin with a defined begin message, for example, a, how are you doing or how is your day going? EI initiate, AI begins with a dynamic message. Don't worry about dynamic variable as of now. N user initiate EI remains silent until users speak first. So as of now, let us use the last option. Hello, I'm Victoria from Bright Smile Dental Care. How can I help you today? Awesome. Hi, I'm Victoria from Bright Dental Care today. How can I help you? Amazing. Thereafter, we have myd of configurations we can do with our Air voice agent. But as of now, let us not deep dive into it. We will cover each and every detail in the latest section. So let us test our first AAvoye agent that we have built and written prompt for. Suplcontest. Hi, I'm Victoria from Bright Smile Dental Care. How can I help you today? Hi, Victoria. How are you doing? Hi there. I'm doing great. Thank you for asking. How about you? How can I assist you today? Cannot complain. Doing awesome. So I had just one simple question like, my teeth is getting so yellowish. So what are some recommendation that you can provide? I'm so glad to hear you're doing awesome. About your teeth, yellowing can happen for a variety of reasons like drinking coffee, tea or wine, smoking, or even just natural aging. But don't worry, there are a few things you can try to help brighten your smile. One, brush and floss regularly. Make sure you're brushing twice a day for at least 2 minutes and flossing daily. This helps remove surface stains and plaque. Two, use whitening toothpaste. Look for a toothpaste with whitening properties. These can help with surface stains over time. Three, avoid stain causing foods and drinks. Try to limit coffee, tea, red wine, and soda. If you do have them, rinse your mouth with water after. Four, professional cleaning. Regular dental cleanings can remove built up stains and tartar. It's a great way to keep your teeth looking fresh. Five, teeth whitening treatments. If you're looking for a more noticeable change, we offer professional teeth whitening here at Bright Smile Dental Care. It's safe and effective, and we'd be happy to discuss it with you. If you're interested in whitening treatments or have any concerns, ID recommend scheduling an appointment with your dentist to explore the best options for you. But would you like me to help you book a visit? All right. So thank you very much for your response. It was pretty long. So as you can see, the response was massive, and it was saying like, one, do this step, second, do this step, third, do this step. Like new human will talk like that. That's why we have to define that imprompt saying, Don't give answer in bullet points, give them initial and like human like conversation. Yep, that's why testing your agent is so important. We will give answer, not in bullet points. In simple everyday language. Awesome. Let us click on save. But tell me one thing before we test this. Did you like the voice? Did you like the conversation flow, or did you like the response? I think it was pretty good. Don't worry, we will going to have a fully flash A voice agent after adding all of this function, knowledge call settings, bunch of things. But as of now, let us test our agent. Hi, I'm Victoria from Bright Smile Dental Care. How can I help you today? Hey, Victoria, like, I had just one simple question. Like, my teeth is, like, paining me a lot. What should I do? Oh, no, I'm so sorry to hear that your teeth are hurting. Tooth pain can be really uncomfortable. While I can't give you medical advice, I can suggest a few things to help you feel a bit better until you can see a dentist. First, try rinsing your mouth gently with warm salt water. It can help clean the area and ease some discomfort. If they're swelling, you can use a cold compress on your cheek near the painful area to reduce it. Over the counter pain relievers might help, too, but make sure to follow the instructions on the label. Since you're in a lot of pain, I really recommend giving us a call at Bright Smile Dental Care so we can schedule an appointment for you as soon as possible. Tooth pain can sometimes mean there's an issue that needs attention, and our dentist will be able to figure out what's going on and help you feel better. Would you like me to help you set up an appointment, or do you have any other questions about this? Yeah, thank you very much. So did you say, this time, it isn't giving like one, do this, to do this, but it is still giving answer in a long format, and we don't like that. So we will say give concise, short, straightforward. And up to the point answer. Alright, so I hope you got my point on how you can reiterate or how you can prompt your EA voice agent for a specific answer and your response. Hi, I'm Victoria from Bright Smile Dental Care. How can I help you today? Hey, Victoria, I guess I'm having a toothache. Like, what should be the next step? There, I'm sorry to hear about your toothache. Tooth pain can be really uncomfortable. The best next step is to schedule an appointment with us so the dentist can take a closer look and figure out what's causing it. In the meantime, you can try rinsing your mouth with warm salt water to ease any discomfort and take over the counter pain relief if needed. Avoid chewing on that side of your mouth, too. Would you like me to help you book an appointment? No, not as of now. But thank you very much. Have a nice day. Did you say the response was simple, straightforward, concise, and up to the point? And that's the beauty of prompting your AI voice agent as per your preference and your liking. The last call that we made was very natural and it didn't contain any medical jargons as well as Victoria was a friendly voice assistant. Now let us change the welcome message to user initiate. That means that our EI will be silent throughout the time unless the user speak first. So click contest OEI won't speak until a user or until we speak. Hello. Anyone there? Hi there. Yes, I'm here. How can I help you today? Yeah, I'm having a toothache. I'm sorry to hear that you're in pain. Tothaches can be really uncomfortable. It's best to have a dentist take a. The first line, she said, like, I'm very sorry that you are having a toothache. You should be able to hear and feel the sentiment and the emotion that the voice carried. It was not some like robotic voice. It was human like conversation. I hope you're getting what I'm trying to say. It is not a robocall or IVR thing. It is a human like conversation, which is led by EI. So congratulations, guys. You just built your first EI voice agent in retail EI. Now let us discuss all of this thing in the next lecture. I promise we are going to cover all of these functionalities and features in the next lectures, but as of now, let us not overburden ourselves. Just give a tap on your back because you just created your first AA Voice agent. 4. A Complete Prompt Engineering Guide for AI Voice Agents: Of all, it is important to know what is prompt engineering. Prompt engineering is the art of crafting effective instruction. I will repeat crafting effective instructions for our EI agent, and they directly influence the performance and reliability of our agents. This class will teach you how to write clear, concise and actionable prompts that will empower your EI voice agent to maximum. Prompt engineering is very crucial from EI agents because it determines how effectively the EI interprets and responds to the user queries or task. Well crafted prompts guides the EI to produce accurate, relevant and context sensitive outputs. While on the other hand, ten prompts can lead to ambiguity or incorrect results, limiting our EI agents capability. I'm not promising any guarantees here saying that you have to write just one prompt and it will be final touch. No, we always have to reiterate, or we always have to define our entire EI prompt until we find that sweet spot or the success ratio that we are looking. We have divided brains to our prompt into four different sections. The first is design, second is test. Third is refined, and fourth is repeat. Before you start writing your prompt, you should have a wireframe or design of your entire system or entire set of tasks that you want your Avoice agent to do. That's why design part is so important before you start writing your prompts. So when you are designing, start with your initial prompt. Consider specific task, context and the desired outcome you want. Clear and detailed prompts will help AI to understand your needs and requirements. Second part of this process is testing our AI voice agent. We see how they perform and what are the responses, we can easily evaluate if they are meeting our needs and our consideration. By testing, we can easily identify potential gaps in clarity or our structure of the prompt. Now it's time to refine. Based on the results of the test, we can adjust the prom to improve the response. This might involve rewarding your entire prompt, adding more contexts or small minor things that you want your Avose agent to do. Feel free to add it in the prompt. Thing I want to say is there is no final prompt here. We will always repeat by testing, by refining and making further adjustments as needed. All right, I hope you understand the process which was designed, test, refine, and repeat. Now let us come back to our four building block, which were identity, style, response guidance, and task and goals. First of all, identity is but obvious. We need to define a persona or role to our AA voice agent in specific tones for any interaction with our user. Second is style. For example, we want our AA voice agent to be humorous, formal, or consciousness. We can all feed this information under style section. Third building block is again, very important, which is response guidance. We can also specify limits. How many questions our AI agents should ask during the call like one questionnaire time or combine two questions and ask it in one go, something like it. Lastly, we have task and goals. Need to give our AI voice agent objective or the end goals that we want to achieve from it. Why not let us take an example and understand it in much better way? So this time, let us take an example of travel assistant because we have used the tener one so many times. So let us refresh with a new one. First off, we have got what we call identity section. It is pretty simple. We are just telling our AI here, you are travel booking assistant. Know, like when you start a new job, and they tell you what what is your role or what is your job here? This is as simple. Just give identity like, Hey, do this, do that, you are this, you are that. This helps the EA to understand what exactly it is supposed to do. Second, we have style section. Think of it like when you are giving someone tips before they start their first day at a job. You're doing exactly the same here. Saying here that you complete information, but do not tremble. Be professional and polite, but keep it brief because people are listening and not reading. You are operating as voice phone or voice conversation and not a newsletter. Third, we have the response guidance, and it's time to get into the nitty creaty details of our AI voice agent. Like when we are talking about dates, see them clearly. January 15 instead of one 15th. And here's a cool tip. We will tell our EI to only offer three option next. Why? Because imagine someone tell you ten different package options over a phone, your head won't be spinning. Will instantly be confused and your head will be spinning and you will cut the call right over there. Finally, we have the task section. This is basically the step by step guidance for our conversation. Start by saying, Hey, and ask them where they want to go, then find out which place they want to travel and what are they looking for. Check what's available and show them the best options. Pretty straightforward, like following a recipe in order to cook amazing dish. Look, the whole thing here work together like a proper well oil machine. Each part has its purpose, and when they all come together, you get an EI that can handle travel booking smoothly and naturally even better than a human. You might ask why we are doing this, why we are dividing our entire prong into those four basic building blocks, let me tell you why. Because it will make our prompt reusable. Easier to maintain and easier for our LLM or our AR voice agent to understand and comprehend. When writing prompts, it is important to break down the prompts into smaller sections where each section has its own focus like identity, style, guidance, and task and go. This has a couple of added benefits. I will repeat those advantage. The first is our prompt will become reusable. Second is how prompt will be easier to maintain. And the third is it is easier for our L&M to understand. Why reusable? Let's say our prompt is for travel agent, right, and we want to reuse it for dental niche or any niche that you want, all you need to do is change some specific identity, change some specific task. Apart from that, everything else is still the same, so it is reusable. Then it is easier to maintain. So if your prom is not solving some specific problem, we can easily figure out which section is missing or which section has certain gaps that we can solve. Now let us explore some hacks and tips that we can instantly use to level up our AI voice agent responses significantly. I'm in it. The last building block, which was task goals will be the always one, you have to come back, refine and reiterate. The first building blocks were generic and basic, and you can do it on your own or in one shot. But task end goals will be the always one, you have to come back. During a call, if you want your EI agent to follow a specific roadmap or a specific procedure to lead the conversation, I recommend writing the task as steps. This will help LLM or our EIVoice agent understand what to ask at each step and how to proceed. You can have some logic in the steps as well. This will ensure that our EI agent does not pack all the questions in one go. For example, we are asking for first, which is the user's name, then we are asking if the user needs a refund or just a replacement or just want to retrieve information. If the user needs a replacement, transition to replacement. You can see, we are attaching specific tasks and goals, we need to follow improper format and improper sequence. Last, we are just saying that if the user is just retrieving information, ask for the Odin number. Sometimes you might notice our AI voice agent will continue on speaking and will not stop the call. For example, first, it will ask for user's name and then directly, it will shift to the next question, which is ask for refund or replacement. So in order to stop that or in order to prevent that, we can write line like wait for the user response. So we are explicitly mentioning to our A voice agent to first scan the user response and then move to the next steps. Similar in the third and the fourth task, which is wait for the user response. So it will take a stop, it will listen to the user response and then proceed forward. We can tell our EI agent to add a pause or read slowly when speaking number or direct in the prompt. Let me show you how. Although you can adjust the general speed of a a voice agent by changing the voice setting. But if you need your A voice agent to slow down at specific points or specific conversation, you can do it. Like reading phone numbers or reading dates. You can easily add hyphen in between the numbers. For example, the number is two, one, three, four. So it will take pause like this, and it will not just ramble like 2341, 341, two. When we are adding that hyphen, it will take a pause. Two, one, three, four, so that the user on the other side can easily hear and easily can jot down the number. Now, if you want to add long fuzzies, you can do that by adding multiple hyphens between the numbers. Or if you want to speak phone numbers in specific way or specific format, like three, three, three, or plus one, and then country code, and then the number formatting it should speak in a bunch of three numbers, then three, then three. You can easily do that as well in Sprom. Let's suppose when people ask for our phone number, this is our phone number. So we are providing under this guidance section. Speaking the phone number, transfer the format as follows. Input format our entire number into 33 hyphen three should be pronounced like 415 in words. Did you see we are not just typing numbers in the brown. We are converting them to words and letters. Lastly, we are saying do not omit the space around the dash when speaking. The dash here is the hyphen. So as you can remember, the hyphen is all about the pause. So we are telling our AIs agent to take a pause there, which is 415. 82. S M. My phone number is 415-892-3245. Snam. Sure. It's 415892. Test Es isn't if it is following this specific format or not. Like 333. My phone number is 415-892-3245. Can you say that again? Sure. It's 415-892-3245. My phone number is 41. Yeah. Thank you very much. Also, if you want your Air voice agent to use back chiner words like, Okay, uh, I see, you can enable that option as well inside that function column. Now, let's say you want your Air voice agent, it does not give any response. You can easily do that in prompt as well. For example, reply exactly the following. No response needed. So our LLM or response generation will stop right over there. You can also include fallback and error handling inside the prompt. This will ensure that your agent can gracefully handle unexpected user inputs or system manners. For example, you can write if the customer's response is unclear. Ask clarifying question, you ask back. If you encounter any issue, inform the customer politely and ask to repeat. For example, if our Airvoice agent was not able to get the correct email address or the phone number, it would ask the user back rather than strolling the wrong email or wrong phone number in the database. Now, here are some additional hes or tips. It wad as much as possible on your prom. EI is driven by experimenting and iteration. It is not perfect. Trust me, AI is not perfect. Without refining or reiterating on your prompt, you will not get that Air voice agent that you are looking for. So again, iterate as much as possible on your prom. You can also write your prompt in markdown formatting. Did you see our entire code was in markdown formatting? Why? Because markdown formatting is a language of LL. Understand it better rather than just generic and simple English. And if you ask me, markdown formatting is very easy, like, it is very neat, clear and concise and easier for our M to understand and comprehend our action and steps. You can also emotional prompting to your EI Voice agent. Let me give you an example. So instead of saying, tell me a story, you can say, can you tell me a cozy bedtime story that warms and comforting? This will guide our EI to respond to that intended move or intended tone. Not to forget to add voice realization to your AI. See? People like us do not speak fluently. For example, I don't speak fluently. Like, I will say, Oh, uh, uh, uh, sorry, sorry, okay. So you can add those type of specific voice relish to your A voice agent very easily inside your prom. Let me show you how. You can add stuttering, like use repeated latus or sounds I don't know, no, no. Wait wait or wait a second. You can also add hesitation like, Um well you know I was thinking about this, you can also add emotional emphasis like you can use capital letters, explanation marks or multiple of dots to reflect the tone or dramatic pauses. For example, I cannot I cannot just believe it. Or, well, that's all I guess. Congratulations, guys. You are now certified from engineer. You don't have to go anywhere. Don't have to go any other lecture or any other course. You are now if you're watching this lecture, you are certified prompt engineer because you can now speak in the same language with EI or LLMs. This is the bonus gift I want to give you if you are still watching this lecture. So this is an example of the best prompt that we have built, and we are running for our clients as well as inside our agency. So take a look through, what are the building blocks? What are the four sections that we have divided? And what are specific task? What are specific emotional pauses, hyphens and everything that we are using in this prompt? That's all from my side, and I will see you in the next lecture, but I will attach another prompt engineering examples and guides in the resource section. So make sure to check it out. Bye bye. And there goes the balloon, I guess. I cannot see that's why. 5. Enhancing AI Voice Agents with Knowledge Bases: Welcome back, guys. Let us build our EA Voice agent more robust by adding knowledge base. Knowledge base are collection of sources that you want to give your agent access to so that it has more context and knowledge about your situation or your use kiss. Knowledge bases are like vector database that you want to give your agent access to so that it has additional context or additional information to the conversation. Can greatly improve the quality of your response and overall experience, especially in the cases where there are a lot of information available and you want to inject all of them in the prompt, but it is not recommended, and that's why we use knowledge base. By adding your information and data in knowledge base, the agent is more likely to give right and reliable answers. Let's see what are the supported sources that we can add in our knowledge. So click on New Knowledge Base. The first will be web scraping or website content. Let us name our knowledge base as Dental Care. Click on Ed, and you can see the supported sources are website content, documents and custom text snippets. So we can crawl and sync with your website. So let us go to Google. Let's search for Bright Dental Care. I think there will be one. Yep, we found it. Awesome. We can feed in all of this content to our Avoice agent by simply copying this URL and pasting that in our knowledge base. Click on AD website content and click on Save. So it will cite all of the web pages from that domain or from that website. There we go. Within seconds, it has scraped all the web pages from that domain. Let us select all et save this. Even you can autosync web pages every 12 hours. Supported sources are documents. For example, PNG file, PDF file, ORG file, PPT file, XML file, doc file, CSV file, all those files you can easily upload and add those as knowledge base. Lastly, we have custom text nipped where we can add text document or text article manually. We can see dental clinic let us copy all of this content, but this content is already edited in the knowledge base since we have script from URL. All right, so let us save this knowledge base. Just wait for the uploading to be finished, and this is your knowledge base ID. Awesome. We have created our knowledge base. Now it's time to link with our agent. The beauty of knowledge base is we don't have to create knowledge base every single time from every single one of the agents. Simply, we can use this knowledge base for ten agents, for five agents, for 20 agents, whatever you like. Let us go back to agents. Yeah, first of all, let us rename this bright smile Dental Care. Click on Knowledge Base and click on Ed. You will be able to find the knowledge base we just created. Select that. Let us remove this from the prompt because it will mismatch from our knowledge base content. Alright, it's time to test our agent. Hello. How can I help you today? Hi. How are you doing? Who I'm calling to first? Hi there. I'm just a friendly voice assistant here at Bright Smile Dental Care. Ready to help you with any questions or concerns about your dental care. How can I assist you today? Yeah, I'm just curious. Where are you guys Bs from? We're located on Katie Freeway in Houston, Texas. We proudly serve the residents of Houston and the surrounding areas. Let me know if you'd like more details or need help scheduling a visit. Yeah, what's the exit street address? Our exact address is 9,055 Katy Freeway, Suite 308 Houston, Texas 77024. Let me know if you need directions or help with anything else. No, you are good. Thank you very much. I had just one concern. Like, what are the services you guys provide? Thank you. I'm glad I could help. At Bright Smile Dental Care, we offer a range of services, including regular cleanings, fillings, crowns, teeth whitening, braces, dental implants, and more. If you have a specific treatment in mind, let me know, and I can give you a bit more detail or help you schedule an appointment. Yeah, I just want to meet the team or meet the doctor first. That's a great idea. We'd love for you to meet our team and get to know us. You can schedule an initial consultation or visit to discuss your concerns and goals with the dentist. Just give us a call at 713-973-2267, and we'll set it up for you. Let me know if you need help with anything else. Yeah, no, no. Thank you very much. Have a nice day. You're very welcome. Have a wonderful day and feel free to reach out anytime you need. Yet, bye. Take 6. Efficient Use of Knowledge Bases and Vector Data: I hope you understand why shouldn't we try to add all this information in a prompt and use knowledge base instead. For example, if you're trying to add all of this data in the knowledge base, it will get longer and more likely to hallucinate with the response. That's why we should always use knowledge base to add context and provide any additional information to our EIVice agent. When a knowledge base is linked to an agent, the agent will always try to retrieve the information from the knowledge base before responding. So there is no need to change your prompt for it to trigger, as it will be always done automatically for every response generation. Thing to remember is during the creation of knowledge base, it will chunk the sources, embed them, and store them into a vector database. During the call, when the agent is about to respond, it will use the transcript so far, prompt is not included here to find the most relevant chunks from the knowledge base and feed them to LLM as context or memory. Now let me show you the best practices that you always follow in order to create your knowledge base successfully or efficiently. Always always use Markdown format for the sources with clear paragraph so that it is easier to chunk and easier to retrieve by our AI voice agent. Group relevant information together in one chunk, and it will improve the retrieval accuracy significantly. But using knowledge base for your Airboice agent comes with a price. As you can see here, we have an additional charge of 0.00 $5 per minute by adding knowledge base. But don't worry. I have a good news as well. If your agent is using one knowledge base or ten knowledge base, the pricing will be the same. Not to forget adding knowledge base also affect the latency. For example, right now it is around 1,200 to 1,450. Let us remove the knowledge base. Yep, the latency just dropped to 1,100 to 1,250, as well as the pricing has dropped. So latency of 1,100 is around 1.1 second to retrieve the information and to generate the answer and provide that in the form of a voice. Allred, that's all for knowledge. If you have any other question, just let me know and I will be always there to help you. Bye bye. Take care, and I will see you in the next one. 7. Exploring AI Voice Agents: Levels and Applications: Is going to be a fantastic video because we are going to do live calls with our Air voice agent and you will know what are the possibilities or what type of a voice agent we can create. I have divided those into five levels. Level number one, we have customer or general QNE or generale voice agent. Those will be able to answer all the user queries and the user equations. Next, we have appointment handler. These type of Air voice agent will be able to book appointment in our time zone, as well as the person who is speaking on the phone, they will also able to book meeting in their particular time zone. Then we have collect data or lead collector A voice agent. These are, for example, we'll be able to collect the caller name, their email, basically whatever data points that you want to collect or extract out from the call conversation, we are going to do that. Next, we have inbound calls that will add personalization. This is not a general receptionist inbound A voice agent call because I have added personalization. Let's say you have all the contact leads, for example, 100 contact leads in your CRM or in your data. Whenever someone is calling from that particular phone number, our EI Voice agent will know their name, their email address, or whatever data points that you have attached to that particular contact. Well as our a voice agent will be able to retrieve all the past conversation or past call summaries as well. This is the power of a voice agent. Trust me, your receptionist want able to remember the last call that they made with your contact. Lastly, we have the ultimate which is outbound call with relevancy and with personalization. Let me show you. It will call with their first name, it will not speak like, Hey, what is your name? It will speak like, Hey, Mandan how are you doing? I know your goal is weight gain. This is type of outbound calls that we can create. It will extract the data points as well. Do you need a workout plan, as well as it will extract the entire summary of the call. Let us start making those calls. Again, I will summarize when Avoice agent can handle all of these things. Obviously, customer support is very common thing. Well as appointment setter and lead collector. The two good or two best type of A boos agent that we are going to create are inbound calls and outbound calls. Because to summarize, inbound call will contain all of these three, as well as outbound call will contain all of these four. Why's start with inbound call. So let's say I'm calling for the first time, right? So as you see, we don't have any contact in our CRM or in our database. For this example, I'm using Google Sheet because a lot of you guys will be familiar with Google Sheet. So I'm calling my AA Voice agent. In this example, we have selected a niche or we have selected a theme of Jim niche. This is A. How can I help you today? Hi, Alex. How are you? How it's going? Hi there. I'm doing fantastic. Thank you for asking. It's always a great day when I get to help someone with their fitness journey. How about you? What can I assist you with today? Yeah, I'm doing awesome. I'm looking to gain my weight because I have been eating a lot, but still I was not able to gain the weight. That's awesome to hear you're doing well, and it's great that you're focused on your fitness goals. Gaining weight in a healthy way can be a challenge, but with the right workout plan and nutrition, it's absolutely achievable. We can help you with a tailored strength training program and a nutrition plan to support muscle gain. Would you like to book an appointment with one of our fitness consultants to create a personalized plan for you? Yeah, why not? Let us book an appointment. Great. I'd be happy to help you book an appointment. First, could you please tell me your first name? Yeah, it's Manten. Got it. Now, could you please share your email address so we can proceed with booking your appointment? Yeah. It's Manton p037 at the gmail.com. Thank you, Manthan. Just to confirm, your email is Manthanzero 37 at directmail.com, correct? Yeah. Perfect, Manthan. Now, could you share your fitness goal? You mentioned weight gain earlier. Are you focusing on muscle building or is it general weight gain? Yeah, it's general weight gain. Got it, Manthan. Your goal is general weight gain. Let me check the current date and time so we can find the best available slots for your appointment. One moment. Thanks for waiting, Manson. Today is January 3, and the time is 11:17 P.M. Do you have a specific day or time in mind for your appointment or should I check the next available slots for you? Yeah. Let's book meeting. Let's book an appointment on sixth. Let me check the availability for next Monday. Menton for next Monday, January 6, we have the following time slots available 9-10 in the morning, from 1030 in the morning to 430 in the afternoon. Which time works best for you? Let us go for 11:00 A.M. Perfect. Let me book your appointment for Monday January 6 at 11 in the morning. One moment. You appointment is successfully booked for Monday January 6 at 11 in the morning. You're all set, Manthan. If you have any other questions or need further assistance, feel free to let me know. Keep up the great energy. Yeah. Thank you very much. Bye bye. Yeah. Did you see? Now we should call summary as well. Yeah, this is our entire transcript. We have fetched the lead collector, which is our name, our email, our fitness cool, and our phone number. So we have done with the appointment booking. Let's go back to our board. We have done with the customer support, appointment setter and lead collector. Now, for example, whenever I'm calling this phone number or this team again, it will not say hi, who are you? It will say hi Manthan, how are you doing? What is going on with your fitness plan? You mentioned last time it was weight gain. This thing is really crazy. Let us make a call again and it will act as inbound call. This is Alex from GJ. How can I help you today? Hi. Do you know my name? Yes, Manton. I remember you from your previous call about the weight gain program. How can I assist you today? Yeah, I just want to remember the email that I mentioned. Can you repeat the email for? Of course. The email you thank you very much. This is how you can create inbound A voice agent. For example, this is just one single phone number in the CRM or in data. For example, if you have around 10,000, 50,000 customer, it will still able to remember all the conversation, all the personalization, and the particular fitness goal. In this example, I'm going after Jim. That's why bear with me. Now, let us make outbound calls. We are done with all of these four, let us go with outbound calls. For example, you have a list of 10,000, 50,000 people that you want to call, put in into your CRM. In this example, I'm using very simple solution which is Google Sheet, but you can use co high level, you can use a table, everything. I will call with a first name, it will say himnan your goal is weight gain, and this is a status. What will happen is after our EROice agent has called the particular contact, it will change the status to call. It will provide does this particular contact need workout plan or not in the entire summary? All right. Let us start firing those contact list. After it has called for the first contact, it will go for the second one, third one, it won't take a break. Sorry, I won't take a coffee break. Let us fire off this. I should get a call. Nnn caller. Hi, Maton. This is Alex from Git Jim. How can I help you today? Yeah. Hi, Alex. How are you? Hi, I'm Anthon. It's Alex here, but no worries about the mix up. I'm doing great. Thanks for asking. How about you? How can I assist you today? Yeah, I really need a workout plan. That's awesome, Manson. The workout plan is a great step toward achieving your fitness goals. Since you're aiming to gain weight, we can create a personalized plan tailored just for you. Would you like to schedule an appointment with one of our fitness experts to get started? Yeah, yeah, why not? I can continue with the appointment booking, it will book appointment for the next time, but that's not the case. I just want to show you that it will say yes because the prospect said that they need a workout plan and the summary, and you can see the status has been changed to call. Now whenever there will be next number, it will start firing those calls. But as of now, I'm just giving you, for example. All right so these are different type of Avoice agent that we can use in every single one of the use case. For this example, we have used for Jim Nish, but let's say we are looking for insurance company. I insurance company were to sell with a credit card offer, they will have more than 80,000, 90,000 phone numbers sell or need upsell to a certain credit card offer or insurance offer. You can literally use Avoice agent in any particular niche or any particular field. You have to open up your possibilities and explore a bit and you will be able to find way to implement Avoice agent in your business or in your client's business. All right, so that's all for it. We are going to build every single one of these Avoice agent later in this course. I will see you there. 8. Understanding Advanced Functions and Features: Welcome back, guys, let us discuss all the other functionalities in retail EI. So we have function. We have knowledge base that we discover that we covered in the last lecture, speech setting, call, post call, security and Webook settings. So there are a bunch of settings. So let's start one by one. We have functions. Don't worry about functions feature because we are going to cover entire section all about functions, and quite frankly, they are the most important thing in retail EI in order to connect with our meg.com. With our go high level. Still, let us look at some of the inbuilt function in util EI. So we have end call function. So whenever the user or whenever the call is completed and the user is satisfied, our AI voice agent will automatically end the call to minimize the pricing or to minimize the price per minute of our AI voice agent. Then we have call transfer. So let's say our user or the customer on the other side want to talk to actual customer or actual person. So we can use this call transfer function so that our Air voice agent will transfer the call to the specific number that we have given to it. After we have this amazing integration of retail EI with cal.com, where we can check the calendar availability and book appointment in the calendar within this function only. You don't have to go to g.com or G Hilewd or any kind of calendar. By using cal.com, we can easily check the availability in your calendar and even book the appointment in your calendar. Again, it is very important and very easy by using tail EI. This invit feature allows us to make appointment booking AA voicepot within just five to 10 minutes. We are going to cover that as well. Then we have press digit or Iware navigation. Let's say your Avoice agent is calling to some receptionist who has first and Iware menu. So we can guide our AIVoice agent to press digits, for example, one, two, three, and it will navigate by that. Lastly, we have custom functions, which is going to be the most important thing in this entire course. So we are going to thing in much detail. Don't worry about it. I have got your back. But as of now, let us look at custom functions and what are basically functions? Functions are basically the middlemen that connects any external data to our AI voice agent. Let me give you an example. Let's say the user want to know the weather of any particular city, right? So we cannot feed all of this data into a CSV file or knowledge base and give it out to our AI voice agent. Either we cannot do in prompt itself. So that's why we are going to create function that will connect our weather API to our A voice agent on the fly or on the demand or on the Istank. So let's say I'm speaking, I want to know the weather in Mumbai or in Deli. So what our function will do is it will trigger that weather API fetch that information of Mumbai or Del's weather and give it to our AI voice agent. Then our AI voice agent will speak to our user or will speak back to me. I hope this makes sense. Nothing too crazy. We are going to cover everything in much little details in very easy and understandable manner. Don't worry. So first of all, we have to name the function. So let us take an example of weather only, right? Weather function or let's say get weather. Then in description, we will say what we want to achieve by using this function. So in our example, get the weather of particular city or particular state when the user asks. An unpopular he about custom function is make sure your description is very succinct and not like AA type description. Your description should be like one to two sentence, straightforward, simple, and easy to understand why our AI, and why description matters so much in custom function because it will trigger our actual function. Let's say you're not writing sufficient and proper description, our EA won't able to call this function and retrieve the information that we want to get. That's why description is so important. If we are about to write description like, let's say, G whether that's it, our function won't trigger because it won't know when to trigger, but when we are using trigger this function when user asks for a weather of particular city so that our AA has some context to trigger this function. Here, we will add our main.com URL or Goog high level URL. Don't worry about it. Also don't worry about API timeout, and these are parameters, which are yet again optional, but don't worry about it. We are going to use Jet JPT or cloud to come up with GSN schema or these parameters. Let us take an example this is our JSN schema of Ket weather function. Click on example two, which is the city for which the weather is to be fetch. So this is like a parameter or this is like a JCN structure. Again, don't worry, we are going to use EI to write this JS schema for us. Lastly, we have speak during the execution or speak after the execution. So in this example, we need to speak during the execution, right? Because we need this data on the fly or on the demand. So for example, when I'm asking for the weather of any particular city, I need the response right now or during the call. I hope you got my point, what I'm trying to say. For example, if you are enabling this option of speak after execution, this type of option is very useful for analyzing the call result or the call summary because we need the entire call conversation, right? So we are enabling this option of speak after execution. I think I got too technical here. So let us go back and let us explore another function it is. Don't worry about functions. We are going to have entire section about it. Then we have speech setting. We can enable the background noise. For example, right now, by default, it will be none, but if you want to set it of a coffee shop or office, retail A offer this solution as well. So we have coffee shop, convention hall, summer outdoors, mountain outdoors, call center. So let us use a coffee shop or convention hall. Yeah. You can also adjust the background sound volume. Let us keep it high and let us test with our agent. Hello. How can I help you today? Yeah, how are you? I'm doing great. Thank you for asking. How about you? How can I assist you today? Yeah. Can you hear the, like, background noise of a call convention? Let us test with coffee shop. Hello. How can I help you today? Yeah. Can I get a coffee? Oh, I wish I could serve coffee, but I'm here to help with your dental care needs. Let me know how I can assist you. Yeah. By using this type of background noise, we are making impression of actual human talking to the call. Next thing is responsiveness, and the name suggests that, how fast or how slow should our EI boys agent respond when the user has stopped talking? And, to be honest, this is very important thing because in normal conversation, people are more likely to think aloud and speak after some time. Like, I'm speaking one sentence. I will take a pause for 1 second or two second to think, and then I will continue with my second sentence. Here, I don't want AI to interrupt my thinking or interrupt when I'm talking. That's why it is very important. So make sure that whenever you are testing your AI voice agent, feel free to play around with this responsiveness. In our agency, we usually keep the responsiveness around 0.4 or 0.3 so that it does not bother the user talking on the phone. Have an interruption sensitivity, control how sensitively EI should interrupt by the human speech. We have all been here. So whenever we are talking to EI voice agent and thinking something, it will speak fastly or it will speak very promptly. We don't want that. We don't want to be interrupted by EI. So make sure that the interruption sensitivity. Here, the thing is there is no perfect number or no perfect point. You have to always find a sweet spot for ICP or idle customer profile. But again, we want the interruption because we don't want our user calling our A voice agent and getting interrupted way too many times. Otherwise, they will get frustrated and they will know that they are talking to EI and not human. Already, I think these two options are very sensitive with AI voice agent. So make sure that you are always testing out before shipping it into real live Avoice agent. Thereafter, we have back channeling. For instance, when you are talking to AI voice agent, it will say, like, Yeah, Okay, lty. Uh huh. Yeah, yeah, I can see that something like that. So make channeling noise or back channeling phrases so that it sounds more human and nature. We always enable this function, so it will say, yeah, uh huh, during the conversation when the user is talking with our AI voice agent. You can also set the frequency of back channel and you want to speak those type of words very frequently or sometimes, one or two times, feel free to lower the bar or higher the bar as per your convenience. You can even specify the words or phrases that you want to use for B channel. Let us go with Mm hmm. Then enter comma and we can say something like, yeah, Oh, I'm just coming up with the words, but feel free to use as many words that you want to use for bad channel. Next thing we have is usted keywords. So let us take example of our dental care, right? So there are some vocabularies. There are some phrases or words that you want to often use in your conversation. You can enter in Musted keywords, and it will more likely to use those words in the conversation. For instance, toothache, remedy. I don't know nothing about dental care, but I hope you got my Whatever keywords or whatever words that you want to emphasize more on, feel free to edit here. Moving on, we have speech normalization. For example, if your EI voice agent is more likely to involve with numbers or dates, you have to enable this option. For example, I will give you an example. Let's say if you want to say, let's say if you want your EI to say, call me my number, this on specific date for this payment. So you can see there are way too many numbers, and if you don't enable this option, it is not likely to speak like a human. So what it will do is if you enable this option, it will convert into call my number. And then it will instead of numbers, it will convert it into text. So what it will do is it will convert number into text, something like this, 2137 on fifth of July 2024 and for $24.12 payment. These are some of the gimmicks or hex that you can use in order to make your AA voice agent sound more human like. But by using this, it is more likely to increase the latency. Here you can see the latency is around 4.4 seconds. So let us disable this speech normalization. You can see it decrease the latency by 0.1 second. Then feel free to play around with the responsiveness and interruption sensitivity because if you lower down the responsiveness, the latency will increase quite a bit. So find the sweet spot that suits you. Next, we have transcript formatting. This is actually very important in post call analysis or when the call conversation is completed. Let's say when our AI voice agent is picking up phone number. Let me show you an example. AI voice agent will say phone number. One, two, three, 4567 890. This is the phone number that our AIvoice agent is referring to. But in transcription or in post call analysis, when the call is completed and our Air voice agent is generating the call summary or the call transcript, it will convert the phone number into time spam. Let me show you what I'm talking about. It will convert it into this format, which is the time spam format. So we don't want this to happen because in call sily on transcription, it will output incorrect or wrong data. Therefore, disabled to ask in formatting. If you want your AA Voice agent, prevent this error of formatting phone numbers as time spam. I hope you can understand this because this is the easiest way I can explain it to you. Not to forget about this title with each and every single of the options. This utter will display the latency that will increase when you enable this option. So if you hover over to this, this setting will incur 300 to 500 milliseconds latency. Its unable this and you can see 300 milliseconds increased. Similar for speech normalization, keywords, responsiveness, yeah. Then we have reminder message frequency. This options allow you to control how much time EI should send the reminder message. For example, if the user is not talking to our Avoice agent, it will send a response message or it will speak a response message. For example, Hey, are you there or hey, can I assist you? And you can control this as well. For example, you want to speak it three times during the conversation, and how long should Avoice agent wait until to speak this responsive message. For example, 15 seconds after 15 seconds, if the user is not speaking anything, it will say the response message back. All right, so feel free to play around with this option. Then we have pronunciation. For example, AI or artificial intelligence is pronounced something different in specific word on in specific word formatting. So feel free to play around with pronunciation as well. For example, the word that I'm referring is EI, and how should our EIOs agent speak that EI word which is AI. All right, I hope this makes sense. We have thereafter call settings. First thing is voicemail detection. Again, very important. If you want to hang up or leave a voice note or voicemail, if a voicemail is detected, animal this option. So for instance, if a voicemail is detected, you want to hang up instantly and not leave any voicemail. But if you do want to leave a voicemail, feel free to add the message here. Hey, please call me back whenever you are available. I want to remind you of the appointment that we book, something like that. Thereafter, we have voicemail detection duration. So how long should our Air voice agent should stay until the voicemail is detective? Feel free to play around with this trigger as well. You can also end the call when no one is picking on the call. For example, if the user is not on the phone and your Air voice agent will continue to stay there, it will increase your pricing or your costing. Therefore, our user is not talking more than 1 minute, it will automatically end the call to reduce our costing. Again, very important thing. As well as you can set the max call duration. For our example, we generally don't set more than 10 minutes because it will more likely to increase our costing. We don't want our call to be going on, let's say, for 30 minutes, whenever because eventually we will run out of the money. So feel free to adjust the call duration as per your situation or your use case. Lastly, we have how long should our AI voice agent pause before speaking the first word? For example, we have enabled this option, right? So our AI will initiate the conversation or AI will speak the first word. So how long should our AI wait? For example, 2 seconds before we start talking or 1 second. We leave it as default, not an important thing here. Then we have pose call analysis. In my perspective, again, a very important or vital thing. For example, if you want to retrieve the name of the user, their email, their address, we can add the data type, let's say, caller name get the caller or user name from the conversation. So whenever I'm talking to my Air voice agent, and if I'm speaking my name like Manten, it will retrieve that information in post call summary or post call analysis. You can select multiple data types like selector, Boolean or number. For example, if you want to retrieve the Pincode, we can use number. For example, if you want to speak in yes and no, we can use Boolean, and if you want to select multiple of information or multi boox checklist, we can use Selector. We are going to look into post call analysis in the next lectures, so don't worry about it. We have then security settings if you want to opt out from sensitive data storage or if you are HIP or if you are HIPA compliances, you can enable this option, and retail won't store any of your data. Lastly, we have fallback voice ID. So what does this mean? For example, we have selected voice of 11 labs Victort. So for any reason, if 11 lab is not up or it is down, it will select another voice to continue the conversation. So it will select from playHD or Open AI. So let me show you we have selected Victoria from 11 labs. So for whatever reason if 11 lab is not working, it will automatically transfer to the specific voice ID that we have selected. It will be from open A and PHD. So let us select a particular voice ID. You will see it has automatically removed 11 labs, and we are only option to select from playHD or open A. You can see how many options we have covered and how many functionalities does retail AI provide? So that your AI voice agent is a fully functional end product. Finally, finally, finally, we have Webbook settings. So in Webook settings, we have two options. First is inbound call Webook URL, and the second is Agent level Webook URL. So what is the difference between both of them? I will explain. I have created in Google Share as an example to explain to you about inbound call Webook. For instance, if we add any Webbook here, it will retrieve all the dynamic variables whenever we are calling our Avoice agent. Let's say you have set your A Voice agent is an inbound call assistant, right? Let us take an example of entes tone. All it makes sense. So whenever someone is calling the dentist, if that specific number is already being stored in your database or in your Google Sheet a table Hb spot, it will retive extra information as well. For example, the name of the user colleague in the company or whatever data points that you have added in your CRM. It will give response or treat with more personalization like, Hey ManthanOH are you going? How things are going influx fortify so that it is not calling someone for the first time. It has actually the dynamic variables so that it can use in the conversation. Again, I think if you are going to look into dynamic variables into WebookURL later on. For agent level Webook RN, we want to sign information that is happening live on the call to external platform likem.com. Let us take an example. If you are having a banking system and you have all the account numbers and their account credit card details, as well as the account balance. I'm calling Avoice Agent and I'm saying, Hi, I'm Manthan and I want to know my account state. My account balance. So what our AI agent will do is by using this URL, it will get or it will fetch the information from our third party app. For example, by using men.com or go high level, we are connecting them with our third party application. So it will get the information or get the account balance by using men.com or by using this agent level webbook and then it will feed it back to our Avoice agent. And our AIoice agent will say, Manthan, you have zero money in your bank account. I'm just joking. I hope you got my point. Again, again, again, we are going to cover everything in much detail. Don't get confused right now. We are going to cover with real life examples, and we are going to build it from scratch. Alright, I hope you understand all of these functionalities in much detail. And if you are confused at any point, just please let me know or Ivan the video and watch it again. But if you are confused about functions and webbook settings, don't worry about it. I know it is not very easy to understand at first, but don't worry about it. We are going to have entire sections and sections about functions and webooksettings. And not to forget, play around with all of these settings to find your sweet spot for your Air voice agent. So that's all for this lecture, and I will see you in the next one. 9. Building an AI Appointment Voice Agent from Scratch: Welcome back, everyone, and this lecture will be the ultimate lecture of this entire course. So make sure that you grab yourself a coffee because it is going to be a long one. You might ask why. Well, to answer that question, we are going to build an entire new Air voice agent where we are going to write our prompt by using hetGPT or Cloud. Then we are going to look at the functions. As you might recall, we have a bunch of functions here, like check calendar availability, book appointment, custom functions, as well as we have post call analysis. So we are going to cover this thing in this entire lecture, and this is going to be a raw one. I'm not going to edit anything so that you get familiarized with the entire process of building a voice agent that is ready to ship and launch. All right, so let's dip into it. First of all, let us start with a new agent. Right now we are going to look into single prompt agent. From next section ons, we are going to create multi prompt agent. But as of now, we need to get your fundamental clears. So we are going to start with blank. So let us first of all, decide our ideal scenario. Let's create our Air voice agent for a gym or fitness center, right? Yeah, that's a pretty good one. We have our entire building blocks, as well as all the prompting hes that we have discussed in the last lecture. So what I did was I have compiled in notion Doc or a PDF file, and I will be providing that in the resource section. So make sure to check it out. This is the file that I'm talking about. It includes all the general principles, all the building blocks and every single prompt or every single additional tip that we have covered. So what you will do is you will just go to this resource section and download this as a PDF file, right? And this information, we will feed into our anthropic Cloud or HGPT. In this lecture in this class, I'm going to use Cloud because I love it, but feel free to use HGPT, perplexity, AI, Cloud, any LLM you like. Awesome. So, let us go back to our retail. Let us consider our Jim assistant. We are going to build a Jim voice assistant. They will obviously answer all the user queries and concerns. Apart from that, it will check for availability in the calendar, and it will book the appointment if the user want to come to To gm. Alright, so that's the scenario or there's a thing that we are going to achieve from our AI voice assistant. So let us starting. First of all, we have the prompt, right? So in order to create that prompt, we cannot always sit down and write this entire prompt. So that's why we are going to use AI or Enthropic Cloud to write entire prompt for us. So let us go to Cloud. Hi, let's start. I'm building an EI voice assistant for a gymnasi or a fitness center. I want you to write a prompt and I will provide all the information on how to write effective prompt for training EI voice assistant to follow all the specific task. The goal or the entire task of my AI voice assistant will be obviously to answer all the user questions and queries in a polite and friendly manner. Apart from that, I want my AA voice assistant to check for the availability in my calendar, and if the user want to book an appointment or want to schedule a call or want to come to the gym, then book the appointment. So I want my A voice assistant to first of all, address all the queries and concerns if the user have. Then if the user want to come at the gym, first of all, check for the availability. Third is if it is available, then book the appointment. First of all, you need to take the user's first name. We need the email address in order to book the appointment, and we need what things they want? Are they looking for weight gain or weight loss? Yeah, this thing, I guess it will be perfect. So if you proceed to that step, which is if the user want to book the appointment, please ask this details before booking the appointment. And then if there is availability, book the appointment. But if there is not availability or there are already appointments in the calendar, just tell the user, please look at alternative slot because that one is booked or please find another slot in the calendar. Alright, so here is the scenario that I want you to create a prompt for it. Also, I will provide a prompt guide or some of the prompt best practices so that you can also refer to those, and we are dividing our entire prompt into four building blocks. The first is identity, second is style. Third is response guidance, and the fourth is task and goals. So this will be our prompt will be built on. And again, I'm building a prompt for a gym or a fitness center. I want my AI assistant to be professional, polite, and have some knowledge about gymnas or workout plans or fitness, cool, something like that. I want my Air voice assistant to be very energetic, very helpful, and more sort of kind and humble. Yeah, so just create me a prompt for it, and I know it will be not the final prompt, but just give me the first draft of what do you think will be the prompt for us. All right, so you can enable this option of voice because if you are going to type this entire thing, I know you won't type all of this information. And what I have seen is if you talk with AI in a human way, it will also generate response in a much better way. So as I'm talking and as I am brainstorming what is going on my mind and I'm telling Claude or EI, it will perform much better than me just typing everything. And to be honest, if you're going to type all of this information, it will take more than 5 minutes and you won't even type. I know. Some of you might just give this much of context or this much of knowledge to Claude. And our enthropy cloud will not able to get that response that we are looking for. So enable this option, I will show you how you can enable this. So open your system settings. I know I'm getting off board here. Search for keyboard shortcuts and press function key twice to start the dictation. Unable this option. Yeah, that's it. I don't know what is the shortcut for Windows computer because I'm right now using Mg, so feel free to wander around. Make sure to attach that prompt guide that I will be providing in the resource section so that our cloud has more contexts and more information on how to create a perfect prompt. Sorry, let us give it a go. Okay. This time, let us use a male voice, Alex. Let us also name our gym. The first thing I want to say with Claude is give me in Markdown format because our retail LLM or any LLM will understand much better in Markdown. I will say, give me in Markdown format. Awesome. So let us have it to go the IDnity. You are enthusiastic, knowledgeable, virtual fitness. First of all, we need to change the name of the Wellness Center. Yeah, the first building block style, energetic, positive, professional, yet warm approach. Use fitness appropriate language. Yeah. This is the one that I'm looking for. And if we were to write this entire prompt on our own, it will take entire day. That's why we are leveraging the power of AI. So I think this style is pretty good. And to be honest, it is not our final prompt. Don't worry. If we need to make any adjustments or changes, we can always come back to Claude and say, Hey, do this, do this, and don't do this. So we have our response guidance. Yeah, present time slot in a clear spoken format. 3:30 P.M. We need to also give it a definite time like we are only open on weekdays and not on weekends, and we only work 9-5 or nine to seven. Yep. Task and goals Yeah, so as you can see, availability management, check calendar availability. I slot is available, complete booking and send confirmation. So we are not sending them any confirmation by our own. Since we will be using cal.com or Google Calendar, it will automatically send that email address. And if slot unavailable, offer alternative time. Or some error handling, it is also added that this will be like sort of conversation flow special interest and voice and timing control everything. So let us give it a go. Let us copy this. And paste it in our retail. Click on Save and don't worry about it. This is not our final prompt. Feedfe Jim is okay. Let us ing the voice first. Greetings. I'm Amritanshu. Your AI curator. Cra Hi, I'm Andrew. Your sturdy AI support shouldering. Hello there. I'm Anthony. You Hey, I'm your virtual Hey, I'm your virtual assistant from RetelliI here to help you handle all the calls. Yeah. Let's use Jason. The model that we are going to use is HGPTFo and the English will be in Indian because I'm Indian and my accent will be Indian as well. Now let us cover the part of functions. As you can see, we have done with our initial prompt or the first draft, it is not the final. Let us see the function rule. First of all, let us add the end call or transfer call function. So we have the name of the function, and let us give it a description. End the call if all the user query are answered, click on save, so it will end the call and not continuously continuing the call. Otherwise, your pricing will increase. Let us transfer the call as well. So when the user is angry or request a human agent, transfer to call the human agent. So it will transfer to this number. Feel free to add your personal number or your customer service Ap. And then we have the type. So what is cold transfer and what is warm transfer? Let us understand it. So in cold transfer, it will directly transfer to our human or to our customer service ap. Let's say the user don't want to talk with AI voice assistant and it will transfer to real human. To use some context or to give call summary of what happened between our user, as well as our AI voice agent or what they talk, we need to give that information or summary to the real human. We will use Word transfer. So AI will provide a debrief to the next agent after transferring the call, and we can also use displayed phone number, Transfer's phone number or retails agent phone number. All, feel free to add your number here lcceer. Yeah, it is that easy to create these type of functions. Then let us add the function of check calendar availability. So as you know, retail EI is the only platform that has inbuilt calendar booking platform. That's why we love using retail EI inside our agency because we don't have to create crazy automation in go high level ormgdt com in order to just create simple appointment booking chat booard. We can easily do that inside this prompt and by using custom functions in retail EI. So we are going to use that as well as we are going to use another function, which is book on the appointment. So it will first check the availability inside our cal.com and book the appointment if it is available inside the current.com. So let us go to cal.com. Cal.com, if you haven't heard about it, it is similar like Google calendar or Calendly. So log in or sign up with cl.com account. Yeah, we are going to do it from scratch, so don't worry. Before we start building our EI voice agent for appointment booking, we need to make sure that our AIVoice agent or LLM knows the current date and time. You might ask why? Because they are trained on hat GPT or AnthropicCloud model, and they are not up to date or they are not for exact this moment. That's why we have to give our AIVoice agent, current date and time dynamic or custom function. So let us test this this is Alex from Fit Life Gym Wellness Center. How can I help you today? Hi, Alex. I hope you're doing great. Thank you. I'm doing fantastic, and I hope you are, too. How can I assist you today? Are you looking to book an appointment, or do you have questions about our gym and services? Yeah, I just had a quin question. Like, what is the current What is today's date? Today's date is October 31, 2023. Is there anything else I can help? Did you notice that it mentioned October 31, 2023? Well, why is that? Because Jet GPT or Anthropilod was last trained on that specific date. That's why we have to give current date and time to our LLM or voice agent so that it knows how to book an appointment on the specific date. And don't worry, it is nothing too crazy, nothing rocket science. Retail AI has this inbuilt function or inbuilt dynamic variable of current time. It is very easy to do. All you have to do is write single line, get the current date and time from this variable. Now, you will learn something new. In order to create a variable, we have to use double Cali brackets and we have to end with double Cali brackets. Simply type current underscore time. Let us save this. And now let us test our EA voice agent again. Hi. Hi there. This is Alex from Fit Lie Jim Wellness Center. How can I help you today? Yeah, can you tell me today's of course. Today is Wednesday, January 1, 2025. Is there anything else I can assist you with? Yeah, thank you very much. Yeah, today is first January, and I'm shooting on the first day. So as you can see, by doing this, current detain time, it will address today's detent time. But mind that this current detain time that retail EI is built on American Time Zone or New York Time Zone. Let's say I'm right now based in India or ISD. So my time zone will be different. So we have to specify that in the prompt as well. Hi. Hi. This is Alex from Fit Life Gym Wellness Center. How can I help you today? Yeah. What is time right now? The current time in your time a zone, Indian Standard Time, EST is Thursday, January 2, 2025 at 4:05 A.M. How can I assist you with your fitness goals today? Time. So it's around, like 4:00 A.M. Thursday January 2. Can you tell me today's date in time? Hi. This is Alex from Fit Life Gam Wellness Center. How can I help you today? Yeah, can you tell me today's date in time? Sure. The current date and time in Indian standard Time, ST's Thursday January 2, 2025 at 4:13 A.M. How else can I assist you today? Yeah, thank you very much, Alex. I will see you later. Alright, so this is how you convert current time or by default time of retail EI, which is New York's American Time Zone into your specific time zone. Now it's time to build our appointment booking voice assistant. First of all, we need to check if there is availability or not. We don't want to randomly book appointment anywhere. Feet Life gym is open on weekdays only not weekends. If someone is calling to book an appointment on Saturday, Sunday, it will check there, and it will say no, we are not open on weekends. Be as specific as you like in your prompts, and you will have that result or output. And we are open from and mention your time zone here. Let us click S and let us add our first function of check availability. And it is integrated with cal.com. Trust me, it is very hard to even create appointment booking chatboard using another platforms. But by using retail, we can easily build our calendar or our appointment booking chat booard integrated by cal.com. So the name of the function is check calendar avability. Description is when the user asks for the avaibility, check the calendar and provide available slots. We need to add our API key from al.com and event ID. So let us go to al.com. Let us create new event so I want to start it from scratch. Fit Life, gym appointment, gym tour. Let us set the duration for 30 minutes. Awesome. Click on Continue. Now, in order to get that event ID or event type, you will be able to find it here. So whatever the number might be, this will be your event type. Copy that, list it here and to get your API key, click on settings. Click on API keys. Yeah, so there is no APIKey here. Let us create a new one. We will say retail, we don't want to expire anytime sooner. We can save copy this API key and paste it here. And we need to mention our time zone. So if you are confused which time zone you belong to, simply go to Worlds Time Zone or Worlds Time Zone API. Go to list of all time zone, and the first link will be Wikipedia. So find your time zone from here. My time zone is Asia Kolkata. That's it. That's all you need to do. Make sure you get your EPI key and event ID. That's it. In event, the time zone is optional, but still we are adding the time zone. Let us click on Sa. Again, make sure that the availability is similar to what you are looking, which is nine to five. And as you can see, the time zone will be automatically fetch from cal.com. So let us have at least preview of it. Yeah, awesome. Let us change the welcome message first. Let us test our agent now. Hi, I want to Hi. This is Alex from Fit Life Gym. How can I help you today? Yeah, hi, Alex. I want to book an appointment. I just want to visit the gym. Great. I'd be happy to help you schedule an appointment to visit the gym. First, could you please tell me your first name? Yeah, can you check the availability first? Sure. Let me check the availability for you. Could you let me know which day and time you'd prefer to visit? Our gym is open on weekdays from 9:00 A.M. To 5:00 P.M. IST. Yeah, let's do tomorrow. Got it. Let me check the availability for tomorrow, which is Thursday January 2, 2025, between 9:00 A.M. And 5:00 P.M. IST. One moment. Good news. We have availability tomorrow, Thursday, January 2, 2025, between 9:00 A.M. And 5:00 P.M. IceT. Awesome. We have configured our check Availability function, it is checking the avability available in the calendar, and it is getting back that information. So now it's time to book the appointment in our calendar. So let us add that function. When the user asks to book an appointment, book it on the calendar. Again, provide our APA key and your time zone. Click on Save Now feel free to add the knowledge base, but I'm not doing in this lecture. Otherwise, it will make this lecture very lengthy. It is configure other option as well. We don't want any background music. We don't want even channeling. Now we do need to get or retrieve information in post call analysis. For example, we need to get the name of the customer, their email address, and we want to store it in our database. You can easily do that by adding in post call analysis. So let us click on Add. So since we are getting the name of the user or getting the name of our customer, we will select text. We will say user name. Description, make sure you are adding sufficient contexts or knowledge so that our NLM will understand what to retrieve or what to get out of the post call analysis. Click on Save. Yeah, it is that simple to use post call analysis. Similar goes for users email. Lastly, we need to get the fit next context or fitness goal. We can use selected for that because there might be multiple choice. For example, get in shape to gain weight, and we will add the choices here. The first choice could be weight gain, weight loss to stay fit. Click on S yeah. So this is how you can add or this is how you can get the information out of the call. Feel free to play around with security setting as well. Don't worry about webbook settings. We are going to cover that in the next sections. Awesome. So we configure our book appointment, and now we have like custom function and press digit. As of now, let us, first of all, try with book appointment. Let us check if it is booking the appointment in this slot or not. Hi. This is Alex from Fit Life Gym. How can I help you today? Yeah, Alex. I just want to have a tour or I just want to come by gym and look if it is okay for me or not. That's awesome. We'd love to have you visit and check out the gym. Let's schedule a time for your tour. Could you please tell me your first name? Yeah, thank you very much. My first name is Manton. Great to meet you, Man tan. Could you also share your email address so I can send you a confirmation for the tour? Yeah, it's MontanP 037 at doridgmil.com. Thank you, Manthan. Just to confirm, your email is Manthm 037 at directmail.com, right? Yeah. So could you share your primary fitness goal, whether it's weight loss, weight gain, or general fitness? This helps us tailor the tour experience for you. No, no, it's Manton p037 at didgmail.com. Got it. Your email is Manthm 037@gmail.com. Thanks for clarifying, Manthan. Now, could you share your primary fitness goal, weight loss, weight gain, or general fitness? This will help us make your visit even more personalized. Yeah, I'm really looking to gain my weight because if I eat too much or even if I'm constantly exercising, I'm not able to gain my weight. At at Manton, weight gain can be a challenge, but with the right guidance and plan, it's absolutely achievable. Well, make sure to show you how Fit Life gym can support your goals during your visit. Now, let's find a time for your tour. Our gym is open on weekdays from 9:00 A.M. To 5:00 P.M. IST. Do you have a specific day and time in mind? Yeah, I want to come by tomorrow around 10:00 A.M. Or 11:00 A.M. Something like that. I'm not sure. Let me check if we have availability for your tour tomorrow between 10:00 A.M. And 11:00 A.M. Good news, Manthan. We have availability for your tour tomorrow between 10:00 A.M. And 11:00 A.M. Would you like me to book it for 10:00 A.M. Yeah, please do. I'll book your tour for tomorrow at 10:00 A.M. Your tour is all set for tomorrow at 10:00 A.M. Manthan. I've sent a confirmation to your email, so you're good to go. We're excited to have you visit Fit Life Gym and help you on your weight gain journey. See you tomorrow. Yep, thank you very much. Have a nice day. Did you see it book the appointment with our email address, as well as with the recipient email address or the user's email address? We have the time zone here and the meeting schedule. Yep, this is my demo email address. Again, 10:00 A.M. It has booked that appointment. Let us go to Gmail and appointment book successfully with Manan. Awesome. So that's easy, that's simple. You can create open mind booking chatbard inside retail EI, by using cal.com. Now let us go to call recording or call History. And this is where you will be able to see your post call analysis. So as you can see inside custom, we have got the user's email address, the fitness goal, and the name. Amazing. Like, I'm mind blown by this technology. It can also act as lead collector or lead generation voice agent as well. This is our summary. This is our entire transcript. Yeah, even if you see in the transcript, it has mentioned Manthan not in the correct pronunciation or spelling, but it will automatically adjust it in the post call analysis. As same goes for the email address. And we have mentioned to always give information back about the email address because email address is very critical thing, even sometimes humor mess up when they are taking note of email address. So EI is not likely to make so many mistakes, but sometimes it can happen. We are always prompting that always confirm the email address. Awesome. Now, it did ramble a lot like our LX or our Avoice agent was continuously talking. So we can say in the prompt. Do not ramble too much. Don't tamble wait for user response as well. Even we can add that wait for user response input here. So go back to our prompt guide, wait for user response. Copy this. Let us paste it here. Same goes for the first name. Similarly for Availability management. Now let us check another scenario where the appointment is already booked, if it is still booking the appointment or it is redirecting to alternative options. Hi. This is Alex from it Life Jim. How can I help you today? I really want to gain weight. I'm really struggling in that part. You're not alone in this journey, and I'm here to help. Gaining weight in a healthy and sustainable way is all about combining the right nutrition, strength, training, and consistency. At Fit Life Gym, we can guide you with personalized workout plans and nutrition tips tailored to your goals. Would you like to book an appointment with one of our fitness consultants to get started? Yes, so I can help you schedule a time that works for you. Yeah, why not? Let's do it. Awesome. Let's get started. Could you please tell me your first name? Yeah, it's John. Great, John. Could you also share your email address so we can send you the appointment confirmation? Yeah, it's Manton p037 gdorgmil.com. Thanks, John. Now, let me check our availability for you. Since today is Wednesday, January 1, 2025, and our gym is open from 9:00 A.M. To 5:00 P.M. IST on weekdays, let me find a suitable time slot for you. Hang tight. It seems like the time range for today has already passed. Let me check for availability tomorrow, January 2, 2025 during our operating hours from 9:00 A.M. To five PMS. Hold on. Thanks for waiting, John. For tomorrow, Thursday, January 2, 2025, we have availability from 9:00 A.M. To 10:00 A.M. And from 10:30 A.M. To five PMS. Which time works best for you? Yeah, so that slot is not open. I really looking forward to meet at 10:00 A.M. Got it, John. Let me book your appointment for 10:00 A.M. Tomorrow, January 2, 2025. One moment while I confirm that for you. It seems there is an issue with booking the 10:00 A.M. Slot as no available consultants are free at that time. How about we go for the next available slot at 10:30 A.M. Let me know if that works for you. Yeah, why not? Let's do it. I will adjust my schedule. Booking your appointment for 10:30 A.M. Tomorrow, January 2, 2025. Hang tight. Your appointment is all set, John. It's scheduled for 38. Thank you very much. Yeah, did you see it ramble a lot here? And it mentioned this time in Pacific Time and not ISD Time. So we will adjust that in our prompt. The main goal of this lecture was to get you know how you can use vital EI pluskal.com integration so that you can create appointment booking chat or appointment booking Voiceboard very easily. It did book an appointment for 1030, as well as let us go to post call analysis. Even you can see the user sentiment, call status, call success ratio, latency, our name of the user name was Sean fitness goal was Wed gain. So as I mentioned, the wed gain part at the starting of the conversation, it didn't ask again. You can see Ave agent is just not a robocall IV thing. They are actually intelligent and smart, and they know how to handle objection, manage the conversation flow, and ask for specific things that we have mentioned in the prompt, as well as the user email. Yeah. So that's pretty much all for this lecture. I hope you found this valuable. Feel free to try with your time zone. Feel free to try booking appointment with specific use case, feel free to rewrite your prompt. But I hope you understand L by using AI, we even refine the prompt like furthermore. So that's the beauty of using AI to create the prompt, as well as AI to make the phone calls. Alright, that's all from my side, and I hope you to see you in the next lecture. Stay blessed. 10. Outbound Calling with AI Voice Agents: We will add the first name. So as you know, we can create dynamic variables by double curly brackets. Now when the speaker will say, you are speaking with Manan, then the user will speak, you are speaking with Manan. Then it will say, I know I'm calling after W because it is a cold call, so I will be brief. Do you have the movement to discuss a unique opportunity of vending machine in front of your lead gen Man shop or any shop name that is in our Google Sheet. All right, I hope this makes sense. This is as simple as I can explain. Now let us check the remaining call flow. Here, let us add a pause before we move ahead with the script. We can say wait for the user response because here we are asking, do you have a moment to discuss a unique business opportunity for vending machine in front of our prospect shop? They might think, do I need vending machine or not? That's why we have to pause our AA Voice agent and not to remember along with the following script. Wait for user response. Free to add this type of pause if you are convenient, or if in testing, you might find out the EA is speaking too fast or too continuous, feel free to add this type of word, which is wait for user response. Then if they agree to listen, we will say great. Thank you. And you can also add personalization, thank you, first name, or thank you Manan. Or thank you VNC or thank you Ben I will see from this list. Flux vending machine offers unique opportunity. We are not talking about snacks or soda. We're talking about let's say gummy bear and toy cars. I will say, does this type of opportunity sounds like something you might be interested in learning more about? I will take a pause here and it will gauge interest with a different tone. Again, we will going to say wait for the user response because we are asking the user, does this something align with a vision or with your goal? And if the user is interested, we will proceed to appointment booking with our customer service. Writing this prompt with AI so that you don't have to. Scheduling if prospects is interested. If you like, we can schedule a call with one of our business consultant who can provide more information. Would you be interested in that? If our prospect or user is interested, we will start with appointment booking. Collect essential information if not. Already have their first name, but we do need the email address. For instance, sometimes if you're scraping leads, you don't have owner's name, that's why we are using this and avaibility. Check for calendar availability. Again, wait for user response, I slots are available, send confirmation, and if not, offer alternative time. This is error handling. If something is not properly clear or unclear, politely ask for clarification. Lastly, we can add what type of voice motion or voice control it should have. But before that, if prospect is not interested, we will end the call politely. Call in if prospect does not show interest. Thank you for your time. Have a great day. I user does not have any equation, we are going to use our call function. Let us add our call function because we have mentioned here. Do mention here, otherwise, A won't know. Awesome. We have to add bunch of functions because we are using check availability book availability as well as we have to add that current date and time because LLM don't know what is today's date and time. For instance, let us save this because we have already tried it, and yeah, this is a feature of test LLM. For instance, if you don't want to waste your money on testing audio, you can always use LLM and you can always chat with it. For example, we'll ask what is today's date and time to be honest, it is very fast. If we are using test audio, we have to wait to get entire conversation. You can say I don't have the real capability, so I cannot provide the current date and time. That's why we have to add that make.com scenario of cat date and time so that you can book a permit in your time zone. Not to forget you can always use inbuilt feature or inbuilt dynamic variable, which is current time by tail EI, but as we are based in another time zone, apart from Los Angeles America, we are going to use me.com scenario. Let us start. What we had was webooks, custom webbooks. Let us add one date and time. Copy this URL. Let us go back to retail, and we will add in custom function. So we are saying date and time, this is our name of the function, get the current date and time when the user ask. And here we will past our WebookRM from mid.com and let us enter our parameter or Jason Schema. This is the one that we have pasted from the last lecture. So go to last lecture, or even I will add that in the resource section, so make sure to check it out. Simply it is getting the current data time from the location. In our example, Kolkata and speak after execution. Click on Save Alright, we have added in function, but we have to call it in the prompt. Otherwise, it won't work. So let's use get the current date and time invoking this function. Make sure the function name is the same as we have used here. Otherwise, it will get confused. Now let us click on Save. But if you're confused, how do you come up with parameter or JSON schema? Simply go to hachPT or Cloud to get this JCN schema. Let us ask our LLM Again, the same question. Now let's see this time, is it able to retrieve the current read and time? Oh, sorry, we have to add ad here. All right, as you can see, successful determine. Now we have to set a tool in order to format our dat and get current read and time. Let us set the variable, again, let's say, date and time. Make sure the upper case and lower case is similar to the one that we are using here. As you can remember from the last lecture, we are formatting the date in current tent. So in mein.com, they have this inbuilt feature of now, so it will retrieve the current date and time from here. And we are formatting in year's month date, and my time zone is Asia Kolkata. So simply use your time zone here. That's it. That's all you need to do. And we have to send this response back to our retail EI. That's why we are going to use webbook and webbookRsponse. The name suggests like response, so we have to send that response back to our retail EI. Yeah, date time close the calibrat. We will add the date and time from set variable. Okay, first of all, save it. Otherwise, it won't run immediately run this scenario when this function trigger. Okay, let us rename this outbound lecture. Yeah, I will add that in the research section as well. Now let's ask this question. Awesome. So it's fourth of July and time is around 3:42 A.M. So let's check that. Yeah, it's 3:42 A.M. Fourth of July 2025. Yes, I'm shooting at night. I don't have live. Yeah, so let us move forward with booking appointments. First of all, we have to check availability in our calendar. So let us go back to cal.com. I have created a new event, so get the event type from here. Simply copy it, past it here, and the time zone. My time zone is Asia Kolkata. Again, it is optional. You can also find your time zone here. Click on SEO. Yeah, we need to add the API. So go to settings. Click on API keys, copy your API key from here and paste that in our retail function. I will paste it here. Same goes for booking appointment. Click on SO Awesome. So we should now check avability and book the appointment. Let us configure the welcome message. So we have three options. We are going to use this same line. Don't worry. I won't say the first name. I will say, am I talking to Manan or whatever? A prospect name is in Google Sheet. You can use to be honest Air table, go high level Hubspot, whatever CRM solution that you are using. Awesome. Please configure this speech setting as well as call setting as your preference or your liking. I'm doing this very quickly because we don't want to waste time here. Now, let us configure the post call analysis. For example, here we will add the element of, does this prospect need a vending machine or not? Does he or she has booked the appointment with our AI Agent or with our SDR or media, we'll add all of this information. For example, we can say yes or no, so we will use Wollon. We can use this as well like the default one. Let us screenshot, let us copy this. Did the user book an appointment or not? Appointment book. Another one might be N vending machine, we can say did the user want vending machine or not. We can save. You can also create as many post analysis retrieval that you like. For example, a detailed summary, you can see detail detailed call summary of the call, everything that you like. But let us take these two example. Awesome. Now it's time to add the webbookRL from make.com. So we are done with our data and time, so don't worry about it, leave it always on. Now let us create a scenario that will take the outbound call from Retail's API documentation. So click on new scenario. Save this, create a new scenario. Now we are not going to use any Webookse you might recall, we are using web Books from every single one of our mad.com scenario. But for this cold calling system or ADON system, we are not calling inside our retail EI. We are using EPI documentation or retail documentation. So let us go to retail and click on documentation. It will open something like this. Don't be afraid it is very easy. Simply click on API reference because we have to make a call in backend system. We cannot make a OO call here. Yes, we can make that outbound call, but it is only limited only to one phone number. That's why we are leveraging EPA documentation. So go to Relate phone number. All right. So make sure you are in this tab and we have this code and everything. Don't worry. Vital EA makes this outbound calling system very simple for us because it has all this no code tool and we don't have to type in any code. All we have to add is our variable. For example, let us delete the Bar key as well. So first of all, we need to add our authorization key. So click on authorization and add our Bar key. So let us go to Vital you will find your EPIK here. Click on EPIK, let us create new one. I'm using my old EPIK, but if you don't have any APIKey, please create one and paste it here. Then under body section, we want to know which number we are using from Outbound call. So as you know, let us go back to retail, we have these phone numbers. So which phone number that we want to assign this outbound call to. So first of all, assign the outbound call to flux vending machine. Otherwise, it won't work, and then copy the number. That's it. Copy and paste it from here. Again, make sure the country code is added, as well as the plus sign and which phone number that you want to call to. For example, I'm adding my phone number here. So I will bra my screen, but it is simply plus country code and your phone number. Then override agent ID. So what does this override agent ID means? Which agent ID or which Evoe agent will override this phone call. In our example, we are overriding by this example, which is flux vending machine. Simply copy this agent ID. This is the agent ID, click on copy and then paste it here. Simple as that, nothing too crazy. Now we need to add our dynamic variable. For example, we need to add the first name of our prospect. We need to know the shop name. That's why we are going to simply add this dynamic variable. Feel free to add as many data points as you like for personalization. But in this example, click on this plus and the name of the new property, which is, let's say we need the first name, clic on Enter, and then let us use any demo name, for example, man like a just for demo. Don't fort about it. And then let us create another for shop name because we want to retro this information during the call. In my example, let's say lead gen Man, that's it. Yeah, you are good to go. That's all you need to do. Awesome. So we have this data from number two number, overd agent, retail LLM dynamic variable, everything here. So let us go back to our make scenario. Image.com, which will be our first model or first node that we are going to use to make call, take a pause and think it through. The answer is obviously Google Sheet, because we need to first of all, retrieve the phone number. Phone number is everything here. If we have everything, let's say first name, last name, shop name, everything, but if we don't have phone number, how are supposed to call them? So we will first of all, get that phone number from Google Sheet. Therefore, click on Google Sheet and what we are doing here. We are searching for a row to find out their phone number, and if that phone number is left to call or called. So we are searching, obviously, we will select search Euro select your account, select your spreadsheet. In this example, I'm using this flux vending machine. This one. Obviously sheet one, and we have to put a filter. Which phone number we want to call. In our example, we only want to call those numbers whose status is left or yet to be called. So we have to select the column name here, which is status. We are looking for status only, and simply type left. Yeah, that's it. Click on Okay. That's all you need to do. Again, I will repeat. So left is our trigger word. So in Google Sheet or in atable or in Hubspot, those prospect who has this trigger word will be called by using Avoice agent that will do cold calling. All that's easy as I can put. If it is like call, it will not call this phone number. On Okay. Make sure to save this first of all, Save anyways. So sometimes this will happen like it won't save. So again, click on Okay, yeah, you can see that one just went. Again, click on save. Let us name this as outbound, one outbound lecture, part one, click on save, and let us run this module so that it will have all the information. As you can see, in the bundle, we have Patil Man and the name, everything for three bundles because right now we have three rows. Alright, nothing crazy. And then we need to aggregate or collect all of this information. In just one bundle. So we will use aggregator. Again, as the name suggests, we need to add all of this information in one array. So we will select all of this field, phone number, last name, first name, everything. And lastly, we need to make a phone call by using this HTTP post request. So as you can see, here is the post request. Let us go back tomg.com and we have to make an HTTP post. So clic on add a module, click on HTP. Again, nothing too crazy if you're not techie person or tech savvy, still you can easily connect your EI voice agent with a cold calling system. So what we are doing is we are making a post request. That's why clicon make a post. As the name suggests, always go with the name and you will be good to go. Here we have to add the URL, the method, as you know, the method is post. We have to select the post method, and this is our URL, simple as that. So copy this paste our URL here. And instead of Get we are posting or we are calling SclconPost. Now we need to add the headers. You can see these are headers, which is authorization and our key. So Clicon headers, copy authorization. And in value, we simply have to add this, which is bearer and your APK, Bearer space APK, that's it. Now, as you can see, this code is in JSN or raw code. We are going to select the body type or raw and content type, which is JSN applications less JSN. Nothing too crazy, just follow what I'm doing here and the request. We have to send the request first. You have to send a request first. So let us click consent and you will receive the phone number that you have added here. This is just in dimo call. Don't worry. Let us click consent. First hide my phone number. When I will click on this send button, I will receive a phone call. Again, nothing too crazy, just in demo call. Yes, we have 201 created. That is successful. Chet whatever you like. Hi, this is Linda from Flux bending Machine. Am I speaking to Mangan? Yes, you are speaking to Menten I know I'm calling out of the blue, so I'll be brief. Do you have a moment to discuss a unique business opportunity of vending machines in front of Legaman? Yeah, as you can see, it replaced my first name as well as my shop name. Thank you very much, Lisa. Have a nice day. Yeah, that's all you need to do. I will put my phone aside. And, yes, we have successfully connected our EI voice agent with Outbound system or with your cold call. Or we need to add the code here. Copy after the calibracet. Make sure you are not copying that quotation mark. Same goes for the adding. Don't copy this and don't copy this quotation mark. Just cali brackets. That's all you need. And paste here. Alloy, that's it. Now click on Okay. Don't worry. We will replace the phone number from here. So it will take every single new phone number from our Google Sheet, as well as it will change the name and the shop name. But as of now, let us click on Okay, save this. Awesome. Now let us have a call again so that it has all the payload and all the knowledge that we have been talking about in the call conversation. Save the scenario, and once you click Run once you will receive a phone call. Hi, this is Lisa from Flux Vending Machine. Am I speaking to Manton? Yes, you are speaking to Manten. I know I'm calling out of the blue, so I'll be brief. Do you have a moment to discuss a unique business opportunity of vending machines in front of Lee Gen Man? Yes, I do, actually. I really want to buy vending machine in front of my shop. Great. Thank you, Manthan. Block vending machine offers a turnkey business opportunity. We're not talking about snacks or sodas. Our focus is on high demand products like gummy bears and toy cars. Does this type of opportunity sound like something you might be interested in learning more about? Yeah, please, please. I do. That's wonderful to hear, Manthan. If you'd like, we can schedule a call with one of our business consultants who can provide more detailed information and guide you through the process. Would that be of interest to you? Yeah, let's do it. Let's book an appointment. Alright, Manthan. Today is January 4, 2025. Could you let me know a date and time that works best for you to schedule the appointment? Yeah, let's do, can you repeat today's date and time? Sure. Today is January 4, 2025. Current time is 4:08 A.M. Let me know what date and time works best for you. Yeah. So let's say let's do on Wednesday. Let me check the availability for next Wednesday. Next Wednesday, January 8, 2025, we have availability between 9:00 A.M. And 5:00 P.M. What time within this range works best for you? No, no. Let's do on seventh or on next Tuesday. Let me check the availability for next Tuesday. January 7. Next Tuesday, January 7, 2025. We have availability from 9:30 A.M. To 10:00 A.M. From 10:30 A.M. To 5:00 P.M. Which time slot works best for you? Yeah, let's go for 3:00 P.M. Got it. Let me book the appointment for you on Tuesday January 7, 2025 at 3:00 P.M. Could you please confirm your email address for the booking? Yeah, it's Manton p037 at door gmail.com. Booking your appointment for Tuesday January 7, 2025 at 3:00 P.M. You'll receive a confirmation shortly. Your appointment Successfully booked for Tuesday January 7, 2025 at 3:00 P.M. You'll receive a confirmation email shortly. If you have any other questions, feel free to reach out. Have a great day, Mappin. Have a great day, too. Bye bye. Did you see book the appointment successfully. All right, so we have configured with our appointment setting or our appointment voice agent. Now it's time to connect with our post request. As you can see, we are going to have this output awesome. So it has his first name, last name, everything from here. Now, we need to replace the variable or we need to add that mapping film from our Google Sheets. So let's map all this fill. First of all, the phone number will be the default one because it is the one that we are using from retail AI, but we will change the phone number. Why? Because we are always going to change the phone number in our Google Sheet. We are not going to call the same prospect again and again. That's why we have to add the dynamic or we have to add an ever changing fill. So click on As you will see a bunch of things. So we need to select the phone number. Keep the agent ID as it is. Then the first name will be also changing. Same goes for the shop name. Awesome. That's all you need to do, to be honest. I will be providing this in the resource section, so simply change with the phone number in your Google Sheet, the first name, last name, and change the from phone number, which is your retail EI phone number here. Awesome, that's easily I can put, as well as change your agent ID here. Simply past that AGI ID. That's all you need to do. And then click on Okay. Now click on. Save perfect. Congratulations. You have set up your Avoice agent that can do cold calling up 50,001 leg or two leg or 10 million call calls as well. But we do need to make sure that we are updating this field. For example, if you're not updating from left to call, how are you going to know that our Air cold call has called this prospect or not? That's why we have to update this row or update this field from left to call, so we need to add another scenario. This scenario is done. Don't worry about this scenario. This scenario is complete and successful. If you are going through all of this and getting the phone call, you are good to go. Now it's time to update the field. We have to update from left to call, as well as we have to fetch all of this information. In example, post call analysis, we need to get the call transcript call summary as we have said that post call analysis, we will add those specific thing in that. Does that prospect has booked the appointment or not? Does he or she need a vending machine? Everything in the CuCl sheets. All right, let us create a new scenario. We will name this as outbound lecture part two, and here we have to add that Webook URL or we have to call our retailed EI agent. Click on Webbooks I will not only show you how we are going to do that, but I will also explain why we are doing this. First of all, let us add the webbook. You might ask why we are adding the Webbook here. We already have this Clemail automated system in place. The reason is we have to add that in agent label Webook URL. Example, if you want to post or if you want to retrieve anything from the call conversation or from retail, we need to add that weboqRL ofmail.com or any automation platform that you are using and post that information to elsewhere that you want to go. In our example, we want to add all of this information in Google Sheets. That's why we have to add that Webo QRL here. All right, I hope you understand it. So first of all, let us add a Webo, let's say outbound cool call two, since part two. And now here's the tricky plot again, again, again, stop this, just copy this. And paste it here, but don't click on restructured data structure until you test within your agent. All right. So let me show you how you are going to trigger. I'm going to show you how you can trigger this webbookOce we have activated our outbound system. So click on Run once and you will receive a phone call. So once you receive the phone call, accept it, and then and then only click on this redetermined data structure. Otherwise, it won't trigger. So yeah, we received the phone call. Hi, this is Lisa from Fox ending machine. Now, click on Redetastructure. Awesome. Yeah, you are speaking to Manton oh, I see. My apologies for the mixup. May I know your name, please? No, no, you are speaking to Manten. Thank you, Man Peng. I know I'm calling out of the blue, so I'll be brief. Do you have a moment to discuss a unique business opportunity of vending machines in front of Legend Man? Yes, I do. Great. Thank you, Man Peng. Plus, vending machine offers a turnkey business opportunity. We're not talking about snacks or. No, no, I am man like gummy beard. I'm really interested. Yeah, I'm really interested. That's fantastic to hear Man Ping. This opportunity is all about high demand products like gummy bears and toy cars, which can generate substantial passive income. If you'd like, we can schedule a call with one of our business consultants who can provide more detailed information. Would that work for you? Yep, that will work. Perfect. To get started. Could you please share your email address so I can confirm the appointment details for you? It's Manthan 2024 at dodgmail.com. Thank you, ma'am Peng. Just to confirm, your email is month 102024 at utnail.com, correct? Yeah, it's atgmil.com. Got it. Thank you. Now, could you let me know a date and time that works best for you to schedule the call with our business consultant? Yeah, let's do next Wednesday at 10:00 A.M. Check the availability for next Wednesday at 10:00 A.M. Great news. Next Wednesday at 10:00 A.M. Is available. Let me book that for you. It seems there was an issue with the email address provided. Could you please confirm your email address again so I can ensure everything is correct? Why not? It's ANTHAN 2024 at dort gmail.com. Thank you for confirming. Let me book the appointment for next Wednesday at ten next Wednesday at 10:00 A.M. You'll receive a confirmation shortly. Bye bye. Yeah. So we have booked the appointment. We are booking so many appointments. The case was we need to successfully determine a webbook or trigger a webbook here. Since we have died our agent label webbook, we need to first of all, trigger it. And it has successfully determined. Again, click on that run once, and then and then only click on that redetermine data structure. Otherwise, it won't work. Click on. Okay, now what we need to do? We need to first of all, update this field from left to call. All right, so click on Google Sheets. First of all, we need to find that phone number. We don't want to randomly update on any particular phone number or leads. We will have to first of all, find that particular phone number that we will receive from Retail EI, or from that particular number that we have done cold call. Click on Sheet one, and we have to filter. Phone number is equal to the particular phone number that Retail AI has call. So click on that and you will able to see two phone number. So select that. Click on Okay. Again, if this one thing pops up, it is not selected. Click on. Okay. Yeah, now it's cone. So make sure that these are the things that will keep you up at night. And now what we are doing is once we have filtered that particular phone, for that particular phone number, we need to change the status from left to call. So now we will update a row. We are not searching for it, we are updating a particular row. Select your Google Sheet, and we need to update. So first of all, let us add all the dynamic variable or post call analysis that we want to retrieve, which is N vending machine. As you might know, we have added those in post retrieval. Similar for appointment book. And these options are yes and no, because we are using Boolean. We are using Boolean. Same goes for vending machine. I'm just giving them a label. Do it worry. Feel free to use any name that you like. Then we need call summary. You can also add call transcript if you like. Call cost anything. But as of now, let us keep this thing. So again, click on Refresh. Sorry. And now has all of these columns. So we don't need to change any of this thing. All we need to change is the status. The status we need to change is from left to call. All right. So next time it will call this prospect and the call conversation is finished, it will change the status from left to call so that it won't call that prospect again and again. And we're not annoying anyone. Now need a vending machine. So as you can see, there are no Answer or no bundle available. I will show you. So there has to be some word here like row number, which is two, but it is not appearing, so I will show you how you can fix that. As well as we don't have that encall analysis here. So you will able to find under call the last or last second thing, which is encall analysis. So again, it has not triggered the Webbook perfectly. Yeah, also, we need to select the row number. The row number is from here, but right now we don't have anything. So again, click on select, click on Save and how you're able to find out all of this information. For example, we need to first of all, get all of this information, pass from the first Google Sheet to the second. That's why I click on Right click and run this model once. Once we run this model once, our last Google Sheet will have information. So add the phone number, add the phone number, and then click on Okay. As you can see, it will run it on your own, and we will get the phone number, the shop name, everything. And if we click on this Google Sheet, you can see all of the data fields will populate. So we need to select the row number. It will automatically update the row number. Same goes for yeah, still, we don't have that end call analysis, so we have triggered the phone call again. So continue as of now. We need that end call analysis, as well as the call call transcript. As you can see, we are not able to find out the call summary, so we don't have triggered that particular agent level web of RL from retail EI successfully. We will be able to find the transcript, but not the call summary or any of these post call analysis data. So what it says that it has not been actually triggered. So click on this, run the module once, click on Save and click on once now. It will automatically still missing one point here. So once we pick up the call, boom, within microsecond, it will run this scenario because we haven't added that filter of call analyse. So it is using the filter of call stated only. You will be able to see. Yeah. A. Just in a second, it has ended this main.com scenario. We don't want that. We don't want this event to be happening, which is call started. We want call analyze. Basically call analyze is end of the call report or after the call has been over, then then only it will pass the variable data to Google Sheet. That's why we are not able to find out that end call analysis, Gotcha, or any kind of this extra field. For example, call summary, we are not able to find out here because it is not stopping. It is just after picking up the call within microsecond, it is completing this main.com scenario and not waiting for the call to be finished. Even if you open the call, you will see call status was still ongoing, but it has ended this make.com scenario. So let us set up the filter to avoid this issue. Again, if you're not understanding it, rewatch it again. You will understand it. Call Analyze. The event we want to trigger is you can see right now it is triggered like call started. We don't want it. We want call Analyze. Click on Okay. Yeah, click on Save. Let us come back. Make sure it is always running. Let us delete old data. We want to start it from fresh and click on W Oce 11. Automating Phone Calls with AI and No-Code: Latest delete old data. We want to start it from fresh and click on Wen Vince, and let's see. It was late, but it was on the time. Hi, this is Lisa from Flux Bending Machine. Am I speaking to Manton? Yeah, you are speaking to Manthan. I know I'm calling out of the blue, so I'll be brief. Do you have a moment to discuss the unique business opportunity of vending machines in front of Lechenman? Yeah, why not? Great. Thank you, Matin. Flux vending machine offers a turnkey business opportunity. When you're talking? Yeah, it is. No, no. This is on high demand products. I don't actually want to have vending machine in front of my shop. Alright, have a nice day. Don't call call me. I'm very busy person. Yeah, so let's end the call reducing. Now it will tiger the entimk.com scenario. That's the beauty of this filter. If you are running without using this filter, it won't work. So let us go and let us see the output. Alright. We still don't have enough information, I guess. We need that. Yeah, you can see the event is call analyse and we are able to find out that end call analysis that I was talking about, which is the custom end call analysis. And as you can see, both are false because on the call I mentioned, I'm not looking for any appointment as well as any vending machine. Now, you will be able to find out, or you will see the things will be populated. First of all, the call summary. Yeah. Now, just rewind that video. There was no call analysis. All right, so it is so important to do it in this way. So from call analysis, we will use call summary. And for this custom post call analysis data, click on Custom Analysis. Need vending machine, and appointment book. You can also use it from here. Under data, but as of now, let us use it under call. Both are similar thing, don't worry about it. Then lastly, we need to have call transcript. You will find it here. Awesome. Congratulations, guys, you finally did it. Now our cold call is bulletproof. As you can see, it has already changed from left to call. So if we trigger this automation, we will run into error. Yeah, obviously, because there are no left field which is not call. So if we change to left and even we can change the name as well. Awesome. So if we run once, I should get a call. Yeah. Hi, this is Lisa from Flux Vending Machine. Am I speaking to Lee Jen Man? You are speaking to Le Jen Man. Great. Thank you. Flux vending machine offers a turnkey business opportunity. We're not talking about snacks or sodas. Our focus is on high demand products like gummy bears and toy cars. Does this type of opportunity sound like something you might be interested in learning more about? I really like the idea of gummy bear. That's fantastic to hear. Gummy Bears are definitely a crowd favorite and can attract a lot of attention. If you'd like, we can schedule a call with C business consultant. Provide more detailed information and guide you through the process. Would that be of interest to you? No, I don't want to book any appointment with anyone. I am very busy. Have a nice day. I purposefully did that. You can see. It has updated. The status just changed from left to call. The prospect needs a vending machine. So for that, it is true, but he or she doesn't want to book an appointment. That's why it is false. This is a call summary and the call transcript. Congratulations, guys. You've built an entire EI call calling system. You can make 10,000, 20,000 calls, add them in this list and your EI voice agent will continuously call one after. You want to see how it will shuffle from first phone number to second to third, I will show you how. So let us delete all of this thing or we can leave it as it is. It will automatically update. You will see. This time, let's say, part and I will add my phone number here. All right, so we have added the second phone number, and in the first phone number, we have changed from call to left. Now we have said trigger of 50 minutes, but we can limit to, let's say, 1 minute. After waiting for 1 minute, our AI Voice agent will call this second phone number in our Google Sheet or in your CRM. As you can see, I just got a call, let us take that call. Lisa from Flux Vending Machine. Am I speaking to Lee Jin Man? No, no, no. You're not speaking to Lead Jin Man. Oh, I see. My apologies for the mixup. May I know your name? No, it's Manton. Thank you, Mountain. I know I'm calling out of the blue, so I'll be brief. Do you have a moment to discuss the unique business opportunity of vending machines in front of Flux Fortify? No. You are calling the wrong person. For your time. Have a great day. Did you see how it easily cut the call after finding out the prospect or Vice agent call was wrong? Let's wait for the second phone number to be triggered. So we have set this for 1 minute. To summarize, until we wait for the call, we have two automation in m.com scenario. First, for triggering our cold calling system. If you don't want to even use the second one, that's totally fine. But I do recommend that because you need to have a visual view of the successful ratio or how things are moving in your cold calling system. So by using Google Sheet, we can easily see like prospects are willing to invest in vending machine. They are booking an appointment or are they interested or not? By using the post call tivals. All right, so it is waiting for new row to be added. So just after someone add a new row in this Google Sheet, it will trigger that call. So I will just copy and paste it the same information down. And now after 1 minute, it will call. You can say I received a call. All I'm not going to pick up the call and waste your precious time, but I hope you got it. And once again, congratulations. You build this entire cold calling system on your own. Now we have like we are legend at outbound call and doing cold callings. We need to focus more on inbound calls. So whenever some prospect is calling us, we need to make sure that we know their name, we know their top name, everything, even the call summaries from the past conversation. Let's say you have a huge dataset. Let's say you have 50,000 phone numbers or your contact list in your CRM, and some of the customer is calling back to you and EI Voice agent is picking up the phone. So we are not seeing out of the blue, who are you? Who are you calling to? We will add that all of the personalization in inbound call as well. Like, Hi PRU, how things are going at acquisition X. I will have all the knowledge and contexts as well as it will also have the knowledge of the past call summaries. Bye bye, TK and I will see you in the next one. 12. Mastering Inbound AI Calls: Adding Personalization: After making dozens of Air voice agents and making thousands of AI calls, what I found out was people love personalizations. For instance, if you're calling Avoice agent again and again, and every single time, it will ask, what is your name? What is your company name. You will get frustrated and people will find out that they are talking to AI and not human. That's why we have to add that personalization. For example, if we are calling our Air voice agent for the second time, they should know our previous call summary, they should know our first name, what we do, any data points that we have collected from the first call. That's what we are going to build in today's lecture. We are going to build inbound calls that will have all the personalization, all the contexts, all the knowledge information that we have feed into our CRM or into our Google Sheets. So let us get started. Yep, we are back with our board. So we have built our outbound call in the last lecture. We have built customer service rep appointment setter, character. The one missing piece of the puzzle is inbound calls. So lets get started building inbound calls, and we will have this whole picture of one AIoice agent that can do everything. So lets go start. Let's not build AI voice agent from scratch this time because we already have the prompt ready, all the configuration. We already have set up the Agent level Webo QRL which is our post call analysis. So I don't want to waste your time, and I want to get straight into setting up our inbound voice assistant. I want to cover about inbound call Webo QRL. So this is the webbook that we will be giving to retail EI which has access to all of these past call summaries, the user name, the user email, the fitness goal, whatever data point that you have in your CRN. Well as, for example, if you have entire list or entire lead list containing the phone number, the first name, last name, title or any data points that you want to add into your Avoice agent and feel it like, these are the information. So whenever someone calls, for example, whenever someone calls with this phone number, it should have this person name, this person title, where they are working from where they are based from everything, our Avoice agent should have a knowledge. So I'm going to show you how you can set up those type of Avoice agent. So let's go back to retail. First of all, we have to set up the Webo QRA. We have to give all of this information to retail. So how we are going to do that by using med.com. Obviously. So let us set up a whole new scenario. Nothing crazy. We have to set up a webbook first. Why webbook Because we have to add the Webook URL to give these data points to retail EI. So let us set up a webbook. This is new scenario. I have nothing here. So we are going to build this from scratch. We are going to select Custom WebbookTs time, let's say, Inbound gym Assistant. Click on Save. Now copy this URL and paste it here. All right. So click on stop, click on Okay, click on save. Let us rename this as So this is our outbound webbook assistant, and this is our inbound, so all in one solution. Next thing we need to do is we need to set up our phone number that we have bought from Twilio or from Retail AI. We have to set lead up this voice agent as our inbound call assistant. So I will show you what I'm talking about. When someone will call into our phone number, we need to, first of all, set up this inbound call agent. So we will select our gym assistant. Alright, so this is an important step. Otherwise, it won't work. Now it's time to trigger our data structure in Webbook. Alt, so call your EA voice assistant with the number that we have set up. Click on Red Determine data structure and then call the phone number. Successfully determined. All right. Geek on okay. Let's go back to VTL. Awesome. We have connected our Avoice agent with our inbound called Webo QRL from main.com. Now one thing we need to notice here is learning the model ones use existing data. And this is the number that I have called from. All right, this has the data now. Now if you open the outputs, you will be able to see from number and two number. So this is our assistant number, and this is the number that I call from. Now you can see there is this plus one thing. Alright so there is a huge trouble when we are getting this data from retail EI. It is always formatted in this plus number. But if we go back to our Google Sheet, there is this no plus format in Google Sheet. All right. So as you can see, there is no plus format. So what will happen is it will not able to match the phone number that we have in Google Sheet. Is the same phone number that we got from retail E. So what we have to do is we have to remove this plus sign. So how we are going to do that by using hat GPT. Click on hat GPT. It is a simple prompt, nothing crazy. Select your account, and we are selecting chat competition. You can select any models that you like. We can add message. Again, we are going to use system. First, we need to give the context of what we need to achieve. So we will write context. What is the context that we need to achieve we simply need to remove the plus sign. So we will give the phone number to From phone number. Then we have to give example to chat GPT. What is the end result or end goals that we want to achieve from it? So we can say something like example, the input that chat GPT will be getting is this from number, right? So this will be the input. But the output we want is simply removing the plus sign so that it will match with our Google Sheet data. I hope this makes sense. We can also give particular instruction that we need to achieve. Use the number in the context and please respond with appropriate output based on the example. Don't worry about it, you'll be getting this win.com scenario in the resource section. So all you need to do is make this field of your own phone number. Then click on Okay. Yeah, that's it. That's all you need to do. Again, it is nothing too crazy. It is just removing the plus sign that we are getting from retail EI so that we can map or match the field in our Google Sheet. Now you might know what we are going to do. Obviously, we are going to select a Google Sheet. We are doing this, we are searching the row. We want to make sure that we are matching the phone number that we are getting. Then then only we are able to find out the particular person's previous history, their name, and whatever data points that you have added in the Google Sheet. Select your Google Sheet that you want to use. Sheet one. Now we have to filter by phone numbers because we are getting the phone number and we have to make sure that the result that we are getting from retail EA is similar to the one in Google Sheet. So this will be the phone number. We have to select this from number. I did something wrong. Guess what? Because what we are matching here is when someone calls with the phone number, we want to match that if this exists in the database or not. So select the from phone number. I did something wrong here. The reason why we use CJA GPT was to remove this plus sign. Otherwise, again, it won't be able to match that fill in Google Sheet. So simply count the result because this is the result that we will be getting from RGPT which is removing the plus sign from the phone number. On result. Yeah, that's all you need to do. Click on Okay. And now we need to send this response back to our retail EI. If you see this option, that means that it is not perfect yet. Click on Okay, and now it's called. All right. So we need to now send the Webook response back to our retail EI. For example, once it has maged the field of particular phone number, it will grab all of this information, which is name, last name, whatever you want to add, and then we will send that information back to retail EI. Click on Webbook and WebookRsponse, as the name suggests, we are responsing back to retail EI. Inbody feel free to add as many data points that you want to add or sign out back to your EA voice assistant. But in this example, let us use the previous call summary. We need to know their name. And let's say the email, yeah, that's it. As well as we can select the fitness calls as well. So whenever someone is calling back, our EA voice assistant will say, Hello Manan. How are you? I hope your weird kin experience is going well, something like that, and not like, hello, who is this? What are you calling from? What do you want? So that it is adding that level of personalization, and that's all we need. Let's say if you are calling Apple or Microsoft and they don't know who we are or what we do, we feel that connection of attachment. But if you are using this Air voice agent, and we are setting this inbound call assistant and our Air voice agent know the name, the entire previous call summary, as well as any data points that you have added. All right, I'm not repeating myself here, so I will add the body or whatever data points that I want to send back to retail EI. This is as easily as I can explain. Let's say we want to send out first name, suplicon space and then quotation, first name. And how we are going to get that first name by using Google Sheet data. So a semicolon, then a space, again quotation, double quote soy. Then we have the column name, close it, lconca. Same goes for email space, and then we are going to add the email. Same with fitness cool. And lastly, summary, previous summary. Click on Ann and close the Cali bracket. That's it. Click on Okay. First of all, save this. Now it is test our Air voice agent is working or not. It will not. Why? Because we haven't added any context or knowledge in the prompt. We have to at least give some kind of information or knowledge to our air voice agent in the prompt because it is it brain, otherwise it won't know what to do. So we can say, like, this is the caller information. And now this is a very critical part. So make sure you pay attention to. In the webbook we are calling this dynamic variable. So these are dynamic variables. Now, for example, dynamic variables are very case sensitive as well. So if we are using or if you are calling with, let's say, first name. So it won't know that the first name is this because here, all are lower caps, and here the first word is in capital. So that's why it is very case sensitive. So make sure that it is the same dynamic variable that you are calling in the Webbook because this is the response that retail EI will get alert and if it is getting confused, like what is the first name and what is the first name that is mentioned in prompt, it should be similar. I will show you. We can say first name So we are giving our Air voice agent the caller information, and we will add our dynamic variable here. So add a double colli bracket and add the dynamic variable. Then we have email. Same goes for fitness goal. You can even simply copy it from here and post it there. Just add a double calibract to make it a dynamic variable. You can also add dynamic variable in the welcome message. So I won't say like, hi, who are you? It will say hi Manthan or Hisaki whatever the name is stored in the database. So we can say first name here as well. Don't forget to save your prompt. Awesome. Enable this option of immediately at data arise. First of all, we don't want any old data, so let us delete those. So whenever someone will call, it will immediately trigger. So let us go back to our Google Sheet. So this is our first call ride, and this is the phone number. This is the phone number that I will be calling now. So it will say hi Manthan since we have added that dynamic variable here. So did you see it didn't say? So let's rewrite those dynamic variable again. Yeah. So now your agent is successfully updated. So it will say hi Manthan. This is Alex from Jim. Alright, so let us try it out. Let us call this number. Yeah. This is Alex from Fit Live, Jim. How can I help you today? Yeah. Uh can I get my email address I forgot? Of course, Manthan. The email address we have on file for you is Manta 037@gmail.com. Let me know if there's anything else I can assist you with. Awesome. Did you remember the last time we book an appointment? Can you let me know the date? Absolutely, Manan. The last appointment we booked for you was on January 6 at 11:00 A.M. Let me know if you'd like to make any changes or need help with anything else. I'm not able to achieve my fitness goal. Oh, Manthan I hear you. Sometimes progress can feel flow, but don't worry. You're not alone, and we can absolutely work together to get you back on track. Achieving your weight gain goal takes on consistency. Did you see like our Air voice agent mentioned like weight gain. So it is having all the contexts, and it is not calling out a Zblu. For example, if I called this A voice agent, and it would have said, like, Hey, who are you? Can I know your name? Can I know your fitness call, everything back. And our receptionist won't have the knowledge to store all of these previous call histories. So that's the beauty of using a voice agent in your business. Now, I want to show another example. For instance, if you have a lead list or all the customer and their phone numbers and you want to add all of this data point and give it out to Avoice agent, you can do it as well. So let us go back to an.com scenario. So instead of let us change different sheet. So this sheet is Retail X inbound, so we will select it. Retail. So first of all, we need to run this. Click on the run modules because we are not able to fetch any column name or let us create a new Google sheet. Let's remove this node what we are doing is we are searching for phone numbers. Retail X inbound. Then sheet one. Sorry, whatever the sheet name in your database? Yeah, now it's populated with all the column names. So we are looking for phone number and from. Icon Okay. As you can see, there is still one option in red, so it is not safe. So make sure to click on Okay again. I don't know why this always happens. As well as we have to change the field from here. So again, we don't have any data, right? We don't have any population like what is a phone number. So in order to achieve that, simply click on right on your mouse and run this module only. So enter any phone number that you like, which is in the database. So I will use the first one. So it will get all of this information for that particular prospect. Ya AAB, the phone number, the link URL, the title, every single detail, the education role. So this is how you can add the personalization into your Avoice agent. And it's not like one size fits for all or you are calling to a robocall or IVR menu, you are actually creating value and adding relevancy, at the same time using personalization in your Avoice assistant. Now we have to change here because it is from the old Google Sheet. So we only have their first name. We have the email. Okay, we don't have the email. So to email. We don't have their fitness school as well. But instead, we can add their title, let's say. I'm just showing the example, what are the possibilities. As of now, we are just using two examples, their name and title. Again, we have to change it here as well. All right. So let us call our E voice assistant again. Make sure to save it. Yeah. Yeah, thank you, thank you, Alice. Can you let me know my title? I'm making it but obvious, but still. Yasha, your title is sale director. How can I get you today? Yeah, thank you very much. You have been very helpful and great fun. I love you. Bye bye. You can see, feel free to add SSM data points that you like. I'm giving an example or what are the possibilities by using A Woe assistant so that it will boost or exponentially enhance your customer service in your business or in your client's business. Even you can connect both of the Google sheet as well. So one for past call summaries and second for lead list. I will allow you to do that as classroom work or class project. All right, so that's all from this lecture. I hope you understand what I'm trying to achieve or what I'm trying to say. So let us go back to our Miro board again. Sorry, I'm taking so much of your time. We have achieved all the file levels. We have created the ultimate air voice agent that can do both inbound, outbound, customer service rep, appointment set or lead caracter, and whatnot, to be honest. So I hope you found this course valuable and I will see you in the next lecture. There goes the balloon, I guess. I cannot see that's why. 13. Automate and Personalize Calls Instantly with n8n: Using AETN with retail A voice agent is we can bring out all the nodes, all the API reference and documentation inside NAD and our workflows without going to have anywhere. I will show you. So this is in mein.com, if we are making outbound calls, right? We have to go to this API documentation, write our entire call code. We have to use the metadata as well as the retail A dynamic variable. But with ANN, we have to provide phone numbers, agent IDs, dynamic variables, copy the code from here, but by using Aniten we can do all this inside our automation. So let us start it. Once you log in, it will look something like this. So let us create a new workflow. Don't worry if you're using ANATN for the first time, it might feel overwhelming, but it is even easier than mig.com or Zappia. Go to Workflow and let us create a workflow. Let us name this S. Now similar in mig.com, we have module. Here we have nodes. So first node will be obviously the trigger node. Click on Add a step, and what we have to agree from is the form that user will submit. So in this example, I'm using a very basic or generic form, but feel free to use Teleform or whatever form that you are using on your website. So we are going to use Aniten inbuilt form feature. Click on An ten form, and click on this triggered one. Whenever the form event happen, it will trigger this automation. So we have the test URL here, then we have to provide the form title, the description, and the form fields. All right. So for form title, let's say it's a growth call. Now in form fields, I'm just keeping it very single because the goal of this lecture is to understand how you can integrate retail EI with Aid. In form, we will say, what's your name? The field type will be text, and the placeholder, we can say and this is required field. We will add another for phone number because if you don't have phone number, how we are supposed to call back that person? What's your phone number? And this will be number, country code, and then phone number. Again, this is required fill lastly, why we are gathering their email address. Because if they like to book a call, we can easily source this email address from the phone and we don't have to ask our user. That's why it is even better and our AI won't make any mistake typing or writing out the email address. So we will say, What's your email? Yes, this is required field too. Alright, that's it, feel free to customize this form as per your liking and your preference. For example, we have a bunch of details. As you can see, once anyone select the time, we are filling with all of this information. But it will make this lecture lengthy if I'm adding all of this thing. I want your fundamentals to be clear. That's it. After that, you can create any automation or you can add any customization as per your liking. Now, let us see what our forms look like. So click on test Step or even we can copy this URL and open in Newt now in order to see the preview of our form, click on test Step. It will open up your form. We have consultncy call. Let us fill out a demo name. All right, let's submit it. Form submitted, your response has been recorded. So let's go back to Aniten and you will see node executed successfully. We have our output here as well. So we have name, phone number, email, as well as the time. All right, so it is like a payload because once we are mapping the film in our retail EA, it will be very easier for us. Don't worry. I will explain to you in much details. Now what we need to do is once the user will submit the form, we need to make sure that our retail EA get this knowledge of the person's name and their email so that it is easier for our retail EA to add this personalization. So how we will integrate retail EA is by making HTP Post call. So in nodes, search for HTTP yeah, we will make a HTP request. It is post. And to be honest, you won't have to do any of it because once we are going to install the nodes of retail AI, it will be very easy. Now, in URL, as you can remember, go to APA documentation and go to this create phone call. So this is the URL. Let us copy this, paste it here. In authentication, we don't need anyone, but we do need to send headers. In headers, as you know, we have authorization and our key. The value should be bearer and the key. Now in body, we will have the raw file and in content type application slash JSON. It is very similar what we are doing in make.com. In body, we have to paste our call code. So let us fill the form or let us fill these fields. In from phone number, we are going to use the phone number that we have purchased from Retail AI. So let us go to Retail. We are going to phone numbers, and let us use this phone number. Copy this into fill your phone number. In agent override, whatever agent that we are going to build, copy that ID. So let us go to VTL. Click on agent, and let us create a new agent. We will start from blank. Copy this ID. Even we can rename this a, let us copy this, paste it here. In dynamic variable, what information we need to send out to our AI voice agent. In our example, you want to send out the name and the email address of the person who has submitted the form. So in field type, we will say, first name, use any demo or use any random name. And second fill, we want to know the email. All right, your call code will be generated on the right hand side. Copy this, sorry. Again, copied from the calibracttll end of the calibract. Not the quotation. So let us go to NA ten and we will paste it under body. But mind that we are not using Fix because our phone number, our dynamic variable will be changing every single time. So click on expression and click on this. All right, now paste it here. Now we will simply map the fills that we used to do inmage.com. So two phone number will be always different from the one we will receive, drag it here, and we are keeping the plus sign because retail A won't be able to make the call if you are not using the plus as well as the country code. Now the agent ID will remain same, but we will change the dynamic variables. So we have name here and the email. And now let's do the same for email address. You can see the result here. It will change every single time from different prospects. All, that's it. That's simple. It is to create a voice agent that will call the user when they submit the form. And even you can test the step as well. I'm not testing it, but feel free to do it. Alright, our automation is being completed. So let us test the workflow. Let us fill in the phone number. Yeah. But one thing is remaining is we are here to set up our prompt as well as our agent. So let us do it very quickly. In prompt, we will say, Am I speaking to first name? Thank you for filling this form. Would you like to service our offer or consultancy? Would you like to book an appointment or not? So we are going to use all the function of cal.com as well in order to book the appointment. So let us go to Claude. Help me write a prompt for AI voice agent and not to forget to add the prompting guide in the resource section. Here we go. Once the submits the form, we are calling them back to make them feel very important, as well as we are using the personalization of their name and we are getting them to book an appointment with us at that moment. Otherwise, they will forget about us eter or Sona. Why don't just call them right away. Also, if you have any prom that you really like, you can feed into Claude and say, create me prom, but for this use case, but use the format that I like. I will show you example. For instance, we really like the vending machine. And this time, we won't have to ask for the email address as well as their name because we will already have via Form. Alright, I'm taking my agency example. So what I will do is I will copy all the content as well as give it to Claude so that it has more context on how to create the prompt. Yeah, it is writing amazing prompt. Hi, this is Alex from Flux Spotify. Am I speaking to this name? Let us copy this. Again, I'm just giving you a demo. I'm not adding any extra thing here. For example, not configuring with speed setting and everything. Otherwise, it will make this lecture unnecessarily lengthy. But I just want to show you how you can add those dynamic variables and integrate them with Nite. Let us copy this introduction. Also, we need to give the caller information, which we will get from ANATN. We have the first name, then add the dynamic variable. Make sure that the capitalization is same as we have used in AATen. I will show. Here. First name and email. Awesome. We have two things here. Now let us add the functionalities of checking and booking the appointment. Feel free to use both of these option, but I'm not doing this right now. All right, I think we are good to go. So let us fill this form. Let us use Run and our email. Let us submit this, and I think we should get a call. All right, so we have to run this. This step has been and let's run this as well. Node execute successfully. Yeah. Hi, this is Alex from Flux fortify. Am I speaking with Ron? Yeah, you are speaking with Ron. Do you know my email? Yes, I have your email as info at fluxfortify.com, is that correct? Yeah, yeah, correct. How are you? Great. I'm calling because you recently expressed interest in learning about our AI systems for Agency Growth. Is now a good time for a brief chat? Yeah, why not? Perfect. As you saw in the video, we're helping agency owners generate consistent $83,000 monthly revenue using our AI systems. The best part is we handle everything for you. Would you like to schedule a discovery call with strategy Let's book a call. Let's book a call. All right. So I hope you understand or got my point, which is, once the user will submit the form, we are instantly calling them with their name, with their email address, everything we already have. Now, all we need to do is reading them to book an appointment because if you are calling them even after 24 hours, they are more likely to forget us and they will get busy. But if you are calling them right at the moment, the chance of booking the appointment by our user is much, much higher. For example, if our prospect fill out this form and they are contacted after 48 hours or even after one week, they don't care about us because we are not adding that kind of hospitality or service to them, but by using a voice agent, we can do it within just seconds. Yes, by using these two nodes, you can fire receptionist or call center. And yes, we don't have to like crazy automation with 40 different nodes and two, three different workflows. Even by using simple automation, we can achieve the efficiency that we are looking for in our business. If you are not using ANitFms, you can simply use Google Form or Ti Form to automate this process as well. So simply go to ANI ten for example, search for Type FOM, it will have Ty fom trigger as well. It is as simple. We don't have to make any crazy automation or go to make.com. Select your credential and that's it. I'm not going to show this because you are already smart and already ahead of me. Alright guys, I hope you implement this in your business straightaway because we are using this. Once anyone fill out the form, we are calling them by all of these necessary data points and don't be someone like this who doesn't get contacted after 48 hours or even a month. 14. Appointment Reminder AI Voice Agent with n8n: Hi, it's Lee Genman here. And in this lecture, I'm going to show you an amazing use case of AI voice agent, which are appointment reminder assistant. For instance, if you are having a meeting at around three to 4:00 P.M. Right, and you want to decrease the nose rates of your clients as well as your customers because a lot of time people forgot their meetings. So what our EI voice assistant will do is just before 1 hour of the meeting for our example, which is 2:00 P.M. It will call our client and we'll say, Hey, first name, we have meeting in are you ready or not. If they want to reschedule it, our AI voice agent will be able to reschedule it at that moment. That's the beauty of using this reminder assistant. Trust me, this type of reminder agents are very useful because your client will feel that you are more inclined to having a talk with them or to having this meeting. I will decrease inertial rate and it will increase the conversion rate. This is a demo, for example, this is the thing that we are going to build to start from going to use retail E, we are going to use Aten or any CRM application in our example, Google Sheet, where we will store all the information of our client. This is the pre call status if our client is yet to be called or it has already been called. Don't worry, let us build from scratch. How, let's say you are manually setting up the appointments for your prospects. We need to first make sure that we create a calendar event that will be also done by this workflow. For instance, if you are manually adding appointments in your calendar because you have the name, you have the email and the appointment booking time, don't worry, you don't have to do it manually by using this workflow, it will automatically create event in your Google calendar. For instance, it will create this type of calendar event, and our A voice agent will be able to call that just before 1 hour. So first of all, let us start from scratch, and since this is test or demo, we are going to use trigger manually. All right. Now the next thing is, you have the data of your prospect name, their email address, and the appointment booking time. Now, we need to create event in Google calendar, you have to manually do it manually select this and then select the time, select the date, select the no you don't have to do it manually. So by using this workflow, you will be able to do it very easily. So what we're doing is we are adding the data, click on data transformation, click on Edit fields, and here we will select the JSN code. For instance, we can easily name the JSN's code. Let's say we have the first name, I'm using my name as an example, then we have the email. Then we'll be our appointment starting time and appointment ending time. Event start date, and in this date, it will also include the timing, 25th and the timing is at 3:00 P.M. Same goes for event end date. Let us copy this event end date, so we will just add 1 hour here, which is 3:00 P.M. To 4:00 P.M. Can also add another data points as per liking. For example, you want to add that level of personalization, you want to fetch out or you want to add that business problem in your calendar event. You can easily do that. Let's say I want to cut down my staff by using voice agent. Yeah, that's pretty much it. That's all you need to add here. Another thing that you can add is time for the meeting, what is the time length or the duration of the meeting. In our example is 1 hour. Have manually edited the data. Now towards me, this entire workflow will be so much easier for you. So what we are doing is we have this information. We will create our Google calendar event using this information. You can also add a GSN schema for here. For instance, if you're having Google Sheet, where you track all of this information, so you can simply put Google Sheet. Before that, here you can put Google Sheet and then you can mare those fields so that it will be automatically changing from every single mother prospect. But to save some time, I'm not doing it and I'm adding the data manually. I hope this makes sense, nothing too crazy. Now, what it will do is, since we have this data, it will create a Google calendar event. So search for Google calendar, and what we are doing is we are creating an event. Now, select your account operation is create select your calendar. I'm using this one, the start time. Now, in order to get the start time, we are going to execute the previous node that we have added the data manually. So click on it, ah, we have this event start date. Simply put this JavaScript code or Jason's that's all you need to do. It will automatically create at 25th January at 3:00 P.M. To 4:00 P.M. Now, if you click on Test Step, it will automatically create a Google calendar event in your calendar. For instance, let me show you. Output was successful Green tick, you can see it has added the event. Feel free to add the customization, for example, the name of the event, et cetera, et cetera. So in order to add the description, in order to add the event name, click on AD fields here, you can add the location, guess description, bunch of things. But yeah, I hope you understand it. That's not the main goal here. The main goal here is to set up this automation. All right, so all of these nodes are executed successfully. Now, what we need to do is we need to create a math function. So what that math function will do is it will wait for 1 hour before that meeting and exactly before the 1 hour, it will trigger our outbound call by using our retail AI voice. Before doing so, it's always best if you add this data into your CRM in our example, which is Google Sheet so that we can track the management of our Avoice agent, are they calling this prospect or not, and we can easily scam and scan through Google Sheet. So let us open Google Sheet. Alright, I have created this Google Sheet of name, email, pre call means if our Avoice assistant has called the prospect or not, and this is the problem. Let us go back. Let us add Google Sheet here. Here we are appending the row. Opending row in Google Sheet basically means adding arrow. Click on Uenow in Sheets. Now select your Google Sheet in my example, retail AI CRM and your sheet name. To be honest, it is similarly to mic.com. You can easily create this automation in mig dot hom as well. But in Anten it is very easy and it is even costlier. So that's why I use Antin. Now let us add values to SN. So we need the name to be added in the CRM or in our Google Shet and if you are using Antin for the first time, it might feel overwhelming to you, but don't worry. I'm here, just follow along. Now in precall it will be fixed. So first, what we need to do is we need to add the thing. The prospect is not called yet, so we can say no or not call and the problem. And what we will do is, once our Air Voice agent has called our prospect, it will change from no to called. I hope this makes sense. We have already done that in main.com. Yeah, that's all you need to do. That's all the things that you need to add in Google Sheet. So once we click on Test tap, it will add this thing. So let us click on Test. Awesome. So we have the name, email, the status is not called yet and the problem. Let us go back. And now we will divide into two different paths. If the prospect is already called, for example, it is if the prospect is already called, it will not call our prospect again because we don't want to be annoying. But if the prospect is not called yet, it will follow an outbound procedure call by using retail EI. So what we can do is we can create an if and else condition. Clicon plus, and we are going to use the flow. So if N's condition like true and false. All right. So the value here is obviously we are going to use pcall why pre call? Because we can easily identify if the prospect is contacted or not is not equal to clicon string. So if the prospect is not call, for example, is not equal to call, it will follow and make an outbound call. Let me show you what I'm. This is our I. This is our I module. If it is true, in our case, what is true is if it is precall is not call and any other word, it will make this outbound call. It will go to retail AI and make the call. But if this is false, which means that this precall is equal to call, it will not do anything. Allied. So that's it. That's all you need to do here. So yeah, if it is true, it will make a call. If it is fall, it will do nothing. And search for? Nothing. No operation, do nothing. Yeah, that's it. You don't need to configure anything here. And if it is true, it will go to retail AI and make an outbound call. But first, we need to add our math operation here, which is a weight function. So how long it should wait before it should make an outbound call to say, like, Hey, we have a meeting in 1 hour. So this is the wait. By default, it is like five second only, but we have to add a math function here. Instance, it is our appointment date and time. So what we need to do is minus or subtract 1 hour from this appointment. I hope this makes sense. It is a simple math only. So instead of fix, we are going to use expression obviously because it will be changing every single time. Now, we need to get some payload here, so click on execute previous node. Yeah. We have the payload now, and in order to create this math function, use EI. I'm not going to show it to you because I already know how to create this math function, but I just want to show you the brainstorming process, how we can use EI to create these type of formulas. For instance, if you want to add 1 hour, if you want to -5 hours, you want to have appointment reminder, even after two days, even after three days, you can easily configure that. That's why I'm not silver feeding you and I want to show you the beckon process on how you can create this type of robust A voice assistant. In resume, we will say at specific time. Do call at specific time. What is the data in time? Obviously the data time will be our events start date -1 hour, right? But how do we create a math function for this? So let us go to GPT or cloud. So we can say, do you know how to do math formula or math operation in any ten? Just feel free to ask anything to Cloud or GPT, and it will be able to answer it. Yeah, so it does know about to resume it or specific task. So we will say, we have this data. We want to subtract 1 hour for it. For instance, I have a data and time from my Google calendar example. This is the one that we are using. I want to subpectOHur from it in nature, language, or NLP. Yeah, awesome. So we can use this formula. Again, both of these formula will work. Copy this. Let us go back to NTN. What it is trying to do is this is our math function of Daten time and it is minus minus means suprection of one ever. That's it. That's all you need to do. But here in input, we will add our events start date. I will show you. Paste the formula here. Click on Expression. Sorry, because it will be changing every single time. Yeah. So instead of this input all or cheese and start date, just remove it everything. Yeah, we will add our event start date. I hope this makes sense to you. It is nothing too crazy and you can see the output here, which is 14, right? So our event was at 13 sorry, the event was at 3:00 P.M. I will do an outbound call at 2:00 P.M. Awesome. Yeah, that's all you need to do. That's how you can create those type of appointment reminder assistant. Now all we need to do is make an outbound call by calling HTTP post request. We have done this so many times and I know you are expert at this. This is our method, URI and our headers. But before adding these parameters, let us create our AA voice agent in retail EI. Alright, I have gone ahead and created this prompt for you, to be honest, it is very simple. That's why I don't want to waste your time. All we are doing is we are telling our voice agent to let the user know that we will be having meeting or we will see them in 1 hour and ask them if they will be joining in the meeting or not. If they are joining the meeting and the call right over there and if they are not joining the meeting, ask for the reschedulement time and we and reschedulement appointment by using this function section. Pretty easy. All you need to add is check availability and book on calendar function. Lastly, we are activating the end call so that it will instantly end the call. And we are say goodbye to the mention mentioning we want to take more of your time and end with Ca later. This are our response guidance contacts, which is flux fortify the lead name. So these are the dynamic variables that we will be passing to our AI Voice agent from our Google Sheet. And this is the business problem. All right, so these are the things that we will use in our API reference or when we are doing the outbound calls by using API documentation. Since we have the business problem and lead name, yeah, we are good. Let us go to API documentation, go to API reference and let us create a phone call. Click on try it. If you're watching this course after sometimes, there might be some ERU exchange, but to be honest, the fundamental will always remain the same. Don't worry, something will be here and there, nothing too crazy. Add your API key here and from phone number, which phone number that you are assigning for a retail EI agent? I have assigned this phone number for our callback EI agent. All right, so let us copy this phone number. Let's paste it here and the number that you will be calling to. Our agent ID, you will be able to find it here and I'm using real time. That's why there is no test LLM option. And let us add the dynamic variable. So the dynamic variable we will be calling our lead name, make sure the dynamic variable are exactly the same that you are calling in your prompt because they are case sensitive. Lead name and let us enter any demo name and business problem. Yeah, that's pretty much it. Now let us copy the curl code. Let us go back to our NATen past. First of all, let us copy the URI or sorry URL. Then in headers, we are passing authorization and bearer space our API key. Awesome. Now let us send our CL code. We are going to select raw in Contact type applications JCNN in body, click on Expression and not fix because these phone numbers, this lead name will be always changing. I hope this is making sense to you. So instead of phone number, you can collect the phone number manually as well from this edit field, but I'm leaving it as it is, and in retail dynamic variable. Replace with these variables. Awesome. Yeah, that's all you need to do. Lastly, what we are doing is we want to update this no to call so that we can know that this Avoice agent has called this prospect. So what we will do is we will upgrade the row in our Google Shet. So search for Google Sheets. So the operation we will select is append or update row. Select your Google Sheet. It is just the same as.com. Now column to match too, so we don't want to update any random row in our Google Sheet, right? So what we will match is from emails because there might be two prospect with similar name in your Google Sheet or in your CRM. That's why we are going to match by using email because email is unique for every prospect. What we are going to match or what we are going to use the column to match on is email one and select the sorry, execute, first of all, previous node so that it has payload. Okay. So it won't execute because we are waiting here. So as of now, let us disconnect this node because otherwise it won't make the call for our testing purpose. But I hope you understand how you can add this math function by using chat GPT or Cloud in order to make your customization for a reminder appointment agent. Perhaps let us test this app. Yeah, the issue is we have to select the post method. All right, so you will get a call. Yeah. And we need to convert the pre call from no to call. Let us test this step, and it should get converted to call because since it has made the outbound call. Alright, so that's what the scenario was about. And if we want to select this another path, for instance, if this prospect is already called, it will follow this path. So let us run this once again. Let us click on test workflow, so it will run run run. Hello, Lathan Patel. This is Sam from Flux 45. Hi, Sam. I'm calling to remind you about our meeting in 1 hour. Can we count on your commitment? Alright, so this is how your workflow will follow. So let us test the step one more time. Yeah, I should get a call now. Hello, Manton Patel. This is Sam from Flux fortify. Hi, Sam. I'm calling to remind you about our meeting in 1 hour regarding AI voice agents. Can we count on your commitment for the call? Yeah, I will be there. Great. We won't take up more of your time. See you later. And it cut the call because we are calling the end call function. Yeah. I hope you understand how you can create this type of appointment to remind a voice agent so that it decreases your no sure rate and increases the level of personalization for your customer, as well as for your clients. All right. I hope this makes sense. Just add the workflow of wait here so it will wait and exit at 1 hour before the meeting, I will do the outbound call. All right, that's all for this lecture. If you need any help, setting up this type of workflows, just let me know and I will help you out. Bye bye, take care, and I will see you in another one. 15. Using AI Agents for Business Promotion, Upsells, and Sales: Hi, guys, it's month in year, and in today's lecture, we are going to show you how to create EA voice agent that can do Opsel or any promotion for a business or a client's business. In this scenario, we are taking an example of a dental Opsel offer. So let me show you rather than just me talking. So let us test our demo product, and we are going to build this by using Anti workflow. So when I will click on this test workflow, I will get a call. Hello, Manny. This is Dan from LGM Dental Care. Am I catching up with you at the right time? Yeah, you are. And how did you get my number? I can see from our records that you visited us back in April for some cavity and gum problems. Hope those are better now, Mate. Got a brilliant promotion to tell you about the free dental checkup. Got 5 minutes to chat about it. Okay, so you are promoting a free dental checkup, right? Yeah, I heard 5 minutes to talk about it. That's right, Mate. Since your last visit was for cavity and gum issues, it's proper important to keep an eye on those. This free checkup is valid until January 20. Would you be interested in scheduling an appointment? When would work best for you? Yeah, yeah. Let's do it. Let's do tomorrow at 2:00 P.M. Let me check if we have that slot available for you. Brilliant. That slots available tomorrow at 2:00 P.M. I already have your name as Manny and email as Manthami 37@gmail.com. Could you confirm if these details are correct before I book your appointment? Yeah, let's do it. Those are correct. Perfect. I booked your appointment for tomorrow at two PEM. Your appointments all set mate. Is there anything else you'd like to know about the checkup? No. Cheers Mt. Thank you very much. I will see you tomorrow. Cheers, Manny. Looking forward to seeing you tomorrow at 2:00 P.M. Take mate. Yeah. Did you see, I prompt my agent to act as a British and give voice in British section. So let us get started, and I will show you how we can create this type of voice agent that can do any promotion or upsell for a business or your client's business by using any time. I'll so let's start from scratch and build this together. First of all, we will start with Prom. I will use, let's say, Cloud this time, and let us choose a British section. Let's go for British and a male. Let us use Anthony. Hey, I'm your virtual assistant from RTL AI, here to help you handle all the calls. Anavus. Now let us write with role. We are saying you are then a virtual artificial assistant in communication with patients of Led Genman Dental Clinic located in UK. That's why we are giving it a pretty section. Ask of our assistant is to speak with user who has visited the clinic in the past. That's why you can see in the Google Sheet. We have the list of our customers who has visited us in the past, as well as for which reason their email, their name, and their phone number. What we are doing is we are trying to repich with another promotion offer or another upset. This is very important for any business who has around, let's say, 50,000, 60,000 phone numbers, and by using AI voice agent, they can call all the lead leads within a matter of five to seven days and they can do an upsell or promotion offer without they having to do anything. So we are going to use this Google Sheet as an example. Let's come back to our task. So you should call them and try to convince them about a free dental checkup promotion. It's time to give our Avoice agent kind of a conversation flow or a script that it should follow in the call. What we are trying to achieve here is we are trying to convince our prospect to get a free appointment or a free promotion offer in Dental Clinic by getting their appointment. If they are interested, we will ask them to book an appointment, and then we'll book an appointment since we already have their name as well as their email. All right, so we need to add, first of all, check calendar availability and book on calendar. So I will do that. Here we go, add your API key here, event type and your time zone. Click on say Let's do the same for book and calendar. Awesome. Now let us give it a script. Step one is ask the user if they have five minute free since we are calling them about an amazing new promotion. If the user is interested, you should ask the user when they are available to schedule the appointment. Once you have got that information, check availability in the calendar. In case there is no availability, tell the user to change the date or change the time. Now move on to next step, which is after checking the availability, we have the email as well as we have their name. You should book an appointment by using this function and once step is done, you should notify the user that appointment has been booked or successfully. After the user doesn't have any equation, we should end the call. All right, so we are calling the en call function as well. Let us add ncallFunction. Awesome. So this will be our conversation flow that our AIVice agent will follow. Even if you have some knowledge base that you want to add, feel free to do it. So for example, if you have some FAQs or question and answers that you got frequently asked by your customers or by your patients, you can add it here. Let's add a new knowledge base. I'm just quickly showing you. We are going after Lead Jen Man, Dental clinic. I for document, you can easily add your website, as well as upload any PDF file that you have. But as of now, let us use text only. So I have added question and answer I will save it. Et's go back to our agent and add your knowledge base here. Click on refresh, and here we have it. Also, feel free to play around with speech setting. You can also use keywords that you often use in your niche in our nice example, which is dental. Let us enable this option of B channeling. And if you are using any accent, for example, is action, you can add pronunciation here as well. All right, so we have our knowledge base ready. Again, if you are HIPA compliant, you can turn of this as well. I won't record the call. It's time to give some response guidance to our Avoice agent, since we are creating our A voice agent a British, we are going to use made brilliant proper and to end call, we must use the function call. This is al guidance that you can give to your A voice agent as per your preference or your liking. Now we need to make sure that we are getting this information, right? We need to know about their last visit or what they have done last time, as well as when they have visited us last. These are basic response guidance that you can add and give to your AVOice agent as per your use case and your industry. But we need to give all of this information to our AVSe agent, which is retails, like when they have last visited us and what they have did. As well as we need to get their name, email, and their phone number. All right. So let us go back to our retail agent and we'll add all of this information in a caller information. So let us go above and then create Caller information. Since we are going to do an outbound call, that's why we need to give all of this information here, as well as we can use this information in welcome message. Amazing, we have their name, email, last visited date, and their details. Now these are dynamic variables that we will be using in AATen. Alright so let us go to ANI ten, and feel free to use any workflow or create a new workflow. Let's say, dental care deletion. Now the first step is we need to trigger this Google Sheet, right? So this will be our first step. So click on it and we can do a trigger manually or you can also have after waiting for 50 minutes, it will check every single 50 minute if there is a neuro edit or not. But as this is an example, we are going to use Tigger manually. And then we need to connect with our Google Sheet. Search for Google Sheet. Make sure you have connected your account with it. And what we are doing is we are finding that prospect. So click on GetRos select your document as well as your sheet. Click on Test tab and it will get all the payload. Awesome, you can see here, Rod number two phone number, details, Owner last visited and their email. I'm just giving an example. Right now, I have only one Row. But, for instance, if you are in insurance company and you want to upset a credit card of our mortgage or insurance software, you will have, for example, thousands and thousands of leads. But as this is an example, I'm just using one row. I hope this makes sense. Alright, we are configured with our Google Sheet. Now what we need to do is we need to make a post call or we need to do outbound call of retail EI. So click on it, and what we will do is, we will get that HTTP request. So if you go to API reference, we will need to create a phone call. So let us come back to Nitin and search for HTTP request. So what it will do is it will make a post call to our retail ER assistant. In methods, click on post, you can see, I'm not creating out of thinner. It is mentioned in the documentation. And this is our URL, copy it and paste it here. In headers, we need to add the authorization and our API key. So click on to it. Yeah, they have this new documentation. So we have the authorization. Let's copy it. Let's paste it here. Same goes for bearer and our APIK. Type B space and paste your APIK. Now in body, what we are sending is we want to send all of this dynamic variable to our assistant, white? So our body type content will be raw and it will be applications JSN since we are writing our JSN code and giving out to our Avoice agent. So let us go back to our retail O N I know you can easily create outbound calls and you are expert at it. From number will be basically our AI voice assistant or our retail number. Let us go to Retail, click on phone numbers, select any number that you want, but make sure that in outbound calls, you are selecting our agent, Dental promotion agent. Otherwise, it won't work. Copy your number, paste it here, as well as which number you're going to do and outbound call. Again, it is an example, so you can feel free to add as many number or you can add any random number as you like. In override agent ID, copy your ID from here. Copied and pasted in dynamic variables, what we want to get is obviously these details, name, last visited and their email. So we need to add those properties or dynamic variable here. First, we have his name and make sure the spelling is same that we are calling it in our prompt. Click on Enter, so it will create a field. And for this example, you can use any random name. Let's say Lead Jenman it is just to give our call code to us. Let us add another property which is the email Similar goes to last visited date. So this will be a dynamic variable. Let's add our date here and the details of the last visit. Let's copy it and paste it from here. Awesome. You can add as many data points or dynamic variable as you like. But in our example, I just want to keep it short and simple. The goal here is to get you understand how you can get outbound calls and add all of the specification as per your liking. All right. Now we will have our call code on the right hand side. Copy it from here till the end of Calibacket. Don't include the quotation mark. We have our two number override agent ID and our dynamic variables. Amazing. Copy it and let us go to NATN the body, we will paste it. But make sure you're not pasting in fix because these are dynamic variables, right? This will be changing from every single one of the users. So we don't want to keep it fixed. That's why I select expression because in expression, we can use Jason's code or JavaScript, and we can add dynamic variable right over there. Click on this Expand so that we have a good view and paste our code here. Now let us change the phone number. To the one we are getting here. Or to the one that will be in the Google Sheet, feel free to use other CRM tools like Air table, HubSpot, click upp, whatever you like. But most of you guys will be familiar with Google Sheet. That's why I'm using it. We don't need to change our assistant ID. All we need to change is this dynamic variables. We have the name email the date. And the details. The main reason of using JavaScript is it will change the dynamic variable for each user. Alright, that's pretty much it. Even you can test the request or test the step and it will call you with the number that you have provided here. Awesome. So let us go back to our Canvas. All right. I think we are pretty good. Even you can have another filter or another column of new. And once the EI agent has called that phone number, it will convert it into call or something like, Okay, it's done. We have done that in some of the previous lecture in make.com. It is similar like that. But instead, we are using ANI ten because it is much better, cheaper to use than make.com. All right, I think we are pretty much good. Let us finalize our prompt. The upper man duration is 30 minutes and we can also emphasize on the points again, it's worth noting that the reason you have call is we have previously visited with this reason and on this date. All right. Not to forget we have to give our AVOe Asian current date and time. Today return time is this current retain time, and we don't have to create a dynamic variable for this because retail here is inbuilt current return time feature, which is current return time. Now, I'm simply saying convert this, which will be in Los Angeles or American time zone to my Indian time zone or ISD. Feel free to add your time zone here. That's say, it will automatically convert the time into your time zone and book appointment in that time zone only, not in USA. And lastly, we can give some expression of Britt section like Um yeah, something like that. Use British spelling center organization and we are saying that you have the function of book appointment and call and check our calendar availity. All right, I think that's pretty much it and we have also added the knowledge base. In knowledge base, we have mentioned your dental clinic is open to nine to five Monday to Friday, an book appointment on Saturday to Sunday, something like that. Awesome, I think we are good to go and it's time to test our agent. Let's go to Aten and click on Test workflow. You will get a call with the number that you have added here. Let's test our workflow. Yeah. Hello, who's this? Hello, mate. I'm Dan from Lee Gen Man Dental Clinic. I noticed you visited us back in April for some cavity and gum concerns. Got a moment to chat about a brilliant promotion we're running. Yeah, how did you got my number, butt? Well, mate, we have your details from your visit on April 23 when you came in for those cavity and gum issues. We're reaching out to our valued patients with a special offer a free dental checkup. Would you be interested in hearing more about it? Yeah, pinot. Brilliant. We're offering a free dental checkup valid until January 20. Given your previous gum concerns, it'd be proper smart to get them checked. When would be a good time for you to pop in? We can check our availability. Yeah, let's do. Yeah, yeah, I would love to come and have, like, free dental promo. So let's do tomorrow. Let me check what slots we have available for tomorrow. Brilliant. We've got several slots available tomorrow. Would you prefer morning or afternoon? Each checkup takes about 30 minutes. Yeah, awesome. Let's do at 11:00 A.M. I guess. Works for you. Perfect old book that 11 slot for you right away. Brilliant to your appointment is confirmed for tomorrow at 11 Em. Anything else you'd like to know about the checkup mate? No, can you check? What's my email that you have book? Is made, I can see we have your email as Mantom 037@gmail.com. Is that correct? Yeah. So just to confirm you're all set. Yeah, awesome, man. Awesome. Thank you very much. And when I say his Mt Cheers Make. Thanks for your time. Looking forward to seeing you tomorrow at Lebanin. You see by using our function of call, it will automatically cut the call so that it will reduce your pricing per minute, which is this. It makes sense. Now if I had said no, it will hang up the call as well. Nothing crazy, but I just want to show you how we can use NA ten by using Google Sheet or how we can try to upsell or promote more offer or more product of your business or your client's business, simple by using our EI outbound system. That's pretty much it. And I don't think there's much more to cover right now, but feel free to play around with it as well as in welcome message. We can say hello name, so it will see my name. I am then from LGM or Led Genmen Dental Care, LGM Care. Am I catching up you at the right time? So that it will add the personalization in the first introduction line. Let us test it again. Hello, Manny. I'm Dan LG and Kara. Am I catching up with you at the right time? Yeah, yeah, you are. All right, so I hope this makes sense. Feel free to add dynamic variable. Even you can test your LLM from here. For example, if you want to know the current date and time, you can ask. Can you tell me current date and time? All right. Right now it's Wednesday January 8. Awesome. So current date is January 8, 15:00 P.M. ISD. Alright that's all for it, and I will see you in the next lecture. Yeah. One more thing is, you might see last visited on and details are in form of a dynamic variable and not are replaced by the one we are having in the Google Sheet. The reason is here we are not feeding anything. It is going on the back end, we are making our outbound call from EPA reference and not from our agent. The agent is just for the prompt only and not for testing. I hope this makes sense, nothing too crazy. What we are doing is we are making an outpom call from the backend system and not by using this test audio or test LLM. All right cheers mate and I will see you in the next one. 16. Full-Stack Real Estate Multi-Prompt AI Voice Agent: No, in Canvas, we have a starting point. Starting point basically can we mean that first of all, worm intro or greetings, and then we are asking, do you want to buy home in this particular city or in this particular town, or do you want to buy home in general? And if the user says, yes, then we can go into this fine property where we will ask our ER agent to ask user to what type of home they like, how many number of bedrooms. And then what we can do is we can find that or extract this data. From Google Sheet, give them back to our A agent, and then we can say, yeah, we have 34 different listing at this street address. And if the user is interested, then we can book an appointment or schedule a tool. But if user is not interested, we can have another node, which is end call. But if user is busy and he or she want to call back after some time, then we can create third agent or third assistant for that particular task. So let's start with the starting point. So click on Add New State. Now let us rename we can say greetings. Here, we have to add the prompt, and in this prompt, we have to define only the task or give some knowledge about what we want to achieve from this state. Have the tools. It is very similar to what we have been building in single state. Don't worry. I'm here. It is very easy, nothing too crazy. First of all, we have to define the universal prompt here. We only have to give three building blocks. The first is we have to give identity to our EI voice agent. Second, we have to give style or what kind of tone you want from EI agent. And the third is response guidance. We will add those tasks and goals in the promptory. So first of all, let us write the first three building blocks. We can go with Mira and select your language. I will use this one and feel free to change the model as per your liking. And I already have gone ahead and write the prompt for three building blocks, so I will copy and paste it here. We can write our prompt, something like this. First, we have the role. You are named Sarah, and you are skilled real estate advisor at this property. This is our style. We professional, create a worm connection, and our response guidance. Stay focused, address one property expect at a time, and not just ramble along. Be approachable, keep it fresh. This prompt is applicable to all the sub nodes that we will be creating. All right, it is like a general guidance or a universal now let us save this and feel free to add the knowledge base and change the speech settings if you like. But it will make this lecture very lengthy. Let us edit our tree prompt. But first, let us configure with the welcome message. Let us go with the define one, and we can also give the first name or we can add that personalization with our users. For example, hello first name, I am Sarah from SunVewPperties. Am I catching up at a good time? Yeah, something like this. You can also add dynamic variables if you want to test out and don't want to add those Google Sheet and make.com scenarios. Click on this Double Cali brackets and we can name the first variable and the value. For instance, we have named the variable as first name, right here. And then we can enter a value to test it out. I will say my name. Click on save you can also add another variables as many as you like. Now let us go to promptu. All right. So we have the greetings. But before giving a task, we just need to give some context or background details of what we want to achieve from this state. So we can write something like contacts or background context. The user is calling to buy in property, and now you can define your task. I hope this makes sense. Just we need to give some context or some brief overview about this state to our LLM. Then here we have task and goals. First, we need to make sure that we get important information if the user is interested in buying property or not, and we don't want to ramble along. Like we have this listing here, we have this listing here. No. We have to first ask the user gently if he or she is interested in buying property or not, or they want to end the call or they are busy somewhere or they can reschedule the call afterwards. We're going to define here. The first task is to greet the customer. Extend a worm greeting to your customer and you can see I'm adding the dynamic variable that we will be using in the call and ask this if it is a good time to call or not. If not, transition to callback. What we will do is we will add another state and it will transition. Make sure you are using the word transition or direct to this particular state and let us name this state as callback, so we will do that later. But what it will do is it will transition. You can simply connect the state by using this node, and it will pop up the edge branch. I will explain what is edge. But first of all, let us complete the prompt. If it is not a good time, transition to callback. But if it is a good time, then ask the user that they have shown interest in buying property, and how can I assist them further. If is informed first name that the reason for your call is because they have shown interest in buying property. Therefore, you're reaching out to see how you can assist them further. Now, second point could be if the user is interested in buying property, transition to search property state. We'll add another state. This will be search property where it will search and find relevant property that our user has been asking for. And then we are going to add another stage which is appointment booking. But as of now, let us focus on these two. And if user is not interested, call function of call to hang up. We can add the function from here. You can select the call the call when the user is not interested or you are instructed to do it. All right, so we it the end call function. Make sure the name is similar to this. Lastly, we can add another function of transfer to human or transfer to agent. For instance, if the user want to talk with a human or an agent, it will transfer the call to human repacitative. Let us add that tool as well, which is call transfer. Make sure the name is similar to this. Add your number here, and what is the transfer time that you want? Do you want a cold or do you want a worm? Worm basically means it will give brief context or brief summary to the person who will be attending the call with our user, you can use retail agent's phone number or transfers his number. Alright that's pretty much it, I will again summarize what we have done here is, first of all, we have given brief context about our situation. Then comes the task. First, we are greeting the customer, asking them if it is a good time to talk or not. If es, then we are informing them that you recently have shown interest in buying property, and thereafter, we are reaching out to help you. And if the user is interested in buying property, we will transition to search property. And if our user is not, we will use the end call function to end the call. Awesome. So that's pretty much it. Now let us configure these two states. First of all, let us rename it search properties. Again, we have to give context or background information first. Then we can start with task. Our task is to give listing similar to what user is looking for. For instance, if the user is looking for Seattle area and he or she want one room bedroom and their budget is our EI or our EI voice agent will gather all the listings that is similar to it, and then it will response bad to our user. Our task will be ask questions about the property needs, which is first of all, the location area. We have our location as well as our area. Then the type of home that they are looking for. That can be apartment, duplex condo, townhouse, whatever they are looking for. The number of bedrooms, any specific amenities like gym, pool, garage, something like it. Feel free to adjust the column. I'm just giving you an example. And then their budget because it is the main thing for everyone. All right. After gathering all of this question from users, what we will do is we will call and make.com scenario automation that will find all the relevant similar listing to what user is looking for. What we will do is we will add and function custom function here, let's say, find property. We can describe it as find relevant properties that the user is asking for, and this is where our URL will go. Let us go to make.com scenario. We are going to start from scratch. Again, you will know what we are going to do, which is we have to grab the webbook obviously and then paste it into our URL. Let's say find properties. Simple as that, copy it and click on. Save it. Let us rename as well. URL here in parameters, what we want to extract from this function. We want to extract the property type, sorry, the location, the type of home, number of bedrooms, amenities, budget, that's it. We have to write custom query code or Jason schema for that. Again, don't worry, it is very easy, just go to Chair GPT and tell it or you can go to Cloud as well. Just what you can do is copy this as well as you can copy the examples. After you have given enough context on how to write GSN schema for EIvoye agent on retail EI, you can say, give me my SN schema for finding out the type of home number of Batums amenities budget, and it will do that. All right, so we can say, now I want you to write. We can enter our prompt as well. It will automatically know. And retail EI makes it very easy to use parameters because we have this format SN as well. So it will automatically format our code or JSN so that our LLM can understand it in much better way. Here we go. We have the type which is same. This thing will be always same in our JCN schema. Property will begin the same. Then we have the type which is string and description, the user is looking for this property. Then we have the property type, which basically means the type of form after that number of bedrooms, amenities, and budget. Alright so let's copy it and paste it here. When you see like it is so easy to create JCN chemo by using AI. Nothing too crazy and click on format JSN. Let us disable this feature or speak during execution. Awesome. That's it. Now let us call this function. Don't forget to call function in your problem. Otherwise, our AI won't know what to do. Once all necessary information is collected, call this function and the function should be run with following inputs area property type, number of bedrooms, budget, and amenities. Why we are using function is these specific things only will get transferred to our mag.com scenario. So what this function will extract information is area property type, number of bedrooms, amenities and budget. What we can do in our mg.com scenario is we can first of all, match those with our Google Sheet. Let us connect our Google Sheet here what we are doing is we are searching for rows and matching them. So we can use Search Row, select your account, as well as your spreadsheet. I'm using real estate properties in USA. And how we are going to use look alike listing in our Google Sheet is we will filter them by area. For instance, if you are using look alike feature of number of bedrooms, it won't generate proper answer because first question we are going to ask to our user is, which area do you want to live in? If they want to live into let's say Portland or Tacoma, we are going to use look alike feature of area only. Select the column of area. Equals to the result that we will be getting from that Weboo. Right now, we don't have any fields, so we'll do it later on. But as of now, click on Okay. Let us go back to our retail. The third task could be recommend this property to them. Only mention the following information, which is street name, price, and related amenities. We don't want to bust out all of this information because it is unnecessary. They already ask for a number of bedrooms could be like five. We don't want to repeat that information back to our user. So we are only repeating with information which is street name. Here is a street name, price and related amenities. An user is not satisfied with the recommendation, allowed to change them the criteria and call that function again. Last step could be if they are interested in buying property, we can schedule a call or booking meeting or if they are not interested, we can end the call right over there. Ask them whether they are interested in booking an in person tour or not, I s transferred to this appointment booking state. We are going to create that just in a second. And if not, call ncallFunction to hang up politely and say we reach out if any interesting properties pop up. And if no, call the ncallFunction. So we have to add that as well. And the user says no. Awesome. Now let us create another state for appointment booking. Click on New State, and you can delete state from here. I like this pretty much it. I think we are good to go. Now let's connect these two states with the edge information. I will explain what our edge. He basically means what information do you want to pass out from first stage to the second one? For instance, if you want to pass out information like if the user is looking for condo or apartment, and you want to pass that information to the next agent in the sequence, we can use edge. Let us open edge. This is a pass condition. The condition that triggered the transition to the next state. We can describe the condition. First name is interested in buying opportunity or property. Because this specific agent is only for appointment booking if the user is interested. As well as if you want to give additional information to this next agent in the line, for example, the number of house, the street address, everything, feel free to use Jason's schema for it. Again, go to hat GPT or Cloud and write your JS schema here. All right. But right now I'm not doing it, otherwise, it will make this lecture very lengthy, but use the example, use the object or use the property that you want to shift to the next state. That's simple. Let us write the prompt for this one. This is appointment booking. Now, I guess you have provided this, which is to add the function of check availity and book availability. Let us give first contexts. We can write first name, wants to book appointment as they have or they are interested in buying property. Now we can add our task here. As user when they are available for the tour, call function, which is our check availity. Again, this is very easy. I have copy and pasted from one of the earlier proms that we have used in the course. So criqonEd and let's add, first of all, check avaibility and book appointment on our calendar. That's pretty much it to your EPI keys here, event ID, and your time zone. We're calling the end call function here as well. If the user doesn't have an equation, end the call. As well as make sure the name of the function is similar to one that you are defining. Awesome. And the next branch was if the user is busy right now and don't have typo talk, what we are doing is we are scheduling a callback. So as you can see here, if this is not a good time, transition to callback. So first of all, let us f name to callback. We will give background or context and write the task after. Our background is Monday to Friday nine to five ISD and you cannot schedule a callback that's in the past. The task is ask the user for a good time to call or schedule a call back. Check if the user has provided the time within the business hours. If not, go back to the step one to get the time again. And if the user has provided with the call time, we can end the call right over there, so we can use and call function here. Otherwise, our Avoice agent won't cut the call it will increase your pricing of your Avoice agent. Although, that's pretty much it. Congratulations. You have just built your multi state EI agent, let's test it. Click on Save, even you can add another node or another branch here, for example, if the user want to submit a question or submit a note to the founder or to the person who has this property, we can do that as well. For example, let us COVID Submit a note. We can say something like ask the user what node or question they want to submit to the owner if the node content is not already provided. Once the node is provided, we're going to confirm back with the user. And we can easily store this information in post call analysis and then give that post call analysis to our Google Sheet. All right, that's pretty much it. We define this in the starting stage. If the first name wants to submit any notes or question to the owner, then we can say transition to this state of submit a note. That's pretty much it. Feel free to add as many branches in your promptry. You can see we are able to do so many things by using multi state agents. We won't have to create separate assistant for each of those tags, and if you're going to add all of this information and all of the prompt inverse single state agents, I promise it will hallucinate and provide wrong answer and will decrease the efficiency of your Airboye agent. That's why we use multistate agent. Now let us click on Save and then connect it. You can also connect appointment booking state or assistant to submit a node. We can write it here, for example, if first name has any e or doubts to the owner, then rasition to this state. Awesome, don't forget to save it. Otherwise, it won't work. Yeah. Now, let us test our AI voice agent. Yeah, but one thing is remaining is we haven't set up our make.com scenario. Let us trigger our webbook because we don't have any payload here. You can see we don't have any data to map. So let us trigger this, click on run this model once, go back to our AA Voice agent and click on test. Even you can use LLM to save your time. I want to buy an apartment in Seattle. What we are triggering here is we want to, first of all, get specific amenities and everything. You can also see tool invocation, transfer tool search properties. Now, make sure that you are triggering these specific things. Otherwise, your EA agent or your webbook won't trigger. So we have to give all of this information just as an example. Budget is 300 and for amenities, and these are the things that our AI voice agent will speak. But to save over time, we are using this test LLM option. I did pool and three bedrooms. Let us send this and then it will trigger you can see it trigger our fine property. And the arguments or the specific collection that we have got is area specific amenities, property type, number of bedroom, and the budget. Awesome. And now we're able to find out or you can see we will have the additional fill of mapping. And now what is our look alike option is area, because if we are going after pools, it can have pool in CATL, it can have pool in another area. But the user is interested in finding the property in this area only. So that's why we are going to use area. Awesome, that's pretty much it. Click on Okay now what we are going to do is since we have this information, let us run this model one. I will show you. For Area, it is select Seattle, it will pull all the information or all the columns that are in Seattle. So we have one, we have two, and you can see it is mapping all the fields as well. A the thing is they are in different bundles. We want to do is we want to collect them in only one bundle or one array. What we are going to do is we are going to use tools to combine all of them. Now what we will do is we will aggregate all this information in one JCN format so that we can give the JCN to JTPT which will act as a brain of our Airboye agent to finding out L properties that the user is asking for. So let us add another module, Let's search for aggregate. Go to JSON and aggregate to JSN. The source module that we are sourcing from is Google Sheet. Select Google Sheet. And then click on Create data structure. Let us add specification, for instance, name of the property. So we have to add all of this data structure. Just for example, I will show you the area obviously the type is text. Then let's add another item. First of all, what we have to do is we have to add all of this thing, I will show you. We have to add all of this data structure, example, area, full advice, type of form, number of condo, everything, and paste it one by one here. And why we are doing is it will format in a JCN string. For instance, we can specify the data type. Number of bedrooms would never be a string. It will be always a number. That's why we can define the data type in JCN schema. Same goes for the budget. We have square meters. All right, so let us go back to our data structure. We have defined the area. Now it's time to go for full as. Then type of form, and don't worry you won't how to create any of it. I will be providing this template in the resource section. So make sure to check it out. I know it is a manual work, but you only have to set this up for once. Thereafter we have budget and lastly, square meters. So all the information that you want to give to Cha GPT, add into the data structure, click on Sive let us use Cha GPT. You can use Cloud as well. Connect your account as well as the model that you like to use. I'm going to use foo. In messages, we can define by two messages. First is system message, which is hat GPT, and the second is user, which will be our user. I will show you the rule we are going to use first of all, is system. Here, we are going to tell our hat GPT how to give out the response of the property that user is looking for. For instance, we can say, you are a seasoned real estate representative. Your responsibility to determine the user's property preference and provide properties that fits those tastes. Important thing here is, you must return every property that meets the user criteria if there are several because we are going to use, for example, amenities, number of bedrooms, type of apartment, and make sure your response is readable by using bullet points. Just output the appropriate properties only and in one line sentence. Awesome. And the next thing we can add or next context we can provide to check GPT is, what specific things we want to output. For example, we only want to output the street name because we don't want to output number of bedrooms because we don't want to become repetitive. Otherwise, our AI voice agent will sound like a robot or repetitive. We only want to output, let's say, full address, the budget, and the amenities because the area will be already filtered out from our Google Sheet. In role of user, we can say something like, here is the user's preference. First is property type, let us add the field here, which is property type. Then number of bedrooms. A amenities that they are asking for, you can see have talk in our LLM which is pool and lastly budget. Now, where does our Chat GPT will find those information from Jesus schema? Because in Google Sheet, it will already filter out by using the area. I will display those results who are in the similar area. Here are the properties that we have available in that area. We are those in our SS strain? All right, so it is click on Okay. I hope this makes sense. We are defining the role or we are defining the persona of our Avoice agent and we are giving the user preference to give response in those only now click on Okay. That's pretty much it. Lastly, we need to send this information back to our Avoice agent via webookRsponse. As you know, Webook response and we can see message. Here is the result of chat GPT. So make sure you're mapping the field of open EI and then click on Okay. Now let us save this. Let us run this model once. Let us go back to our LLM. And the best part of using test LLM is you can save your response of the LLM so that if you are doing for future training, you can always come back and look whatever the response were. I want to buy property in. Let's go this time in Portland. Make sure it is listening to our response. Apartment, garage, four bedrooms. And my budget is $400. So you will be able to see it will trigger our automation in make.com. So the current state is greeting. Hello Manthan, as you can see, it has added the dynamic variable, we added here. I'm Sarah from SunsidePperty. Yeah, so we can say, I want to buy property. Seattle you can also see all the transition that is happening in those states. It is transferred to such property. Now, the type of property, for example, let us go for condo, two bedrooms, we like a gym and our budget could be, let's say, 400 k. You can see I have found some option for Imanthan here are a few condos in Seattle, Maple Street, price is similar like this. Fine Avenue price at this. Let us go to Google Shot. Alright, so let us filter out by. Yeah. So in Seattle, we have condo number of patoms It's two. A amenities, it has gym, and this is the price. Awesome, guys. So this is how you can build multistate agent in retail AI that will fetch the listing, similar to what user is asking for. We are using this scenario, and don't worry, I will be attaching in the resource section. As well as if you want to further go on and book an appointment, we can easily do it. For example, we can arrange an in person tool for one of these properties. We can say, Yeah, let's do it for first one Maple Street. Tomorrow at 4:00 P.M. Yeah. It is asking for name. Okay, it is asking for full name because it already has our name in our email. Okay, it has booked the appointment. Now let us go to this node, which is submit a node. If you have any question or need to reschedule, please free to follow. I just had one question to owner. And get that information you need. I just want to have coffees and cookies when I am coming tomorrow. I love that month and we will request for coffee and cookies during the tour tomorrow. All right, thanks. Yeah. That's how you can use or that's how you can switch from one state to another. Alright guys, that's all from my side, and feel free to play around with multi state agents because you can build more robust and more reliable AI voice agent in retail AI. All right, so I hope you found this lecture valuable. If you still have any doubts or concern, just let me know and we are always happy to help you. Bye bye. Take care. I'll see you in the next one. 17. The Perfect Receptionist: Hi, everyone. It's month and year. And in this lecture, I'm going to show you how to build a very powerful use case of AI voice agent, which is IVRT or call routing or call forwarding internally in enterprise business, or if you're building Avoice agent for enterprise business. So let me show you what I mean. For instance, you have your Avoice agent as a receipt enstwide. So this is our Air voice agent. Now, if any customer client or any prospect calls to our Avoice agent, let's say customer calls to our Avoice agent our prospect says, I want to talk with this particular person or this particular department, so our AIVice agent will be able to call forward or will be able to call route to particular person to particular department, whatever you guys have in your IVR thing. All right, this can be AX. If our customer want to talk with AX, our receptionist, first of all, will be able to answer all the user carries and concerns as well as we can add knowledge base. But if our customer really want to talk with this person, it will forward the call to AX. Same goes to if the customer want to talk with Manthan let us draw Manan here, if they want to talk with Suprava if they want to talk with Vivian She, Basically our receptionist will be first of all, able to identify the customer if they are in our lead list by using inbound calls. They will be able to handle all the user queries and concerns, plus they will be able to handle all the call forward that is known as IVR. All right, so this is actually very important US case because in any enterprise business, there are so many different departments. There are so many different people working there, and they are always having one receptionist. And if that prospect customer or client want to talk with them, the receptionist always forward the call to T. But now by using AVOice agent, fire that receptionist and use this IVR thing. All right, so let's build this step by step. I will show you everything. Let's clear our whiteboard. We are going to use A ten to call the Webbook as well as to respond to our retail A voice agent and any CRM solution that you are using. In our example, we are using Google Sheet. Let's create a multi prompt agent for this. Yeah, there is this new one thing which is conversation flow agent. We'll cover that as well. Right now, it is still in Beta. That's why it is not fully functional. But yeah, we will cover that. Als let us start with multi proromt agent at the start from blank. Let us rename it as choose the language, choose the model, voice, whatever you like, and the model. I have already gone ahead and created the prom for you so that you don't have to and we don't waste this time. Again, in multi prompt agent, the first three building block are common or universal, right? The things that we are going to add in this promptry is basically for task only. So for each agent or each assistant, we will assign particular task. But for this first three building block, which is identity style and response guidance, it is like the universal you are saying, Hi, I'm Alex, your friendly neighborhood IT expert. I style guidance, mix it up, chat like a friend, response, guidance, stay true, keep it flowing. Even if the message are bit calkar, figure out what the user means. This is very amazing line because sometimes if it is confusing, it is still able to try to interpret or comprehend the user's conversation. So let's save this, feel free to add the knowledge base here, but the main function that we are going to use is IVR or press digit, IVR navigation. So click on it. So this is the name and the description. Navigate to human agent of sales department. No, we don't want to have a particular department as of now, so navigate to human agent. Alright, let's save this and in welcome message, we can say EI begins with a defined message. Hello, or how can I now make sure that this function of press digit is in the universal agent or in the main agent and not sub agent that we are going to use in the promptry. Also, we are not going to use any webbook in the universal agent, we are going to add the webbook in this particular promptry. All right so let's start with our promptry, let us start with a new stage. Basically, I really like to have the first stage as a greeting or worm introduction. Let us rename this as worm intro, awesome, and now next state will be particular person that our customer or prospect want to navigate to. So we can say specific name or specific person. Let us connect this, and we are going to use edge also. For instance, when the user has said, Let's say I want to talk with Manthan, we want to parse this information of that name to the next stage, which is specific name. That's why we're going to use the edge function. So let us write the prompt first of all, so we need to give some background. If you don't want to give background, that's fine. But here in this prom, all we need to do is we need to add that task, which is the fourth building block of our entire prom. Let us add background first of all, so that it has some contexts, we can say, Hi, you are ALEX from IT expert or IT solution, whatever you want to write here. You deeply care about the user business and the technology needs. Now we can give some role or we can give some task. For instance, the role here is attend the incoming calls from the user customer and direct them to specific person that the user is asking. Here we will add the task. How should it navigate the conversation? What step or what task it should achieve? First task is obviously to introduce with firm greeting, the second task could determine the purpose of the call, if the user want to navigate to specific person or specific department, determine the purpose of the call, and if the user want to reach to a specific person or name, transition to this state. It is important to call this agent name here in the prong. Otherwise, it won't know where to transition to. This is the name of our agent which is specific name. All we can also add some error handling as well. For example, if the user has general question, attempt to answer using the knowledge base. If the user's query is unclassified, ask for follow up question to gather more information, and based on the response, transition to appropriate state. But as of now, we have only one state, so let us you can add another state of to book an appointment to schedule a call back if that specific person is absent or is on leave. Yeah. So possibilities are totally limitless, but as of now, let us cover the main thing. All right, so we are done with our prompt. Another thing here is we are gathering that specific name thing or specific person. The important thing to keep in mind here is we are collecting the person name that it want to transition to. That's why we have to use edge so that we are passing that information of the specific name or person to the next state. So click on Edge, let us remove this and we can say pass the specific given by user all and here we can add our JCN schema or parameters. For example, I will show you how you can write this type of parameters on your own, even not using Chat GPT. Let us open Adjacent schema. Always do example one, and let us copy this. I want to show you how you can write this type of JCN schema on your own. Allright here is our example one, Jasen schema. I have copied it here and pieced it here. What I will do is I will rewrite it with you so that you will understand how to rete it for another use case another edge or another function. What we want to pass out here is obviously the specific the type object will be obviously same. The property will same. You don't have to change anything yet. The only thing you want to change is specific function that you are calling or specific tool that you are calling. For example, we are calling for specific name. So just type specific name. In this example, it was for appointment availability. So we are just changing the variable or we are just changing the tool name, which is too specific name. The type here is stream, so don't worry about it. I description, we are simply saying user want to contact to specific name or person. Yeah, that's it. That's all you need to do. In description, it is NLP or nature language. You don't have to write a code or Jason schema for it. Just feel free to write your own words. In required parameter, we have to call this again. You need to make sure that we are gathering this information and then then only passing this. That's why it is saying required. All right, I hope this makes sense. Again, it is just calling the same, which is appointment avib appointment availability. So we are going to use specific name. Yeah that's it. That's all you need to do and just copy it. Even if you want to red it for another use case or another example, you can do it on your own, nothing too crazy. The type is always just as it is which is object, the property will be the same. The type of the function in most cases will be like string. All you need to change is the tool name and the description. Yeah, that's it. Let us copy this. Let us go back here and let us paste it here instead of this appointment availability. All right. N vitilE provide this format SN so that our retail ELM will understand it in much better way. So click on format GSN and Tada. There you go. That's all you need to do to use edges. And now let us write the prompt for specific name. So in specific name, we have to make NATen orm.com scenario together from our CRM, like, this is the extension. If the user want to talk with Manthan, the extension is 100. So we need our AA voice agent to press 100 on that phone. So it will transition to Manan. If the user want to talk with let's say Vance. VNG extension code is 101. So our A voice agent will press 101 on its own and will transfer the call to Divan C by using this extension of 101. So we need to fill this information in any CRM or Google Sheet. I will show you. Let us create any Google Sheet. Let's say IV. We can say extension and the name of the prospect. Feel free to add any extra data points, for example, the department, for example, their birth date, whatever you like. So let's say the extension is one, two, three, the name of that particular person. Let's say the user is saying, I want to talk with Manan, I want to talk with Vivian She, I want to talk with Sprawa. I will dial this extension on its own. Then then it will only able to transfer the call. Let us write the prompt. We can copy this background. We can copy the background from Worm introduction stage as well as the rule also. Go to specific name stage, and then past it here. And now the task is to trigger that IVR or press digit tool that we created in the universal prompt. I will show you click on Save, let us go back. We need to call this function of press digit in the same case sensitive which is press under scoe digit. In task, we can assist the user to understand what specific person they want to talk to or any department and use that press digit function tool or trigger that press function tool and navigate with extension. Assist the caller by confirming the requested name, retrieving the specific names extension. So for instance, if someone is looking for the VNG, it will get or retrieve this extension of two, and then it will transfer the call by triggering the IVA with pres digit tool. I hope this makes sense. Again, I will repeat, first of all, it will gather the requested name which is the VNG in our example. Then it will get the specific name extension this CRM or Google Sheet, which is two and then it will dial that two number or two extension rearing the I wear with the press digit tool that we created in the universal agent. All this is as simple as that, nothing too crazy. Second step could be confirmation of the name before dialing the extension. For example, are you looking to talk with Vivian she write something like that? So confirm the name of the caller, one to reach. Trigger the tool that we will use in make.com or in ten. We haven't named the tool yet, let's say, extension. Trigger the tool extension. To search for the database of specific names extension. It will understand what it needs to do, which is get the name of the user and search for the extension by calling this tool. Fourth task is after getting the extension, it needs to transfer the call, so it can say something like after getting the extension, it will say, amazing thank you. Let me transfer you to this specific name. Please wait a sec. Then fifth task could be a kind of error handling. For example, if the extension could not be found in our database, if someone is saying, I want to talk with Albert and if Albert is not in our database, it will say, I couldn't locate the extension for this specific name. Could you please try again yeah, that's pretty much all you need to do for this prompt. So again, I'm just quickly going over. We have the background that role. The task is, first of all, assist the user by confirming the requested name and retrieve the specific names extension. For example, if they want to talk with suprava, get the extension of supravas and then trigger the extension tool. So we need to create a tool custom function so we can say extension, make sure the name is the same that you are calling here. If you are calling another name, just change the name here in the prompt. And then let us give the description. We can say retrieve the phone extension. What's wrong with the spelling? I do the phone extension of specific person or specific name asked by the user. And in URL, we have to add a Webo URL of anten onmke.com. So let us go to ANATen. What we are doing in ANATen is obviously, first of all, we are going to get the Webook URL and we are going to connect our Google Sheet, and then we are going to send the response back to our retail EA agent. Same thing that we are doing in mint.com, but this time by using NTN because it is much cheaper and better than mic.com. So search for Webbook and use this trigger one. So the method is always post. This is the test URL. So copy this. Let us go back total and paste it here and respond by using respond to Webbook node and not immediately. Alright. And now for parameters, again, I will show you how you can write parameter from scratch. So use this example one, copy this. Let's paste it here. Now, again, what we are looking for is specific name. The type string, and the description is get the specific name extension or specific person extension the caller wants to reach. Yeah, that's it. Again, let us copy this name of the argument and paste it here. Let's copy this. And instead of our example, paste it here. Click on Format JSN and it will format our JSN scheme. We have already added that in the prompt. Amazing thank you. Let me transfer you to the specific name. So we don't need to edit here. Yeah, awesome. Congratulations. That's all you need to do. That's pretty much it. If you want to add the function of N call or transfer call, feel free to do it. Awesome, that's pretty much all you need to do. Now let us test our Avoice agent, and let us triggermk dot Sorry Let us trigger our NAT and workflow. We need to connect that with Google Sheet as well. Click on Listen, and let us test our Avoice agent. We are not going to use the audio one because it takes so much of your time, so we are simply going to use the LLM. We need to first of all, click on save otherwise it won't work. Let's say, I want to talk to Manan. And here we can easily say how it is transitioned, how it is calling the tool. So it is calling specific name. It has gathered the specific name which is Manan. Got it. Let me confirm. Are you looking to speak with someone named Manthan? Yep, it is called our tool of extension and the result is obviously no because we haven't connected with our Google Sheet. Right now, there will be no response to the web because we haven't connected with our Google Sheet, so search for Google Sheet and let us connect our CRM. Here what we are doing is we are searching or reading from our data. Click on Geos in Sheet select your Google sheet. And then let's add a filter. The column that we are searching from is the name, obviously. And the value is the one that we will get from our webbook. So let us test our workflow, waiting for you to call this test URL. So let us call this again. Let us delete this. Even you can save this result as well. I want to talk Tomanthan Yes. No response to the Webook note found in the workflow. All right. So the reason why we are not getting any response was we have selected from using response to Webbookne, but we want to responds immediately. So now let us test it again. We will say, yes. Awesome. Now node executed successfully, we have got all of this information. The main information we are looking for is this argument of specific name Manthan. The extension name is obviously extension, yeah. So let us go back to retail, and you can see it has invoked all the tools, which is press digit. It has pressed randomly digit one, two, three, four since we haven't connected our Google Sheet yet. So let us go to Aten. Make sure the respond here is immediately. Then then it will only able to get the information quickly. Now let us change it to using response to Webook node. Now let us connect with a Google Sheet. The column that we will be matching is the name, obviously, and the value that we will get from that argument, which is the specific name. Awesome. That's all you need to do. The specific name is Manthan let us send the response back to our Vital EI. Search for Webbook here, what we are sending is we are sending, Hey, this is the extension, transfer it to this particular person's extension. So we are going to use Jason, we can say extension is the extension value that we will get from Google Sheet. Click on Execute previous node so that it has all the payload and the extension is this one. So simply past it, sorry, simply places here. That's pretty much it. Yeah, it has place outside the Cali bracket, so place it in between the quotation mark. Awesome. The extension is one since the name was Manan and the extension was one. So it will transfer the call to one number. Alright, let's test this workflow once again. Let us click on First of all, Save. Let us test it again, waiting for you to call the test URL. And now it should transfer the call to Manan or whatever the name we are saying. So this time, let us use the VNG. First of all, it will confirm. We will say, yes. If it is able to find out Vance's name, it will press digit two and it will transfer the call to two because we have divanc on extension number two, and we can see the results here. The name was Divanc and extension was two. Yeah, and there are no response here because he didn't call this thing, which is amazing. Thank you. Let me transfer you to specific name. So what we can do in order to prevent this is speak during execution, enable this, and you can say, let me transfer it to the specific name, et cetera, et cetera. Alright, I hope this makes sense. I hope you found this valuable, and I hope you understand what we have done here. We have, first of all set up our EI assistant as receptionist, and if some customer or client want to transfer the call to specific department or specific person, we have used that IVR or press digit tool so that once our EI voice agent has get the name of the person that the customer want to talk to in our example, Man transfer. First of all, they will find the extension of Manthan from our Google Sheet or CRM. It will transfer the call to Manthan by dialing that one number in the phone number. It will run automatically. You don't have to worry about that. And now Manthan will able to talk with the customer. All right, so that's what we have done here. Bye bye. Take care, and I will see you in the next one. 18. Mastering Multi-State Agents: A Step-by-Step Guide: Welcome back, guys to this ultimate lecture of multistate agent or multi prompt agent that we have been waiting for. Multistate agents are basically a level up of single state agents. By using them, we are decreasing the chance of hallucination close to 0%. I will show an example. If we were to comprise all prompt and all of the tasks that we want to achieve in this scenario in one single prog, it is more likely to generate wrong answer or more likely to hallucinate. That's why we are dividing our multi state agents into multiple assistant combined in one force. We are dividing our agent into, first of all, greeting customer or customer service rep agent, then we are asking our customer for any particular poster code. If postal code exists, then we are booking them an appointment. If not, we are calling them or we are taking a note of callback so that our customer service rep can reach out to them further. And then we are ending the call. So you can see we have created around, let's say, our first voice agent, our second, this can be our third, and this can be our fourth. So by using multi state agents, we are decreasing the chance of hallucination because all of this agent has only one particular task or one particular goal to achieve. If we are giving only one specific things to our Avoice agent, it will surely achieve that. But if you were to comprise all of this information in one single prompt, it is more likely to get confused because there are so many things that our Avoice agent has to follow and will more likely to get hallucinated. But those of you guys who don't know what is hallucination, hallucination basically means our LLM is getting confused and will give wrong answer or come up with new answers. That is what is known as hallucination. Alleles start building our multistate agents. We can create an agent, and until now we have been creating single prompt agent, it's time to create multi prompt agent. Let's start from blank, feel free to play around the templates as well. They are great. Multistate agent that we are creating is it will first check for the Pincode, right? I will check for the Pincode if Pincode exists and if that service is serviceable, then it will lead to booking an appointment. If that Pincode does not exist in the service area, then it will schedule a call back with customer service rep. So that's our entire goal or scenario here. So let us take an example of solar company, right? So create a solar company, Multistate agent or multi prompt agent. Let us use Claude, select your language. Or even we can use for real time. Yeah, let's do it. Hi, Shimmer here. You're friendly. Welcome. Aloy at your service. Designed to simp Hey there. Echo. You're welcome. Aloy at your service, designed to simplify your tasks and answer your queries. Let's use. Now in multistate agent, the first three building block will be same. But the last building block, which is stash guls will be different for each agent or each assistant that we will edit in the promptery. So first of all, let us write the first three building blocks. It is generic, it is a universal prompt that all of our multistate agent or all of our agents that we are going to create in this promptry will follow this universal prompt. We are saying you are friendly, polite and smart assistant for Lead Genmen which is a solar panel company based in London or United Kingdom. Lead Gen may help saves customer saves on light bill and hit a host with Sona pans. Already, then we are defining the persona, as well as we are using the response guidance. Right now, in order to decrease the hallucination, we are using these Nato phonic techniques. For example, if you are saying if you have a postal code of let's say L for V. I will say L for Lima, four, and for Victor, so that we are decreasing the chance of wrong input by the user. So that's pretty much it, feel free to play around with the universal prompt. Make sure to save your prompt. Now in function in post call analysis, again, feel free to test it out. But as of now, let us edit our prompt. The one thing here is if you're selecting four or real time, we are not able to test with LLM, let us change it with Claude because we are going to use test LLM most of the time to save us some money as well as time. Because if you are going to use test audio in your retail dashboard, minutes will be deducted, but we don't want that. Test with LLM is a free option to test our AIVoice agent. Let's use Obity section, right? Good day. I'm Amy. Hi, I'm your AI companion, Dorothy. Program to provide solutions and guidance whenever you need. Awesome Am Dorothy for GM or Lead Gen Man solar panel that is edit with the Pmtree. This is our plain canvas and we have to build our entire promptr or list of agents that we want to achieve. But it is very easy and it is even better than single State agent because in single State agent we are comprising so many proms in just one page. But here we have the freedom to add as many tasks for each individual or each assistant freely. So first of all, the first stage will be known as starting stage. Their starting stage we can segment out by different assistant. So Clicon let us rename it as worm introduction or worm greetings. Now, you don't have to define identity, style, or response guidance because we have already defined that. All we need to do is add the task for this particular our assistant. Makes sense. And trust me, it is even better and easier than writing prompt for single state agents because in single stage, we are adding all the prompt in just one clear page. But here we have the freedom to add as many tasks for each assistant that we like. Before writing our tasks and goals, we need to give some background information or context to our Avoice agent. We can write set a friendly tone and introduce Lead Gen Men care and start begin qualification. So qualification basically means we are checking if our customer is in our postal code or serviceable area or not. So our task and key action could be read the customer and introduce lead Genmencare, ask if they have any equation or not, and if they don't have occasion, ask for the first three digit of their postal code. Here I'm taking an example of postal code. We are sorting our customer or our serviceable area. For example, we are providing service or we have service center in those areas, and these are the street names. I just came up with the name, so don't laugh on this name like Macbook Street, Water Street, or N Street. Alright, let's come back to the point. Now here we can also add the N call function or transfer to human if our customer want to talk to a customer service rep or a real human. So we can say something like if the user wanted to talk to a human or customer web, call function, and here we can add the function or tools. So click on add it is similar to what we have been using in the functions. So if you click on call transfer yeah. Make sure the name is the one that we are using here. You can use cold transfer and BOM transfer. Feel free to add your customer service rep or your number here. Awesome. That's pretty much it. Congratulations, you have created the first assistant in multi state agent. Alright, we have sought out with the starting stage. Now what we want to do is we want to kind of branch out from our starting stage. We want to check that if our customer is in the postal code or not. If he or she is, we want to book an appointment. If he or she is not, then we want to schedule a call back. So we will do that. So the first thing is we want to check for the postal code if the lies in our serviceable area. This area or not. All that makes sense. So let us add edge from here. So if you click on it, this is kind of edge. So click on, first of all, new state is Reni met zip code checker. Again, we have to add some context or background information, and we can connect both of these stage by edges. So this line is known as edges. Edges basically means what information you want to pass from the initial stage to the next transition stage. For example, we want to pass information which is the postal code that the user has given and we want to pass it to our Zip code checker stage or assistant. All right, so we will add edges. But wait for it, let us write the prom for our Zip code checker. Objective or the goal here is determine if the customer's location is serviceable or not. Now, how should our EI voice region should precede the conversation flow? For example, we can say, first of all, validate the Zip code. Validate the ZIP code if this exists or not. Repeat the Zip code using nato phonetics and wait for confirmation from the user. And we can also add, for example, wait for user's response. Otherwise, it will just scramble along with the second key action. Wait for user's response. And our second action is check for the exert match. Upon confirmation, check for the exert match in the serviceable list. Here, it will repeat the zip code that user has set and after checking for confirmation, it will check with this Google Sheet. So we need to create a mig.com scenario in order to attach our Google Sheet with our AI Voice. Let us go to MC. Again, I'm starting from scratch because I just want to show you everything how you can build, and I'm not just going over the mag.com scenario. So first of all, obviously, we need a custom webbook Let's add one, let's say, zip code checker. Click on Stop and copy address to Clipbod. Now we need to create custom function or custom tool. All right, so let us name this as, first of all, you can paste your URL here. Let's name this as Zip code checker or Zip code simply. And we can describe as check the zip code provided by the user is serviceable or exist or not. And here we have to add our parameters. So for example, how our customer is speaking that zip code, which is three words because right now we have three words, right? So we need to make sure that our parameters is only fetching these three words and not other extra information. That's why we have to add parameters. I will show you how we can create those parameters. For example, click on example one, two, three, copy this and give to Cloud or JBT and say, Hey, my customer want to check out if this zip code is serviceable or not and write me a GSN schema according to the Abo JSN schema format. And it will come up with a GSN schema. For instance, I have used Cloud to write this JS schema. I haven't written it on my own, so you can do it too. This will be the GSN schema that we will be using, which is ZIP code prefix, type string, and the pattern is word number word. All right. And the description is the first three character of the zip code provided by the user or customer. That's pretty much it. The required field here is the Zip code, obviously. Now, click on format JS. Awesome. Even you can enable this option of speak during execution. We can say, Let me check if your zip code is serviceable or not. Awesome, guys, you did it. Now, we need to call this function or tool inside our prompt. We can say run Zip code tool to check for the Eetmtch. Now, there can be two scenario. The zip code will exist or Zip code will not. So we need to make sure that we separate those things out in the prom. If EETmtch politely inform the customer we do service the area and ask if they want to visit the customer service and book an appointment. If yes, transition to booking state. So we'll create another agent for booking an appointment, and if not, politely inform the customer that they don't currently service the area, but we can offer a callback for further assistance with our customer service. If callback is confirmed, transition to callback stage. So we will create two state one for appointment booking and another for callback. Let us connect yeah. Let us rename it appointment booking. Make sure the name is the same that you have been using to this transition to next stage so that it will know what to do next. And this is call back. For appointment booking, we will need two tools, right? The first is check calendar avability and book on calendar. So add your API keys here as well as your event ID. In prompt, we are saying, first of all, ask for the user name and email, wait for the response, and then ask for availability for that tool. All right. And these are basic prompt that we have been using so far and the current time is current time so that it knows the current date and time. Awesome. Now let us write the prompt for callback. We can say our callback is available only let's say nine to six or Monday to Friday. So we'll add the background of business hours. And the task is ask user when it is a good time to schedule a callback from our customer service team. Yeah. And after the call back is scheduled, use the end call function to hang up. So we need to add that tool as well, which is NCall. Make sure the naming is the same that we have been using in the prompt. Similar goes for our Upon booking as well. Awesome guys, so click on save as of now, and let us go to mindt com scenario to connect our Google Sheet. Or, first of all, let us trigger this Webo. So let us click on test, and then click on this restructured data sto Hello, I'm Dorothy from LGM solar panel. How can I help you today? Hi, I want to check an appointment because, first of all, I need to check my postal code. I'll be happy to help you check if solar panels are available in your area. Could you please share the first three digits of your postal code? It's L V three. Let me confirm that postal code. That's Lima Victor three, LV three. Let me check if we service that area. Let me check if that postal code is in our service area. Great news. We do service your area. Would you like to schedule an appointment to discuss solar Pat? I don't know how does she know, because we haven't set up our Google sheet right now. Alright. So we have tiger our webbook Now let us connect our Google Sheet. So what we'll do is we will search for that particular row of our zipcode. So click on search, os, select your account. The ID is code. Yes, table does contain headers. And what we are checking here is if the zip code that has been provided by the user exist in our database or not. So we are checking in the column Zip code equals to the argument that we have got from Zip code prefix. So click on it. Then click on Okay. Yeah, that's pretty much it. But if this one things pop up, it is not SEO. Again click on Google Sheet and then click on Okay again. Yeah, it's good. Click on SV let us rename this. Zip code shaker. Awesome. Now we need to segment into two different parts. One is if this zip code exists and the second is if the zip code doesn't exist. So we will use router for it. Router is basically a divider. We can divide into three, four parts, whatever parts you want. But in our example, we are going to divide into two parts. Search for Router. For example, if you want to add another router, you can add as many as you like. Awesome. So we need to send the response back to our retail EI. So we'll click on custom Bebook and WebookRsponse. We can say something like open the curly bracket, enter click on space, Ext match for this scenario, let us say if it is able to find out the zip code. Exact Match is true, and the message we want to send out or send back to retail EI could be. The postal code is serviceable. Our street name is this one. Would you like to come and visit at our call center? Let me know and I will book an appointment for you. Awesome. Now for this, we will say Exact match is false, and lead Genman does not currently service within your area. Now what we need to do is we need to set up the filter. Otherwise, it will go into either node, right. So I will show you why filter are so important. So as of now, click on Save, and we need to close this Coli bracket as well. Yeah, I think we are pretty good. Icons. Again, let us run this model once. I just want to show why setting up the filter are so much important. So it is listening to our retail EA, so let us click test. Hello, I'm Dorothy from LGM solar panel. How can I help you today? Hi, Dorothy. How are you? I just want to check that if your company is serviceable in my area or not. I'm doing great. Thank you for asking. I'd be happy to check if we can help you save on your energy bills with solar panels. Could you please share the first three digits of your postal code so I can check if we service your area. Yeah, it's Ci B. Thank you. Let me confirm that postal code, Charlie five Bravo. I'll check if we service your area. Let me check if your area is serviceable. Great news. We do service your area. Would you like me to help you book an appointment to a similar panel lot. It is using the NATO like Charlie Phi Bow Charlie stand for C, Phi and Bowen for B. But it is going with both of the nodes. Like you can see, we are getting wizult in both of the nodes. We don't want that because only one thing is true. Either zip code exists in our database or not. That's why we have to set up the filter. Alright. Bye bye, Dorothy. Have a nice day. Yeah. So let us open the output. Lead Genmen does not currently service your area. The postal code is serviceable. You can see both of the conditions were true, but it doesn't make sense. So let us set up the filter for it. Click on set up a filter. Let's name this is service is or ZcdeEist. Here, we will check the Z code that the user has mentioned to our Google Sheet Z code. So click on it and you will be able to see the Zip code that we have sat just right now, which is c5b. And we want to check that if it is equal to or exist in our Google Sheet or in your database. We will select the Z code column. Alright, let us click on. Okay. Need to set up the filter. For ZIP code does not exist as well. And we can set up as fallback because this zip code is serviceable. For instance, if something wrong happen, it will come out to this fallback, which is zipcode does not exist. So the condition is not equal to N our Zip code from Google Sheet. Alright, I hope this makes sense. It is so simple, nothing crazy. Now, if we check for it, or sorry, if we run our scenario, let us test it again. Hello, I'm Dorothy from LGM solar panel. How can I help you today? Hi, Dorothy. I just want to check that you guys provide service in my area or not. My zip code is b4b. I'll help you check if we can service your area. Let me confirm your postal code. That's bravo four bravo. Is that correct? Let me check if we service your area with postal code b4b. No, I apologize, it looks like we don't. Yeah, it's b4b. Alright? Alright, but thank you very much. So you can see V 40 does not exist in our database. That's why it has only go to this route and not through this successful route. And you can even see in the filter, there is zero outcome, and there is one outcome. That's why it is so important to set up the filters. And it has said Lead Gen CAT does not crectly support your service. Now let us test another route, which is if the zip code exists in our database. So let us schedule this on for immediately, and let us test our agent. Hello, I'm Dorothy from LGM solar panel. How can I help you today? Hi, Dorothy. I just want to check that you guys provide solar panel services in my area or not. My area code is LO V. Let me help you check if we can provide solar panel services in your area with postal code l1b. No, no, no. Confirm that. No, no, it's L V. Let me confirm your postal code. That's l1v, Lima one Victor. Is that correct? Yeah, Let me check if we great news. We do service your area. Would you like me to help you book an appointment to visit our service center on Mango Street? I can assist you with that right now. Thank you very much appoint Did you say she mentioned, like, Mengo Street, as well as our automation ray. Congratulations, guys. That's how you set up multistate agents and feel free to do appointment booking, but I think it will waste your time because it is very simple. We have been doing this all day long in our entire course. So I hope you found this course valuable and feel free to customize multistate agents. For example, if you want to take to another level, you can add another two state, I will show you. Thanks, Dorothy. You can add, for example, here and here, and feel free to edit the promptree as per your liking or how you want to flow your conversation. I think we forgot to talk about edges. Edges basically means the trigger that will happen in the transition from one stage to another. For this example, we can say Sur code is provided by the user or we can say transition to the next stage when the three digit zip code is provided, and to store that information from the first stage to the next stage, or we want to transfer that information that we have been received in the first stage to the next stage, we can enter A JCN schema. So our JCN schema will be what we want to transfer. We want to transfer the zip code that our user has mentioned in this firming greeting to our ZIP code checker. So we will write JS schema for our SS Schema is very simple because only we need to transfer the three digit ZIP code to the next stage. So we'll set pattern, and this is our ZIP code, which is word number, and word again. And the required field is ZIP code. Again, you can click on Format JSN in order if there is any inconsistency in the JSN schema. Alright that's pretty much it. Feel f to w around with multiste agents and let me know what type of agents you guys are building in the command section, as well as in the community section. We are always to get new feedbacks, new ideas from you guys. Bye bye TK and I will see you in the next. 19. Mastering the Fundamentals of Conversation Flow Agents: Hi guys, it's month in year in today's lecture, we are going to literally breakdown every nodes, every section of conversation flow agent so that in future, if you are creating for different use case, you won't face any problem. I don't want to rush into this lecture or rush into conversation flow agent because they are very important and vital to create reliable and robust air voice agent. So we are going to take P step, and I'm going to explain each and every section in much detail and in the next lecture, they're going to start building our conversation flowchen from scratch. Allied leske start. Lecon create an agent and you will be able to find this new feature of conversation flow agent. Right now it is in still beta, but it is working smooth and perfectly. We have a bunch of templates as well, but it will start from scratch. And there we have it our blank and empty canvas. It will start with the begin node. Obviously, it needs to start the conversation, and then it will move to our first conversation node, which is the welcome message. So once the phone has been picked up or once our AI voice agent has made the call, it will flow to this conversation node, which is welcome node. And it will greet the user saying, Hello, this is customer support department. How can I help you now moving further if you want to segment or if you want to fragment or transition to other conversation flow, for example, if you want to check for calendar availability, if you want to write something on notion, if you want to book appointment, if you want to send email, if you want to transfer the call or end the call, we are going to add multiple of transition so that our Air voice agent knows if the user want to write to notion, it will transition to that notion conversation flow only and not every other conversation flow. That's why we are reducing the chance of hallucination automatically. Alert, so I will add another transition here. Let's say user needs to jot down or write down something. Here you can add your Apple nodes, Google Doc notion file, whatever you are using. I'm just giving you an example. Al so that's how you can add transition so that our AI voice agent or this node will transition to further conversation flow. Before we move on, I just want to say one thing. This conversation flow agent is still in beta, right now, I'm shooting the lecture in beta version. So if it is fully live or if you're watching this lecture after sometimes, there might be some changing in UIUX, but apart from that, the fundamental always remain the same. So just bear with the new interface of retail A if there is any. Alright let's come back to our lecture. You can see we have the global settings. In global settings, this is the global global settings, it is the same as single prompt or multi street agent. What we are doing here is in Agent settings, we are adding the prompt. We are adding which voice we want to use, which model we want to use. So if we expand on the agent settings, we can select from the voices and language our global prompt. So this prompt will be followed by all the nodes in our entire conversation flow canvas. For example, all of this node, as you can see here, even the function, the global nodes will be following this global prom. That's why we have to make sure that we are adding relevant information in our prompt. For example, we have to only use three building blocks that we have discussed before, which is the first of all, the rule, second style, and response guidance. As you can see, we are not mentioning any task and goals building block because we are going to add task in particular node only as well as in particular function or tool. That's why this global prompt is like a universal we have been using in multistate agent. Same goes for the Webook settings. We can add agent level Webbook URL, inbound Webook URL. We have security settings, post call analysis, all other things that we have already discussed in earlier lectures. Yeah, feel free to add your knowledge base if you have any. And here we can test our EA Voice agent. If we clic test can test it via audio as well as by LLM. Let's come back to discuss the most interesting feature of conversation flow agent, which are nodes. We have five different type of nodes inside this canvas. First, we have conversation node, then we have function or tool node, call transfer node, press digit node, and lastly, the ending node. I think these last three are pretty generic, which is called transfer, press digit or IVR or interactive voice response and the ending one. The main two nodes that we are going to use bunch of time is conversation and function node. Let us add this in the canvas. Let us add all the nodes. So let's add a function. And if you click Oplus, it will have already two inbuilt function, which is firstly check calendar availability and second, book on calendar because we have call transfer and call as well as press digit here. It has only two inbuilt feature or function here, but we can always add custom function. Don't worry about it. So let us add check for calendar avability let us add call transfer, press digit node, and lastly end node. All right, so we have these fine nodes here. Let's deep dive into each one of those because to be honest, there are so many things in conversation flow agent. For example, if you open this conversation node, we have prompt, then we have static sentence. The difference between prompt and setting sentence as you might know, in prompt, we are just giving the direction or we are just giving the guidance to our AI or to our LLM, but if you only want to use one specific introduction line only for the call conversation, that's where you can use static sentence. But if you want to keep the conversation unique every single time, we can use this from section that we use AI or LLM to come up with a new introduction line in each of these conversations. Let me give an example. In static sentence, let's say you want to say, Hey, I am from Led German. How can I help you? And let's test it. Before we test our agent, we first need to make sure that these branches are connected with each other. So simply drag the branch from one node to another node that you want to connect simple as that. And let's click on test. As you can see, these blue dots will be moving so that we can know that which particular node our conversation is right now. That's the beauty of using conversation flow agent. It is to be honest, it is way much better in order to debug our Avoice agent. For example, if our Avoye agent is messing up at some particular node only, we can use conversation flow agent or this visual represitation, so that we can understand it and debug in much faster way. Yeah, so let us test it again. Hi. Hello. Hey, I am from Lee Gedman. How can I help you? Did you see it has only speak this particular language without coming up with anything new. That's why we are going to use or if you want to use Static sentence for this type of conversation, feel free to use Static sentence. But let's say you want to come up with new conversation flow or with new sentence every single time, we can use the prompt one. We can say introduce or do warm greetings to customer seeing how you can help them. You are assistant of le Jen Man Company. All right, so let's test it out. Hi. Hello. Hello there. Welcome to Lead Gen Man Company. How can I assist you today? Whether you need help with Lead Generation marketing strategies question. Thank you. So did you see it come up with whole, another idea, whole, another kind of scenario. That's why if you want to be very specific with the conversation flow, you can use the static sentence as well. And retail EA provide this option. If you want to use prompt, as well as if you want to use static sentence, feel free to do it. Any weekly contest, again, it will come up with kind of similar wording or similar sentence to welcoming the customer that you are speaking to Lead Gen Man Company. Alright, I hope this makes sense. It is very simple, by the way, but my recommendation is use prompt whenever you want to make your conversation flow unique every single time and use static sentence if you want to achieve specific thing from the end user or from your customer. For example, if you need the email address in that character by character, you can say, can you tell me your email address separated by character by character? My perspective, you can always use prompt if you want to come up with new and unique conversation flow and for static sentence, if you want to get something out of your end user or customer, you can use the static sentence as well. Then we have the transition. As I mentioned, transition is basically breaking down our entire call conversation into different parts. For example, if you want to separate your conversation flow into three different parts, you can add three different transition, and then you can connect them to another conversation. All I re add three conversation flow, sorry, three conversation node, and you can connect each of the conversation node to each other. Feel free to rename the conversation node. Let's say they want to book an appointment. Appointment booking is my go to use case because a lot of my clients and even if you are providing this Avoice agent as a service, you will also see all the clients like most of the clients want the Avoice agent to handle the appointment booking. Then another node could be. So you can even describe the transition when our Avoice agent or when this node should transition to the next stage. For example, or the next node. For example, we can say when the user is asking to book an appointment. Will automatically transition to this node. Then another example could be if they want to have a callback after sometimes, we can say, if the user does not or does not want to talk right now and want to schedule a callback, it will flow into this next node which is callback. Same goes for last node, which is if the user want to get the current credit card status, it will fall back to this. It will follow this conversation node where we can add all our Google Sheet or a table data by calling in custom functions. And, we have done this so many times, you might be pro at this. Let's first of all, rename it credit card status checker. Feel free to add your prompt and then let's say get the credit card number from the user. All right, it will get the credit card number from the user and after getting the credit card number, we want to transit our function. That way we can trigger our main outcome scenario, co high level scenario or any tent scenario, if we have store our data of credit card information in Google Sheet or a table, hotspot, whatever you're using. So we are going to use this transition. So we can describe this transition condition. Defining your transition in very clear, simple, and straightforward way is very important. Otherwise, our Avoice agent will get confused whether you do the transition or not. So we can say. Once the user has given the credit card number, The transition to this function load. So we're going to add a function is at a custom function. We can say credit card info, get the credit card info or credit card status from the credit card number given by user. And we are going to add our URL, for example, if you're using meg.com, or if you're using any ten go high level, please add your URL as you can also define the parameters of that particular object that you want LLM to return. All right, so let us save this as of now. I'm just giving a demo or example. Then it will invoke this function of credit card information. That will be able to get the credit card status or credit card balance from this credit card number. I'm just showing you the prompt as well as the transition nature language query or NLP. Again, keep it very simple, concise, and straightforward, and you won't face any trouble. That's why prompt engineering is so important. That's how you can define the transition to invoke your function, or if you want to, let's say, add another conversation node here, for example, if the appointment is booked successfully, it will follow this conversation node. If the appointment or any slot are not available, it will follow this conversation node. So we are going to use two transition. Let's say when the appointment is booked successfully, transition is this node. For example, we want to fetch another information, like what is your name? What is your last name or what context do you need to talk in the meeting? For example, lead collection or lead qualification, if you want to transition to this next step. But if the slots are book, it will follow this conversation node where we can have some sort of error handling or we can transfer it to real human in order to resolve this issue, as well as, for example, if you want to add another node, transfer to human agent if the user want to talk to them, and then we can add this call transfer node. Yeah, I hope you now got the gist of conversation flow agent. You can make as complex conversation flow as well as as complex and robust voice agent by using conversation flow agent. If you click on transfer call, we have transfer to this particular number type of coal transfer, worm transfer, as well as a display phone number. You can also choose different LLM for each of these node. For example, if you want to use, let's say, chat GPD for this node, if you want to use Cloud for this node, you can enable this option and choose different LL well as different models for each of these LLMs. For instance, if you want to use GPT four mini for this lead qualification node, in order to concept less credits or less pricing per minute, you can enable this if you want to use let's say Cloud for this to get the best response from your Avoice agent, you can use Cloud. Yeah. This type of flexibility in your Avoice agent will make your Avoice agent totally hallucination proof, as well as you can block interruption. Does this mean is if the user is in between when our air voice agent is running or talking or invoking any function, it won't listen to the user because if it is going to listen to the user, it will interrupt its conversation flow and it will get confused. That's why we can enable this blog interruption. And as the name suggests, it will block the interruption from the user, and we can enable any particular node to a global node. For example, I will show you one. So let us make this as global node. Let's name this as global let's make this as global node. Let's say this node is connected to only one node, another, which is lead qualification and not to any of these other nodes. But, for instance, if there is some kind of a fallback or some kind of error, all of these nodes, I will show you, all of this node will be automatically transferred to this global node, even though the edges are not connected. Even though, for example, this callback is not connected to this global one, it will still able to fall back to this global node, since we have make this node as global. All right, I hope this makes sense, and even you can describe the condition to jump to this node. For example, the user is asking different questions, invoke transition to this global node, as well as we can skip the response. For instance, we have booked the appointment with our user and we don't want their response and we want to move in to the next stage or the next node in our conversation flow. We can enable this option. Let us unable the skip response for this, which means that it will jump to the next node without waiting for the user response. And we have already booked the appointment, we don't want to wait for our user to talk with anyhow. We don't necessarily need any information from the user. That's why we can always make transition to the next state or the next node, which is lead qualification. Once it will book the appointment with it, it will automatic transfer with lead qualification without waiting for user response. I hope this makes sense. This is as simple as I can put. Lastly, we have fine tune examples. This is where we can add specific scenario conversation to our Avoice agent. For example, if this prompt is not getting all the information from the user, instance, if this lead qualification prompt is not retrieving all the relevant information we need, even though we have added everything in the prompt. So we are going to use fine tune examples where we can say, do this, do this, do this, first ask for the user name and ask for the business queries or business purpose, then the business revenue or whatever you want to add. In that particular example, let us click we are going to use Fine Tune al conversation. Even in Fine Tune, we have two types. The first is conversation, and the second is transition. Let's talk about the conversation first. For example, if the user is saying, my name is Manan. Then the agent will say, can I get your full name or last name also? This type of fine tuning is very vital because if you're storing this data in your lead if you want to store both first name and last name, and if the user is speaking only first name, in general or in single state or multi state agent, it will store the first name only. But by adding this fine tune example, we already have the first name. In the first conversation, my name is Manthan what our agent will speak. Can I get your full name or last name also? That way we are getting both first name and the last name. I'm just giving an example how you can find in your conversation in order to retrieve in order to manage the user's queries and concerns in specific way that you you want to have this specific conversation and if you want to give specific answer and specific sentence, you can always use Fine Tune example. Now let's click on Add, we can add the user speech, agent speech and function execution. So lets use the user and the agent one. We can give another example. I'm not able to remember my password. For instance, if the user is saying, I'm not able to remember my password, this type of conversation is really important. We want to say specific things only to our user, and we don't want to make anything new or come up with new ideas because that's what EA agent or LLM does most of the time. That's why this type of fine tuning example is so important. We can say or whatever specific things that you want to add here, no worries, can you share your birth date and I will close check it with your credit card information. Now if you're not using this type of fine tune examples, your EA agent won't know what to do. That's why, again, it is very important. Another type of is fine tune with transition. Now if you're not using this type of fine tune examples, your EA Voice agent won't know what to do, or it will come up with new conversation flow or new ideas. That's why in order to decrease hallucination, retail EI mix is very easy for us by adding this fine tune example, coming up to fine tune the transition. You will be able to see select node. None stay at the current. Fine tuning the transition to another node is the best feature, I think of conversation flow isn't by retail EI. For instance, if the user is not able to remember the password and if we want to transition to the next node, which is credit card information or credit card check on node, we can always use this type of conversation flow or transition example, and it will transition to another node. If the user is speaking, I'm not able to remember my password, then it will transition to the next state, which is current or credit card information. You can select the next node in sequence to that. All right. So again, this feature is really important, which is the fine tune the transition as well as fine tune conversation. Alright, guys, I think we have covered every minute part of conversation flow agent. So why let us move on to the next lecture where we build our conversation flow agent from scratch. Bye bye, take care, and I will see you there. 20. Building Conversation Flow Agent from Scratch : Notion + Gmail: This as a global node. I will allow other nodes to jump to this node, which is a welcome node without any edges or connection. Whenever the user is having trouble looking or finding for anything, transition to this global node because we are adding all the transition here, right, and we can use different LLM if we want to use Let us use snit. Awesome. Now it's time to add the transition. So make sure you are using perfect and clear simple English language so that our LLM nodes went to transition to different nodes. Let us define the first transition for checking any event in my calendar from specific point A to point B. Let's say I'm saying my A voice agent to get me any event or get me any meeting from 10:00 A.M. To 5:00 P.M. Tomorrow, and it will give the list of all the meetings or all the events that are in in my Google calendar. So we can say something like the user want to check their calendar, and then we are going to create a new conversation node for that, which is checking events. Then let's connect it with Edges. Now for prompt, we can say something like investigate what date and time the user need to check on the calendar from specific point A to point B. Awesome. And once we have that information, we want to transition to a function that will invoke our calendar tool. So click on function node. Let's add a function node, and we can use check calendar availability by using cal.com. Add your API keys here. We have done it so many times. Let's add it. I'm not using or I'm not adding the EPIKeys because I don't want to make this lecture very lengthy, but I hope you got my point. Connect this edge to this function. Now when should it transition to this check calendar availability tool or function? We have to define the transition very properly. We can say the user has already told us from what date to what date they want to review their calendar. Awesome. When we have got this information, it will transition to this next function node. Now in function node, if you want to configure further on, click on this function, it will populate with this thing and click on this pencil icon. Here you can add your API keys as well as your event ID. If you want to speak during execution, feel free to do it, and it will populate with prompt and static sentence. Let us use static sentence for this. Whenever it is running this function, it will say getting your list of events from your calendar. Now, once we have finished checking our users calendar and retrieve all the list of events from their calendar, we want to transition to another node. So let us use or define the transition here. Let's say we finish checking the user's calendar, then what we will do is, we will add another conversation node, we will connect it to here. In prompt, we can see something like ask the user if they want to keep continue chatting if they want to get back for another time, if they want to write anything else in notion, they want to create an event in calendar, or they want to send another email or if they want to end the interaction. All right so we will add all the transition here. But as of now, let us add another conversation node as well. For example, for notion for sending email from booking appointment, one thing I left out is if you want to wait for result enable this function and then and then it will only transition to the next node. Obviously, we need to enable this. I don't know why there is an option like this. Yeah. And you can choose different LLM as well as prog interruption from the user. Awesome. So we have done with our checking events on our calendar. Now it's time to use the notion one. I love this really because I'm a huge notion fan and I always jot down my information, always jot down something that I come up with new ideas, come up with new motion into my notion. That can be very handy if you're using this type of Avoice agent for a personal assistant use case. When it should transition to the notion node, we have to define in transition. The user want to write something in notion now let us create another conversation node for notion. Let's connect it here and let us write a prompt for it. Ask the user what they want to write about and if they need a hand or help with formulating or articulating the entire idea or entire motion, or if they already know what to write down. All right, and we are going to invoke the tool. Let us create a function node. This time we have to add custom function because we are embedding our notion or we are adding our notion with our AI voice agent. So become custom function we can name this as write in notion. For description, we can see something like create a page in notion of the content the user want to add. In this URL, we are going to set up in our ANATen. Let us go to ANI ten, and I have renamed this as conversation flow agent. First, we are going to connect our retail E voice agent with ANI ten workflow. That's why we have to use Webbook. Click on a first step, search for Webbooks and the method is post, copy this URL. West here. In parameters, we are going to add the data points that we want our LLM to return or to di it into our notion page. It is optional. If you don't do it, it will also work. But if you want to be very specific with the format, or the things that you want to add or LLM should return, we are always going to use parameters. I already have this parameter ready, and don't worry this parameter will be in the resource section so that you don't have to create it on your own. And this was created by Chat GPT. Trust me, it is very easy. So just go to Chat GPT, click on Explore GPT and search for Mark Tomlt. He has created a bunch of GPTs to be honest for EI voice agent specially shout out to him or all the credits to him. So what we are going to use is JCN call formatter, and it forms retail EH function for us. Even you can use this voice pioneer prompt builder as well. In the custom GPT, it will create prompt for you. So let us click on Start chat and say, I want to read let's say notion title and the notion content, and it will give your JCN code to you. But I don't want to waste time here. So let us come back here. And this is the type, which is the title first argument, which is the title of the notion page to be created, and then content, the content to add to the notion page. This can include tags, links or other details. And the required field are title and content. And to be honest, it is very simple. You can write it on your own. You don't have to go to Chat GPT as well. I have shown you in some of the earlier lectures how to write this JSN code on your own. From scratch. Alright, you can click on Format JSON and let us save this. Awesome. Now let's add this and let us connect the edges. But we are missing something which is we have to define the transition when the transition should happen because we first of all, obviously need the title and the content. If we have that information, then then only we are going to invoke this function, which is write in tool. In transition, we have to specifically define that. The title and the content of the node to be written in notion is being given to us and then transition to this function. Right, I hope this is making sense to you. All things come down to prompt engineering and your simple language query. So otherwise, your Avoice agent won't know when to transition what speak. That's why it is so important to learn prompt engineering, as well as give simple, concise and straightforward carries to your Avoice agent. So we can also enable this speak during execution, so it will inform the user that we now writing to the notion, and we are going to use prompt. Now let us transition to this node again. If our user has another question or if they want to send an email to someone, if they want to book an appointment, it will transition to this node. So let us add a transition here, and when should it transition to this conversation node is once we have added all the things, which is the title or we have created a notion page, then then only it should transition. And that's why we have wait for result unable. Once we have got the result, then then only it will transition to the next node. Alloys let's connect this and we are going to add five different or four different transition, and we are going to connect all of them back here. Don't worry, we are not going to do it right now, we are going to do it at the later part of this lecture. So we are done with our notion. First of all, let us test our notion, I guess. So click on back to Canvas and let us add notion, CliconPlus search notion, and what we are doing is we are creating a database page or we are creating a page, whatever you want to use. And now connect your notion account. I have already gone ahead and done it. Then what we are doing is we are adding a page. In recesses, I have selected page and the operation is to create a whole new page. This is the parent page or the parent URL that we have to add. How you can find this parent URL, simply create a new notion page, click on share and in share, you will be able to find copy link. Simply click on it, and then paste that link here. Yeah. I will automatically attach this database to your ten workflow. And the title, it will be obviously in expression that we will get from our retail EI arguments or from our retail EI function de. All we need to regard that webbook in order to get this payload. Add any parameters or random word here, we are going to replace it afterwards. Don't worry about it. Yeah, so let us test this workflow. Click on Listen for test event. And it is listening. Now let us click on test, and the beauty of test Alam is much, much better here. I wait, I will show you. So you can select which node that you want to execute or have the conversation. For example, if you want to have conversation directly to this node, you can switch it right over here, so that you don't have to waste time in all of this conversation in previous nodes. Trust me, it is amazing feature, and you can also save your results as well as you can also add your dynamic variable from here. As of now, let us test our entire EI voice agent. Let's say, hi, you can see, since we have said or we have entered into this node. Now once we said, I want to jot down something important, it will transition to this conversation node. I will show you. And it will trigger a webbook awesome, the argument containing the title and the content. These are the parameter that we are calling in that function. That's why it is formatting in that particular format that we like. I hope you now understand why we are using parameters in functions. You can see tool invocation writing notion, tool result workflow has started, awesome. So we are good now. Now let us connect our notion. Let us search for Notion again. Let us create a new page, add your account, and now we have the payload here. So paste your parent page and for title inside arguments, we are going to use title as expression and for blocks. Let's add it in form of a paragraph, and let's place our content inside text. Awesome. Yeah, that's pretty much all you need to do, and we need to send this information back to our retail EI so that it will know that we have add this successfully into our notion. Alright, so let us search for Webbook and you can say respond to Webbook. Now what do you want to respond is in form for Jason. Let us execute the previous node, or even we can use simple text as well and add the response body of what we have pasted here, which is we finish writing the node in notion. I will say this particular sentence to our user work. Awesome. Now let us save this and you are good to now we are going to do the same. For whatever recipients address you want to send out the email to, we are going to define the parameters, which is we want to add subject line, we want to add the email copy or the email body, and the recipientis email address. All right, we will come back to that. But as of now, I hope you understand we have done or we have written in our notions successfully. You can see it has automatically added this new page. This was a testing I was testing out. You can see course ideas and LindnPosting plan. It has automatically created the title for you. You don't have to define specific title, it will automatically restructure it for you. As well as this is inside our notion page, which is ideas for creating a course on any ten ZPA descript and the plan is host ten times a day on Linn about these topics to engage the audience and prompt the course. Mind blowing, literally amazing. That way you can talk with your EA Voice agent as a personal assistant and we'll jot down all the important information in notion as well as whatever database you want to add it. For example, if you want to add this information to your Apple nodes, to your Google Docs, whatever database you want to store it, you can easily do that. All you need to do is instead of notion, add Google dog or add Apple nodes, that's it. Yeah. Now we are done with the notion. Let us add another transition that will book event or create an event in your calendar if you say so. Therefore, the transition query would be the user want to create an event in Google calendar. Let's add a conversation node. Let's connect the edges, and in prompt, we can say, ask the user when they want to create the event with whom and for what purpose. For what purpose, it will automatically flash out the description of that event with whom we automatically add that name in the title, and you should ask them the following details that they have said are correct or not. Alight for transition, we are going to say transit to this next node if we have retrieve all this information perfectly. Once we have this information, which is the user already has told us when they want to create the event with whom and the purpose of it, we will transition to the next node, which is creating an event or booking and meeting in the calendar. Let's add it. Feel free to add your API keys of cal.com here. Let's connect the edges. Now, if you want to add global settings, yeah, we need to add the prompt here, which we will look into afterwards. But as of now, let us speak during execution. We can say something like I am creating your event on your Google calendar. And for transition, we can say something like, once we have booked the event or successfully created an event in the Google calendar, transition to this node. I'm not testing this book appointment and check calendar availability because it is very self explanatory and we have been doing this in this entire course every single lecture. That's why. Let us add the last transition, for example, if they want to send message to someone via email or whatever communication challenge they want to send out. We're going to use this transition for it. Let's say the user want to send a message to someone. Awesome. Let us add a conversation node here. And I'm just giving you an example here. You can add as many conversation node, make it as complex as you want, and make it as robust and reliable according to your use case and situation. In prompt, we can say, ask the user what email to send the content, basically, the subject line and the email address they want to send this message to. Awesome, and we will add a function here. Let us use a custom function. Let's say send email in URL, we are going to create a Webook, click on add step, search for Webbook. We are going to select post method, copy this URL, paste it here, and in parameters. Now let us go to hat GPT and create the parameters so that you will understand what is a format or how I'm creating this type of parameters so that I'm retrieving or getting that specific information that I need from LLM. Let us go to hat GPT, or you can use deepsk as well. Search for JS and call formatter. Let us first of all, copy all of this. I will automatically know what parameters it want to create. We are only looking for three important things, the recipient email address, the subject line, and the email copy. I should have this in our GSNs code. So yeah, two subject line and message. Amazing. Within just one prompt, it has created this JCNs code or parameter for us. Paste it here, conform it JSON and let us save this. Awesome. Let's add this. Let us connect this via gs. Now when it should transition to this function, let us describe it. The user has finished giving us the email to send which is the content. Define the subject line and provide it with recipient email address. Awesome. Here, let us add a prompt or let us enable this speak during execution. Be sending out emails might take some time and we don't want to our conversation to be blank or to be completely silent. That's why we are using, let's say, inform the user we are now sending the email and then transition to this state once the email has been sent out to the recipient. Therefore, in transition, let's define we have finished sending the email that the user want to send. Now once it has sent out the email, let us connect this to this node. Awesome. Even if you want to test it out, you can test it, click on Deism for test event, click on test, delete this. I want to send message to my friend. Yeah, via email and it will transition to this node. Therefore, as you can see, it is asking, what is the content of the message, the subject line, and the friend's email address. So once we send out this information, it will invoke this tool. I just want to say to my friend that if you like the course, please drop down your honest review and share your experiences. Make sure you do it. And the subject line is course review, and the email address is nCliconsend. Now it should transition to this next node. Awesome, as you can see, tool invocation send email and the tool result, which is workflow has started. So we should have the payload, as well as in the messages here we are. Awesome, guys. So now let's add our Gmail to it. Yeah. So that's the beauty of any ten. We don't have to create separate scenarios or separate templates like we do in main.com or ZPA. We can add in just one single workflow. That way, it is so much easier to work. Now, lads Glicon add, we are going to search for Gmail. Make sure you connect to your Gmail account. It is very simple. And then what we are doing is we are sending a message. So create send a message, even you can send a draft. So just connect to Gmail account. You want to send out message and operation is sent. Now for two, we are going to add the email address. Obviously, it will be in expression. The subject line and the email type, we can say text, we don't want to use any HTML code, and this is the message. Awesome, guys. And if we click on testb, it will actually send out the email to this email address. Awesome, so I'm not doing it right now. I will do it later, but we need to send the response back to the retail EI that we have successfully sent out the email address or we have successfully sent the email the user wanted. So click on response to Webook and we can use text as well. We can simply use this texts. We have finished ending the email that the user wanted to send. Awesome. Let us save this. Let us run this Node executed successfully. So let us open our Gmail, and we have got an email. If you like the course, please drop down your honest review and share your experiences with the email address that we wanted to send. Yeah, you can see, as well as the copy and the subject line. It is pretty easy, by the way. You don't have to be a scientist or a coder to do this type of voice agent with no hallucination. Yeah, that's the beauty of any ten and conversation flow agent. Yeah. I hope you got the gist of how we are creating this type of a voice agent. Now, what we are doing is once it has executed all of this function, we want to send out to hold this different conversation node if they want anything extra, if they need any other help, for example, if they want to create, let's say, or if they want to get the list of events from their calendar, we can say transition to this node. The user want to check another time on their calendar. So what we are going to do is we are going to connect this transition back to our checking events. Same way, if the user want to add another thing in motion, the user want to write something else in notion, we are going to connect this node to our notion node. All right. So it is not just ending the conversation right over there after executing one function. It is in a loop. So unless the user want to end the call or actually end the call, it will be always in the loop and it will always be helping out our user. Then the third node could be the user want to create another event in the calendar. We can see something like the user want to send another email. Now let us connect this email transition edge to our email node. Same goes for event, book and event. Awesome. Now if the user want to end the conversation, we're going to add transition for that as well. Let's say the user want to end the interaction, so we are going to use this end node. Let's connect this end node via this edge, awesome. And if they want to continue chatting or continue having the conversation, let us add another transition for that as well. The user want to continue chatting, so we are going to add this to our global node. I think both of these nodes are similar or same. It is just navigating back to different type of transaction that we are defining in this conversation, which is to check availability or to check any event, then to add in notion file book and event as well as send out email. I'm just giving for example, you can add or you can make it as complex as you like. I think we have built a reliable and very robust EA voice agent by using conversation flow. Now let us define our global settings as well as our prompt. If you click anywhere else in the Canvas, it will populate with global settings. Click on Asian settings, let us select the voice, Indian accent, feel free to use any voice that you like, and for model as well, let us use Sont the role we are defining is you are lead gen Man or personal assistant to the user. Assisting with different things they need, and I'm defining it British, so it will speak cheers met in it, and this is the response guidance pretty basic. We are telling the user to dictate email character by character when they want to send an email. In this node, we have to define our email by, for example, Manthan 2024@gmail.com. I will say, can you define it by character by character, which means MAN THAN 2024 at the red gmail.com. Instead of saying simply 112024 at dgmail.com to decrease the chance of sending wrong email. This had some type of error handling that you can add in your prompt. I think we have built an amazing A voice boot. Feel free to add your knowledge base, as well as configure with all of these settings that we have done so many times in this entire course, so I'm not going to repeat it over here. Feel free to add post call analysis, you can do outbound, as well as do inbound calls by using conversation flow agent. Awesome, guys, I will be adding all of this prompt, but I think you should create this conversation flow agent on your own on your use case. Feel free to add parameters. Again, I'm going to he GPT. I'm not doing anything. Trust me, I'm simply copying and pasting, and it is giving me the parameters. I'm pasting that in my function, as well as here. That's pretty 21. Batch Calling: Hi, guys. This lecture is important, but it is very straightforward and easy. We are going to perform Batch calling in retail EI. For example, if you have a large elite list and you want to call all of this prospect and you don't have any CRN solution like go high level and you don't want to mess with main.com and everything, you can perform batch calling inside Retail EI without you having to do anything. It is to set this up, so let us login. Here, you will be able to find Batch call. Click on that. Create a Bach call. And if we select this, it will use our agent or voice agent of consultancy call. Now, let us download the template so that you will understand what is the format, how we can add the dynamic variable inside Excel sheet. Click on Download. Let us open this. All right, what do we have here? We have first a phone number, then as many dynamic variables as you like. Here, only the phone number is required. So let us add a phone number. For this example, I'm using only two lead list in my Excel sheet, but feel free to add as many prospects as you like to contact by Batch calling. In place of dynamic variable, I will say, let's name. In dynamic variable, too, let us go for email. Yeah, feel free to add as many dynamic variables as you like. But as this is an example, I'm just only using two. Download this. We have the ID, phone numbers, the name, and the email addresses. Now we have two options here. When to send this call. If you want to start this right away, please feel free to do send now. But if you want to schedule, for example, if you want to wait for business hours or if you want to exclude those type of weekends, you can use schedule. Select your time zone and select the date. It will start calling. You can even select the time as well. Yeah, it will start from here. The estimated time to complete calls, we are assuming is 5 minutes. So in retail EA, we have concurrency limit of 20 calls per batch. So for example, you have 100 people in your Excel sheet, another example. So what it will do is it will perform 2020 calls per batch. Once all of those calls are completed, it will start the second batch. Which is 21 from 48 phone number. Polite, I hope this makes sense. You can also purchase more concurrency here. Now, click on Sen and it will start calling those phone numbers. Once you click on this Send button, and if you want to pause or cancel, you won't be able to do it. Make sure that all of this information are accurate and then then only select this send it will not start making those calls instantly. It will take around 5 minutes because there might be some phone numbers in the queue. So let us click on Sen here we go. Hi, This is Alex from FluxFortify. Am I speaking with parole? Yes, you are. And by the way, do you know my email address? Yes, of course. I have your email listed as info at legendman.com. Does that sound correct? Yeah, you are good. Alright, so that's it, and that's how you can create batch calls and start firing your prospect leads in your leadts. Alright, that's all for it, and I will see you in the next lecture. 22. Branding Solution for Agencies: Hi, guys, it's month and year, and I'm going to show you how you can white label your service by using HIDDSh which is integrated with retail EA. If you are selling as a service or if you're providing this service to your clients or to your clients clients, white labeling is a must. You will have your own brand name, your own brand color theme, as well as everything your own and not retails. Retail EA has this collaboration with HIDDsh, go to HIDDsh. You will be able to find supercharge your retail agency with HIDDS. Can easily relabel your business name or organization name by using chat dash, it provides amazing visual graph to understand our data, for example, ukensh data in a more sort of visual way. For example, buy chat bar graph, like a linear line, everything. So first of all, let us log in or sign up the display name, let's say, Le Genman Click on Register. We can set ourselves for domain branding, even chat booard setup, client creation and final review. To vines, a lot of guys were asking how to white label their service, and chat Days is the best platform. My agency name is Flux fortify and my domain accordingly. So I will choose, let's say, black and white. Even you can upload your logo. Awesome, a logo is uploaded. Now let us add our domain to chat Dash. Awesome domain it successfully. We want to integrate Retail EI. So chatbot name basically means our agent name. So let us go back to Retail. Let's say we want to use this agent. So let us copy this past it here, then our retail API key. Copy the Webbook one and our agent ID. This is our agent ID. West it here. If you have any knowledge base, feel free to do it. So let us click on AdhatboT Awesome. Now click on next. And this will be your client's account and assign the chat booard to your client. So you can say your client name, for example, Elon Mask. You can add their email. You can add password if you want to secure your website. No one can lst. Then feel free to use the language. As of now, let us create a client. Click on next, and this will be your client dashboard. They will go here and they will be able to see this sign into your account. We will give out this login ID as well as the password so that our client can access it. Awesome, our branding here. All the data can be easily displayed. Let us take one thing at a time. Let us finish this. Let us go to our project settings, click on these three dots where we can prompt our chat board as well. For example, there will be in built chat booard. You can use this prompt. Hello, I'm speaking to your client name. Yeah, so this is our prompt that we have used in Vital AI. This is like summary evolution automatic, as well as it can pass for example, paragraph, caption, subtitles, everything. All right, so let us go to our client view. They will be able to see total call of minutes, number of calls, how much it cost, average cost per calls. And we have these amazing charts as well. We have added the dates here. The number of calls similar goes to date here and number of calls are some, it is pretty solid. We can also furthermore, edit, reason edit for call which is hangup. If you want to edit the layout, you can easily do it. Let's go back to our client. Click on Preview, click on Edit layout. And let's change some. So let's say you don't want like here, you want it like here, so feel free to do it. Even you can add the conversations, they will be able to say everything here. So this is actually transcript. Hello, am I speaking to Manten? And I was saying, Yes, you are. Even you will be able to find reason call, which is I hang up. You can hear the call recording as well. Yet you are. Download it from here so that client has full access and they don't know what is going on your retail EI, your Ghi level or your main.com scenario. They can easily see the analytics. They can easily hear, read the conversation, and they can easily edit the knowledge base. So that's pretty much it. Feel free to play around with chat dash because it is to be honest if you're scaling your agency, you want to white label or you want to make sure that your website or your domain is like a legalized. It's not like you are exporting all of this data to Google Sheet and displaying your result to Google Sheet. If you have professional dashboard, your client will think that yeah, they are professional and they have done the work. Can easily access and they can easily see all of this thing. Here, for example, in Google Sheet, they have to go one by one and hear the call encodings, and to be honest, it is ugly. That's why we are going to use chat desk in order to white label or in order to temportize our entire agency to our clients. 23. Creating Your Own AI Voice: Easy AI Voice Cloning: It's time to add your own personal voice and feel that own personalization to your customer by adding your custom voice. It is very easy. All you need to do is have a sample file or audio file ready so that you can use for your own EA voice agent. I will show you how you can do that. So go to any assistant that you like, and then click on the voice. In 11 labs, you will be able to find. You can add your own custom voice, let's say you want to test out different A voices in particular accent, for example, neither line accent nor Spanish Portugal accent, you can easily do it by using 11 labs. As you can see, it has around 25 A voices. But if you want to add that personalization of your accent or of your language, you can easily do that by using 11 labs. All you need to do is click on custom voice and in community voices, you can explore the community voices here. Click on here and it will open up 11 labs speech. Here we have punch and bunch of unlimited number of pies in 11 laps. So all you need to do is add the name here, and you are pretty good. So let's test out some. Hey, everyone. Welcome back to the channel. Today, we're talking about all the latest news trends and celebrity gossip. Yeah, I really like it. For example, No Neva Schneider. If you are Chinese, you can use this. Sorry, if you are German, you can use this. Yeah. So I hope you got my point. Feel free to test out this voice because they are really awesome compared to what given in this list of 25 A voices. If you surrender to the wind, if you surrender to the wind, you can write it. Yeah, that's pretty much it. Now I want to show you how you can use your own custom voice. Basically means you are cloning your voice so that your AA voice agent will lose that by getting inbound and outbound calls. So let's name our voice first of all. I already have a sample ready, so I will upload it here. Click on Confirm and let's save it. And let's see how our A voice agent is cloning our voice. Amazing our voice should be added so you can easily search as well. But mine was from, right. So this is our A voice. Let's hear it for the first time. You are Manten. Yeah, let's test it out. Hello. Am I speaking name ho? Yeah, hi. How are you? Hi, Mam. I'm doing well. Thank you for asking. I hope you're doing great, too. Oh, my. Oh, my God. Oh, my God. It's like talking to my own digital atar or my digital clone. Yeah, you really sound like me, to be honest. We have the same noise. Sorry, we have the same sound. Oh, that's quite a coincidence. I guess we're on the same wavelength today. But let's focus on you. Are you currently looking to buy or sell a property? Alright, I hope this makes sense, and this is how you can add that extra level of personalization for a EA voice agent. It will handle all the inbound calls and outbound calls with your EA voice so that your customer will feel that they are talking to you and not this EA voice agent. That's pretty much it, and I will see you in another lecture. Please do share your reviews like, how are you using this Evoice agent? Are you learning it? Are you implementing it? Are you having your own client or are you using for your own business? I'm all ears and my door is always open. That's pretty much it. Bye bye. Take care, and I will see you in another one. 24. Simplify Your Team's Workspace: If you have a big staff and you work in teams, retail has got your back. Learn how to collaborate and manage team members in your workspace. Once you create a new account, you will automatically assigned this environment where you can manage and collaborate with team members. Now, for example, want to have different workspace from testing error handling, you can do that inside Retail Air. So click on your profile and click on Workspace. Let's name this workspace as testing one. And then we can invite the members. Click on Invite and member, and then add the email address. Click on send, they will receive an email invitation. You have been invited to join Manthan's account. Let's accept it. Let them sign in or create new account. Welcome to the workspace. You can see. The team member don't have to add any credit cards or bank account in their details or in their profile. The admin will automatically pay for it. Let us go to our main account, click on Workspace members. Awesome. So that's how you can collaborate inside Retail AI. 25. Class Project: Hi, everyone. This lecture is going to be your class project or about your class homework. So the class homework for you will be to create any assistant, as well as integrating that assistant inmig.com, and you can share the screenshot in PNG or GPG format in the project section to earn your certificate. Let me show you some of the solution that you can create. First of all, you can create an inbound call assistant. Well, if you have barber shop, if you have a dentist, if you have a restaurant, something like that, you can make that solution for your use case, as well as you can do outbound calls for qualifying leads, food delivery, transportation logistics, et cetera. These are the two categories that you can create your homework and share a screenshot or attach the screenshot in the project section to earn your certificate. Well, that's all for this homework lecture. Again, if you have any question, feel free to ask me and I will help you out. 26. You Made It! Closing Moment: Congratulations, guys, you did it. You should be super proud of yourself because you made it till the end. And you should clap for yourself. And if you don't, I will. Now let's come together and thank you very much on this exciting journey of retail EI together. We have built some AI agent, we have break some AA agent. We have looked at all the main.com scenarios, time integration, calendar integration, co high level integration, even NAD integration, and how to set up your own A automation agency by using a bunch of softwares, using cold outreach, to be honest, we have covered literally everything. Now it's your time to take action and get started on this journey. Use the automation tempors that we have built together, prompts that we have used in order to create our retail AI agents high integration at integration so that you don't have to start from scratch and you can get a head start to start your automation journey. But the thing about automation is it will not come together in just one time, keep experimenting and keep learning from the mistakes. A one final piece of advice would be don't try to implement everything together. Pick one thing at a time, master it, and make sure that it is working well. Then move on to another, and my DMs and my ems is always open. You don't have any questions or doubt, please feel free to reach out to me and I'm always here to help you, as well as to hear your success stories that you will get from this course. Alright, once again, thank you very much in this journey, and I hope to see you in some of my other courses. Bye bye and happy autumn meeting.