https://github.com/masdxi/cdrs-billing
This repository provides Call Detail Records (CDRs) billing using smart contracts written in Solidity.
https://github.com/masdxi/cdrs-billing
billing cdr smart-contracts telecom
Last synced: 8 months ago
JSON representation
This repository provides Call Detail Records (CDRs) billing using smart contracts written in Solidity.
- Host: GitHub
- URL: https://github.com/masdxi/cdrs-billing
- Owner: MASDXI
- License: gpl-3.0
- Created: 2024-10-01T14:33:36.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-19T07:28:56.000Z (10 months ago)
- Last Synced: 2025-04-23T06:48:58.247Z (8 months ago)
- Topics: billing, cdr, smart-contracts, telecom
- Language: Solidity
- Homepage:
- Size: 239 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# cdr-billing-smart-contracts
> [!Important]
> This repository will no longer maintain suggest to move to [kiwarilabs/abtrasct-contracts](https://github.com/Kiwari-Labs/kiwari-labs-abstract-contracts)
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.
## Prerequisite
- node [Download](https://nodejs.org/en/)
- nvm [Download](https://github.com/nvm-sh/nvm#installing-and-updating)
- git [Download](https://git-scm.com/)
```shell
git clone https://github.com/MASDXI/cdr-billing-smart-contracts.git
cd cdr-billing-smart-contracts
```
## Installing
To install all necessary packages and dependencies in the project, run command.
```
yarn install
```
## Compile the code
To compile the smart contracts, run command.
```
yarn compile
```
## Testing
To run the tests and ensure that the contracts behave as expected, run command.
```
yarn test
```
## Rationale
- The design approach not tied exclusively to `solidity` or `evm-based` but can be applied across various Distributed Ledger Technologies (DLTs) or blockchain frameworks that support turing-complete smart contracts.
- Avoid `WRITE` or `UPDATE` 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.
## Security Considerations
- AS-IS, when change the network `blocktime` total billing cycle will be recalculated.
---
## License
Copyright (C) Sirawit Techavanitch. You are free to use, modify, and distribute the code under the terms of the [GPL v3.0](LICENSE).