<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Aura – </title>
    <link>/docs/aura-assistant/development-architecture/</link>
    <description>Recent content on Aura</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    
	  <atom:link href="/docs/aura-assistant/development-architecture/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: </title>
      <link>/docs/aura-assistant/development-architecture/architecture/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      
      <guid>/docs/aura-assistant/development-architecture/architecture/</guid>
      <description>
        
        
        &lt;h1 id=&#34;aura-development-architecture&#34;&gt;Aura development architecture&lt;/h1&gt;


&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;Description of the &lt;em&gt;&lt;strong&gt;Aura Virtual Assistant&lt;/strong&gt;&lt;/em&gt; development architecture, its operation and main components&lt;/p&gt;

&lt;/div&gt;

&lt;h2 id=&#34;introduction&#34;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;A bot is an application, particularly an HTTP server, that allows &lt;strong&gt;interaction with users in a conversational way&lt;/strong&gt;. Different means of interaction are available, such as text, cards with images, video or audio and speech.&lt;/p&gt;
&lt;p&gt;Users interact with the bot through a given channel, that is the final application used directly by the users. For instance, the bot can be accessible from &lt;strong&gt;Facebook&lt;/strong&gt;, &lt;strong&gt;WhatsApp&lt;/strong&gt; or from any private application, such as My O2 or Mi Movistar. Every message exchanged between the user and the bot is called an &lt;strong&gt;activity&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;In Aura distributed architecture, the user interacts directly with the root bot, here named &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt;, and the root bot delegates some of its conversational logic to the skill &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Skills and root bot communicate over HTTP using the Bot Framework protocol.&lt;/p&gt;
&lt;p&gt;Both &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; and &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; are separate bots and are published independently.&lt;/p&gt;
&lt;h3 id=&#34;main-technical-components&#34;&gt;Main technical components&lt;/h3&gt;
&lt;p&gt;The key Aura technical components that executes all the functionalities of &lt;em&gt;&lt;strong&gt;Aura Virtual Assistant&lt;/strong&gt;&lt;/em&gt; are defined below.&lt;/p&gt;
&lt;p&gt;&lt;i class=&#34;fa-solid fa-circle-info fa-xl&#34; style=&#34;color: #3267c3;&#34;&gt;&lt;/i&gt; Take into account the &lt;a href=&#34;../../../docs/aura-assistant/development-architecture/#mapping-functional-architecture-with-development-architecture&#34;&gt;mapping between the functional architecture with development architecture&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; is the main component in charge of handling the assistant. It is responsible for the communication between each channel and its corresponding skill, keeping track of all the communication process, but introducing a minimal interference on it.&lt;/p&gt;
&lt;p&gt;&lt;i class=&#34;fa-regular fa-file-lines fa-xl&#34; style=&#34;color: #0d5de7;&#34;&gt;&lt;/i&gt; Access detailed technical documentation regarding &lt;a href=&#34;../../../docs/components/aura-groot/&#34;&gt;&lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; component&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; is a skill based on Microsoft Bot Framework that constitutes Aura&amp;rsquo;s neuronal network. It handles the requests received from &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; and interacts with every Aura system or component in order to provide Aura users with the intended answer or requested service.&lt;/p&gt;
&lt;p&gt;&lt;i class=&#34;fa-regular fa-file-lines fa-xl&#34; style=&#34;color: #0d5de7;&#34;&gt;&lt;/i&gt; Access detailed technical documentation regarding &lt;a href=&#34;../../../docs/components/aura-bot-platform/&#34;&gt;&lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; component&lt;/a&gt;&lt;/p&gt;
  &lt;!-- LINK!!!!!!! --&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;operational-flow&#34;&gt;Operational flow&lt;/h3&gt;
&lt;p&gt;The main stages in tasks in &lt;em&gt;&lt;strong&gt;Aura Virtual Assistant&lt;/strong&gt;&lt;/em&gt; conversational process are described below and shown in the following flowchart.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; adapter receives activities from the user and forwards them to the &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; activity handler. (Activities from the user are received at the &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; messaging endpoint.)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; uses a skill HTTP client to send an activity to the skill. The client gets the consumer-skill conversation information from a skill definition and a skill conversation ID factory. This includes the service URL that the skill will use to reply to the activity.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; adapter receives activities from &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; and forwards them to the skill&amp;rsquo;s activity handler. (Activities from the consumer are received at the skill bot&amp;rsquo;s messaging endpoint).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;When &lt;em&gt;&lt;strong&gt;aura-bot&lt;/strong&gt;&lt;/em&gt; responds, the &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt;s skill handler receives the activity. It gets the root-user conversation information from the skill conversation ID factory. It then forwards the activity to the &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt;&amp;rsquo;s adapter. (Activities from the skill are received at the &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt;&amp;rsquo;s skill host endpoint).&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;The &lt;em&gt;&lt;strong&gt;aura-groot&lt;/strong&gt;&lt;/em&gt; adapter sends messages from the skill to the user.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;../../../images/aura-groot/full-flows-only-main-blocks.svg&#34; alt=&#34;Aura Groot conversational process&#34;&gt;&lt;/p&gt;

      </description>
    </item>
    
  </channel>
</rss>
