<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Marco T.</title>
    <description>The latest articles on Forem by Marco T. (@marconline).</description>
    <link>https://forem.com/marconline</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1669993%2Ff73197d7-aeb9-407b-8979-791be260f0e5.png</url>
      <title>Forem: Marco T.</title>
      <link>https://forem.com/marconline</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/marconline"/>
    <language>en</language>
    <item>
      <title>Scontreeno - Your AI-empowered expense manager companion</title>
      <dc:creator>Marco T.</dc:creator>
      <pubDate>Sun, 23 Jun 2024 16:21:38 +0000</pubDate>
      <link>https://forem.com/marconline/scontreeno-your-ai-empowered-expense-manager-companion-16e2</link>
      <guid>https://forem.com/marconline/scontreeno-your-ai-empowered-expense-manager-companion-16e2</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for &lt;a href="https://dev.to/challenges/twilio"&gt;Twilio Challenge v24.06.12&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;Scontreeno - whose name is taken from "Scontrino", wich is the italian term for "Recipt" - is a Twilio and AI powered expense manager companion.&lt;br&gt;
Scontreeno is offered as a Whatsapp bot in order to simplify the user experience. You can simply chat with it and upload an image (or a PDF) or your receipt. Scontreeno will analyze it, by using Microsoft Azure AI Services, and will ingest it into the system, creating an AI-enriched search index.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcsviasq8hmeogkas8lj6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcsviasq8hmeogkas8lj6.jpg" alt="Image description" width="800" height="1778"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Scontreeno is capable of understanding &lt;strong&gt;where&lt;/strong&gt;, &lt;strong&gt;when&lt;/strong&gt;, &lt;strong&gt;what&lt;/strong&gt; you purchased and &lt;strong&gt;how much&lt;/strong&gt; you paid (both for the single items and for the total). By ingesting these informations, it's quite easy to enrich the bot with a conversational-based search engine in order to let the user ask:&lt;br&gt;
"Hey, how much did I spend for vegetables last week?" or&lt;br&gt;
"Hey, can you please tell me if I spent more for meat or fish during the last month?"&lt;/p&gt;

&lt;p&gt;Scontreeno could also provide insights and suggestions to users (even extracting informations from other users' receipt). For example:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;you purchase a lot of alcohol / sodas&lt;/li&gt;
&lt;li&gt;your weekly vegetable expense is too low&lt;/li&gt;
&lt;li&gt;you can find your favourite brands at a lower price at shop XYZ this week&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Architectural analysis of the Scontreeno ecosystem
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5rcxejm77z3lkc1gymfb.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5rcxejm77z3lkc1gymfb.jpg" alt="Image description" width="800" height="462"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Scontreeno's demo is composed by two Microsoft Azure functions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;TwilioInput, which receives messages from Twilio&lt;/li&gt;
&lt;li&gt;ReceiptInput, which receives uploaded media&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;TwilioInput has the responsability of understanding if the message contains a media and, if's true, to upload this content to Azure Blob Storage.&lt;/p&gt;

&lt;p&gt;As soon as a file is uploaded an Event Grid event is raised and the second function, ReceiptInput, is triggered. Uploaded media is analyzed using Azure AI Document Intelligence, a powerful cognitive service provided by Microsoft, which can interpret what's inside the document.&lt;/p&gt;

&lt;p&gt;Results are then sent back to the user, using Twilio APIs.&lt;/p&gt;

&lt;p&gt;Azure AI Document Intelligence output can be easilly linked to Azure AI Search, out of the scope of this demo, to index document and process them.&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;Find the public repository here: &lt;a&gt;https://github.com/marconline-scontreeno/Scontreeno&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;You can try it - only document upload (jpg / pdf) and receipt analysis - by following these steps:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add Twilio Whatsapp Sandbox number to your contacts: +1(415)523-8886&lt;/li&gt;
&lt;li&gt;Send him a "join save-famous" message&lt;/li&gt;
&lt;li&gt;As soon as you are accepted into the sandbox, kindly reply with a "hello" message&lt;/li&gt;
&lt;li&gt;After you have been greeted, upload a picture of a receipt (JPG / PDF version). You can also try adding something that is not a receipt, in order to verify that Scontreeno is smart enough!&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Twilio and AI
&lt;/h2&gt;

&lt;p&gt;Programmable Messaging is a great Twilio feature and being integrated with Whatsapp let you create incredible user experiences. Processing sent messages using AI - like in this Scontreeno demo - let you create powerful services with almost no effort.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx1honsg0m0x4cxt6il2l.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fx1honsg0m0x4cxt6il2l.jpg" alt="Image description" width="800" height="1422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjkk7octp490w7mn0gabq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fjkk7octp490w7mn0gabq.png" alt="Image description" width="338" height="305"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Scontreeno is capable of extracting informations from pictures of receipt like this one, even if sentences are skewed and folded.&lt;/p&gt;

&lt;h2&gt;
  
  
  Additional Prize Categories
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Impactful Innovators&lt;/strong&gt;: in my opinion, the real power of Scontreeno is to let user understand how money is spent and when, so the first positive impact is a money management educations for users. But I won't underestimate the power of health suggestions: being able to understand what the user purchased, we can provide him with great insights useful for his health (like: you purchases too much sodas / alcohol, you are not buying vegetables or fruit, your meat consumption is too high and so on). By using Twilio and Whatsapp, tracking expenses is so easy!&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>twiliochallenge</category>
      <category>ai</category>
      <category>twilio</category>
    </item>
  </channel>
</rss>
