Skip to content

ashutosh60/FraudCallsDetection

Repository files navigation

Real Time Fraud Detection

Problem Statement

Detection of fraudulent mobile-phone calls in telecommunications scenario.

Project Description

This project has been built using Microsoft Azure Portal. This scenario covers the back-end components of a real-time analytics pipeline. Data flows through the scenario as follows:

Mobile phone call metadata is sent from the source system to an Azure Event Hubs instance. A Stream Analytics job is started, which receives data via the event hub source. The Stream Analytics job runs a predefined query to transform the input stream and analyze it based on a fraudulent-transaction algorithm. This query uses a tumbling window to segment the stream into distinct temporal units. The Stream Analytics job writes the transformed stream representing detected fraudulent calls to an output sink in Power BI. Then, using Azure App Service, a website is built from the code of this repository on which the Power BI line-chart is embedded. Thus signing in to Power BI is required to view the chart on azure website.

Please sign in to Power BI account first in order to view the report graph embedded in the website hosted on Microsoft Azure.

The Azure Services used are as follows:

  1. Azure Portal: This is used to create Event Hubs, Azure Stream Analytics job and also used to create App Service to host website.
  2. Event Hubs: This is used to storing the input data before analysis.
  3. Azure Stream Analytics: Used to analyse the fraud calls from the input metadata of phone calls. Input is taken in Event Hubs, SQL query used to detect the fradulent call data, output is sent to Power BI for plotting line chart showing the number of fraud calls at a given instant of time.
  4. Azure App Service: Used to create and host a webapp by uploading the code from this repository on Azure app service in order to display Power BI chart analysis.

Other service used is: Power BI: This is used as output of Azure Stream analytics job.

Project Description in detail: the building steps

Sign in to Azure Portal

Create an Event Hub

Event Hubs

After creating the Event hub, the event generator is started to upload sample data by using Telcogenerator.zip file.

Telcogen

Create an Azure Stream Analytics Job

There are three parameters to be set here.

  1. Configure the input: Here we take input in the "Event Hubs".
  2. Configure the output: Here the output is sent to Power BI.
  3. Write the query: The query is written according to the problem statement that is to detect the fraud calls from the input data.

Azure Stream Analytics

Start the Stream Analytics Job and visualize the output

The Azure Stream Analytics job is started from the portal and the ouptut is visualized on Power BI in terms of a line chart.

Power BI

Embedding the Power BI chart in Web application

Azure App Service is used to create and host a webapp by uploading the code from this github repository on Azure app service in order to display Power BI chart analysis.

Azure App Service

From the generated Power BI chart, the html tags to include this in a web app is taken and pasted into the web app building code so as to make the chart visible on the live website. But the chart is only visible if the viewer is signed in to Power BI account.

If Power BI account is not signed in, then "Sign in to Power BI" will be visible instead of the actual embedded dashboard.

The final website looks like this shown below:

Webapp chart

Project URL

This is the Project URL: https://calls-ashutosh.azurewebsites.net

Video URL

This is the demo video URL: https://youtu.be/artzdjVWXuE

About

A website hosted on Azure for analysis of Fraudulent calls

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published