We discussed about sessions and licenses based on sessions in previous post. There are few more items we need to check for costing. We can buy the power virtual agent subscriptions as Standalone Power Virtual Agent subscription or Power virtual Agent with Microsoft Teams plan subscription. in case the organization wants to implement the chatbot only in Teams channel and they are already using the Microsoft Teams, then second option is suitable for them. Lets compare both these options on different parameters
Deploy bot to the Channels: If we are going for standalone options we can deploy it any channel supported by PVA , where as with Teams , we can deploy the PVA only to Teams channel
Power Automate Connectors : We can use standard connector only with Teams option and if we want to use premium connectors, we must have the standalone subscription
Security : With Teams secure access is enabled by default, however can not generate the secrets for secured access. With standalone subscription, secrets can be generated and turning the secured access on or off as per requirement can also be done
Extending the chatbot with bot framework as well as escalation to live agent features are not available with Extending the PVA with bot framework skills is not possible with Teams subscription
Based on above parameters we should select which plan is appropriate for our requirements. For more details refer to Microsoft documentation
Lets also check about the limits of Teams app and PVA web app
We can have only 50 bots per team , however there is no such limit of web app
In Teams app, only 250 topics are allowed per bot in data verse for Teams environment , otherwise 1000 topics per bot are allowed per bot in data verse environment. Data verse for teams environment can be upgraded to allow 1000 topics per bot.
For any environment, the number of trigger phrases per topic are 200
Skills can be 100 skills per bot for both Teams and web app, however skills are available only of standalone plan, so Teams app should be on standalone plan to use the skills.
We also need to consider the data storage requirements for the PVA implementations. How to calculate the data consumed by PVA so that we can arrive at the needed storage. With usual configuration, PVA has special storage requirements for all the conversations of the chatbot and any attachments uploaded during the conversation.
Lets look at the tables which store conversation transcripts,
When we think about the any implementation, first question would be on costing and buying needed licenses is one important contributor to it. For PVA also its not a exception. Important thing here is unlike Dynamics 365 licenses which depends on number users accessing the application, it depends of the number of chatbot conversations /sessions. The data storage capacity, data retention strategy also plays important role here. On other side the end users who are using the chatbot won’t need any licenses. Lets see how to find out these licensing requirements and costs.
First we need to ask the customer SMEs expected sessions per month. We can guide them on how to arrive at this number . There must be existing way the expected chatbot users asking questions, raising their queries either sending email to some mailbox, visit the portal and searching or even calling to support number. This data needs to be analyzed and the project team has to forecast the expected sessions per month. Why do we need this information? You can see the way PVA licensing is provided below. However this can change so always better to refer Microsoft site
The Power Virtual Agent license which comes with the tenant if we already have a tenant, or we need to buy for the first time. This license comes with 2000 sessions per month. In case your expected sessions are 5000 per month, then 2000 sessions are available with Power Virtual Agent license and you still need additional 3000 sessions . For this additional sessions , you can go for Sessions add-on which provides 1000 sessions per license per month. Hence you can buy 3 sessions add on licenses.
Now the immediate question would be what is session? As per Microsoft definition “A session is an interaction between a user and bot. The session begins when a user topic is triggered and ends when one of these conditions is met—either: The user’s questions are answered, or the conversation exceeds 60 minutes or 100 turns.”
The user ends the chat session. When the bot doesn’t receive a new message for more than 30 minutes, the session is considered closed.
The session is longer than 60 minutes. The first message that occurs after 60 minutes starts a new session.
The session has more than 100 turns. A turn is defined as one exchange between a user and the bot. The one-hundred-and-first turn starts a new session.
On the day of writing this post, this is the definition, however it can change in future, hence better to refer the official site always
We have understood how how to calculate the number of licenses based on expected sessions. After this we need to find out how many user licenses are needed and how much data storage is needed for our PVA implementation