This repository provides Call Detail Records (CDRs) billing using smart contracts written in Solidity. It enables telecom operators and service providers to manage billing processes transparently and efficiently on a blockchain network, ensuring accurate, immutable, and automated.
git clone https://github.com/MASDXI/cdr-billing-smart-contracts.git
cd cdr-billing-smart-contracts
To install all necessary packages and dependencies in the project, run command
yarn install
To compile the smart contracts, run command
yarn compile
To run the tests and ensure that the contracts behave as expected, run command
yarn test
- The design approach not tied exclusively to
solidity
orevm-based
but can be applied across various Distributed Ledger Technologies (DLTs) or blockchain frameworks that support turing-complete smart contracts. - Avoid
WRITE
orUPDATE
operation with sliding window algorithm for billing efficiently over a specified time period. This method helps in maintaining a consistent billing cycle by leveraging a sliding window mechanism that automatically accounts for time-based without needing constant manual updates.
- AS-IS, when change the network
blocktime
total billing cycle will be recalculate
All code within the contracts
directory is released under the GNU General Public License v3.0.
Copyright (C) sirawt. You are free to use, modify, and distribute the code under the terms of the GPL v3.0.