Skip to content

Commit

Permalink
Created Types
Browse files Browse the repository at this point in the history
  • Loading branch information
sumithemmadi committed Jun 28, 2023
0 parents commit 22847d9
Show file tree
Hide file tree
Showing 51 changed files with 26,966 additions and 0 deletions.
6 changes: 6 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
./src/convertor.cjs
node_modules
test
dist
build
.truecallerjs/authkey.json
14 changes: 14 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"env": {
"browser": true,
"es2021": true
},
"extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": "latest",
"sourceType": "module"
},
"plugins": ["@typescript-eslint"],
"rules": {}
}
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
dist -diff
12 changes: 12 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# These are supported funding model platforms

github: sumithemmadi
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
# liberapay: sumithemmadi
# issuehunt: sumithemmadi
otechie: # Replace with a single Otechie username
custom: # ["https://paypal.me/sumithemmadi"]
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
node_modules/
.truecallerjs/authkey.json
3 changes: 3 additions & 0 deletions .gitkeep
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
src/
test/
docs/
2 changes: 2 additions & 0 deletions .npmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
node_modules/
.truecallerjs/authkey.json
4 changes: 4 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*.md
build
dist
node_modules
1 change: 1 addition & 0 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{}
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 Emmadi Sumith Kumar

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
202 changes: 202 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,202 @@
# TruecallerJS

<!-- ![TruecallerJS logo](Screenshot_20230606-183149_Chrome.png) -->

[![NPM version](https://img.shields.io/npm/v/truecallerjs.svg)](https://www.npmjs.com/package/truecallerjs)
[![GIT Stars](https://img.shields.io/github/stars/sumithemmadi/truecallerjs)](https://github.com/sumithemmadi/truecallerjs/)
[![Download](https://img.shields.io/npm/dt/truecallerjs.svg)](https://github.com/sumithemmadi/truecallerjs)
[![LICENSE](https://img.shields.io/npm/l/truecallerjs.svg)](https://github.com/sumithemmadi/truecallerjs/blob/main/LICENSE)
[![Maintenance](https://img.shields.io/npms-io/maintenance-score/truecallerjs)](https://github.com/sumithemmadi/truecallerjs)
[![Issues](https://img.shields.io/github/issues/sumithemmadi/truecallerjs)](https://github.com/sumithemmadi/truecallerjs/issues)

Welcome to TruecallerJS! This is a library for retrieving phone number details using the Truecaller API. It provides a simple and convenient way to access information about phone numbers in your Node.js, JavaScript, and TypeScript projects.

## Description

TruecallerJS is built to simplify the process of fetching phone number details. With this library, you can easily integrate Truecaller functionality into your Node.js, JavaScript, and TypeScript applications. It abstracts the complexities of interacting with the Truecaller API and provides a streamlined interface for fetching and processing phone number information.

## Features

- **Phone Number Lookup**: Retrieve detailed information about a phone number, including the owner's name, location, and more.

- **Support for Node.js, JavaScript, and TypeScript**: TruecallerJS can be used in Node.js projects, as well as in JavaScript and TypeScript applications.
- **Simple and Lightweight**: TruecallerJS is designed to be easy to use and lightweight.

## Table of Contents

- [TruecallerJS](#truecallerjs)
- [Description](#description)
- [Features](#features)
- [Table of Contents](#table-of-contents)
- [Installation](#installation)
- [Command Line Usage](#command-line-usage)
- [Limitations](#limitations)
- [Usage](#usage)
- [Simple Example](#simple-example)
- [Bulk Search on Multiple Phone Numbers](#bulk-search-on-multiple-phone-numbers)
- [Disclaimer](#disclaimer)
- [Contributing](#contributing)
- [License](#license)
- [Acknowledgments](#acknowledgments)

## Installation

You can install TruecallerJS using npm:

```bash
npm install truecallerjs
```

To use TruecallerJS from the command line

```bash
npm install -g truecallerjs
```

> **Note**: If you are using a version of `truecallerjs` that is older than [1.1.2](https://github.com/sumithemmadi/truecallerjs/tree/truecallerjs-v1.1.2), we recommend referring to the [truecallerjs-v1.1.2](https://github.com/sumithemmadi/truecallerjs/tree/truecallerjs-v1.1.2) documentation for instructions.
> **Note**: If you are using `truecallerjs` version from [1.1.3](https://github.com/sumithemmadi/truecallerjs/tree/truecallerjs-v1.1.2) to [1.1.5](https://github.com/sumithemmadi/truecallerjs/tree/truecallerjs-v1.1.5), please refer to the [truecallerjs-v1.1.5](https://github.com/sumithemmadi/truecallerjs/tree/truecallerjs-v1.1.5) documentation for instructions.
## Command Line Usage

To use TruecallerJS from the command line, you can run the `truecallerjs` command followed by the desired options and arguments.

Here are some examples of the available options:

- `truecallerjs login`: Use this command to log in to your Truecaller account.
- `truecallerjs -s [number]`: Use this command to search for a phone number and retrieve the caller name and related information.
- `truecallerjs --bulksearch, --bs` command is used to performing bulk number searches using the Truecaller service. It allows you to search for multiple phone numbers at once, making it convenient for processing large sets of phone numbers in a single request.

- `truecallerjs --bulksearch, --bs`: Use this command to perform a bulk number search.
- Additional options include `--raw`, `--name`, `--email`, `--json`, `--xml`, `--yaml`, `--text`, `--nc`, `--installationid`, `--verbose`, and `--help`.

For example:

```bash
~$ truecallerjs -s +9199123456789 --json
{
...
"name":"Sumith Emmadi"
...
}

~$ truecallerjs -s +9199123456789 --name
Name : Sumith Emmadi
```

Example for bulk search

```bash
truecallerjs --bulksearch <phone_number_1>,<phone_number_2>,<phone_number_3>,...,<phone_number_n>
```

Replace `<phone_number_1>, <phone_number_2>, ..., <phone_number_n>` with the actual phone numbers you want to search. Separate each phone number with a comma.

```bash
~$ truecallerjs --bs 9912345678,+14051234567,+919987654321
```

> **Note** : If the country code is not specified for a phone number, it will default to using your own country code.
### Limitations

Please note the following limitations when using the `--bulksearch` option:

1. Maximum Number of Phone Numbers: The tool supports searching 30 or fewer phone numbers at once in a single request. If you exceed this limit, you may need to split your input into multiple requests.

2. Formatting: Ensure that the phone numbers are correctly formatted and do not contain any additional characters or spaces. The tool expects the phone numbers to be provided in a comma-separated format.

## Usage

To use the project, start by installing the `truecallerjs` package via npm:

```bash
npm install truecallerjs
```

### Simple Example

Here's a basic example of how to perform a normal search for a phone number:

```js
import truecallerjs from "truecallerjs";

var search_data = {
number: "9912345678",
countryCode: "IN",
installationId: "a1k07--Vgdfyvv_rftf5uuudhuhnkljyvvtfftjuhbuijbhug",
};

var response = await truecallerjs.search(search_data);
console.log(response.json());

// Additional response methods:
// response.json()
// response.xml()
// response.yaml()
// response.text()

// Example of available data from the response:
// response.getName() => "Sumith Emmadi"
// response.getAlternateName() => "sumith"
// response.getAddresses() => {....}
// response.getEmailId() => [email protected]
// response.getCountryDetails() => {...}
```

In the above example, the `truecallerjs` package is used to search for a phone number. The `search_data` object contains the necessary parameters, including the number, country code, and installation ID. The response from the `truecallerjs.search()` function provides various methods to access the returned data.

> **Note** : Make sure to log in using the `truecallerjs login` command and obtain your installation ID using the `truecallerjs -i` command.
### Bulk Search on Multiple Phone Numbers

The `truecallerjs` package also supports bulk search on multiple phone numbers:

```js
import truecallerjs from "truecallerjs";

var countryCode = "IN";
var installationId = "a1k07--Vgdfyvv_rftf5uuudhuhnkljyvvtfftjuhbuijbhug";
var phoneNumbers = "+9912345678,+14051234567,+919987654321"; // Phone numbers separated by commas

var response = await truecallerjs.bulkSearch(
phoneNumbers,
countryCode,
installationId
);
console.log(response);
```

In this example, the `truecallerjs.bulkSearch()` function is used to perform bulk searches on multiple phone numbers. The `phoneNumbers` parameter should contain the phone numbers separated by commas. The `countryCode` and `installationId` parameters are used to specify the default country code and installation ID, respectively.

> **Note** : Make sure to log in using the `truecallerjs login` command and obtain your installation ID using the `truecallerjs -i` command.
For more details and additional functionalities, please refer to the [documentation](https://github.com/sumithemmadi/truecallerjs/tree/main/docs), including the process for logging in and obtaining the installation ID.

## Disclaimer

The `truecallerjs` tool is not an official Truecaller product. It is a custom script developed by [Sumith Emmadi](https://github.com/sumithemmadi), and its functionality is dependent on the Truecaller service. Please use this tool responsibly and in compliance with the terms of service of Truecaller.

For more information and support, please contact [Sumith Emmadi](https://github.com/sumithemmadi) at <[email protected]> .

## Contributing

Contributions to the `truecallerjs` are not only welcome but highly encouraged!

1. Fork this repository `git clone https://github.com/sumithemmadi/truecallerjs.git`
2. Create a new branch for your contribution.
3. Add your content in the appropriate folder or create a new file.
4. Commit your changes and push them to your forked repository.
5. Open a pull request, explaining the nature of your contribution.

Please note that all contributions should align with the spirit of the repository and be suitable for all audiences. Offensive or inappropriate content will not be accepted.

## License

TruecallerJS is open source and licensed under the MIT License. See the LICENSE file for more information.

## Acknowledgments

Thank you for choosing TruecallerJS! I hope it helps you retrieve phone number details efficiently.

Repository:
[https://github.com/sumithemmadi/truecallerjs.git](https://github.com/sumithemmadi/truecallerjs.git)
Loading

0 comments on commit 22847d9

Please sign in to comment.