Skip to content

douglasmoraisdev/work-at-olist

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 

Repository files navigation

Telephone Calls API

This HTTP REST API receives call detail records and calculates monthly bills for a given telephone number.

The API avoids consistency errors when receiving call records, eliminating the concerns of telecommunication platforms that consume the service.

This service expects Start/End call record pairs inputs. Then, counts bills based of pre-existent charge prices. On the final month period, a Bill is avaliable for query with all call records information of subscribers by monthly period.

Instalation

Deploying on Heroku:

Requirements

Instructions

  1. Clone the project locally:
$ git clone git@github.com:douglasmoraisdev/work-at-olist.git
  1. Upload the code for the Heroku App (e.g: telephone-call-api):
$ cd work-at-olist/
$ heroku git:remote -a telephone-call-api
$ git subtree push --prefix telephone_call_api/ heroku master

Done.

Test instructions

Requirements

  1. cd project root path:
$ cd work-at-olist/telephone_call_api/
  1. Run pipenv virtual environment and update libraries:
$ pipenv shell
$ pipenv install
  1. run tests
$ python manage.py test

or

$ python3 manage.py test

Depending of your python installation.

API Documentation

Dev Work environment

Computer/operating system, text editor/IDE, libraries, etc).

  • Hardware: Lenovo Notebook, Intel i7 processor, 16GB Ram, NVIDIA 2GB
  • SO: Linux Ubuntu 18.04 LTS
  • Text Editor: VSCode 1.26
  • Python version: 3.6
  • Main libraries: django, djangorestframework, django-heroku (complete list on Pipfile)
  • Virtual environment using pipenv (https://github.com/pypa/pipenv)

Extras:

  • Deploy to a diferent Heroku App:
$ cd work-at-olist/
$ git remote remove heroku
$ heroku git:remote -a <your-heroku-app-name>
$ git subtree push --prefix telephone_call_api/ heroku master

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%