npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@akane_chiwa/getcontact-web-js

v1.0.5

Published

getcontact-web-api

Downloads

738

Readme

GetContact Web JS

This project is an implementation using Puppeteer and Axios to interact with the GetContact website, allowing you to authenticate with a token, retrieve tag information, and search for phone number details.

Features

  • Token Authentication: Authenticate using an access token to log into the GetContact web interface.
  • Tag Retrieval: Retrieve all tags associated with a phone number using a hash.
  • Phone Number Search: Search for information related to a specific phone number, including the owner's name and provider.

Prerequisites

Ensure that Node.js is installed before proceeding.

Installation

  1. Install the npm package:
npm i @akane_chiwa/getcontact-web-js
  1. (Optional) If you have a custom path to Chromium, set it using the setChromiumPath function:
const chiwa = require('@akane_chiwa/getcontact-web-js');

chiwa.setChromiumPath('/path/to/your/chromium');

Obtaining an Access Token

  1. Install the EditThisCookie extension.
  2. Open GetContact Web on your PC.
  3. Scan the QR code.
  4. After logging in, you can obtain the access token from the accessToken value.

Alt text

Usage

Token Authentication

To authenticate with the provided access token:

const chiwa = require('@akane_chiwa/getcontact-web-js');

(async () => {
  try {
    const token = 'user_provided_token_here'; // Replace with your access token
    chiwa.setChromiumPath('/path/to/your/chromium'); // Optional: Set the path to Chromium if needed
    await chiwa.authenticateWithToken(token); // Authenticate using the token
  } catch (error) {
    console.error('Error:', error.message);
  }
})();

Retrieve All Tags

To retrieve all tags associated with a phone number:

const chiwa = require('@akane_chiwa/getcontact-web-js');

(async () => {
  try {
    // You MUST provide the complete number along with the country code.
    const phoneNumber = '+6285701203115'
    const tags = await chiwa.getAllTags(phoneNumber);
    console.log(tags);
  } catch (error) {
    console.error('Error fetching tags:', error);
  }
})();

Search Phone Number Information

To search for information related to a phone number: Note: You can search for a phone number without including the country code, but this search will be limited to numbers within your own country code. To search for numbers outside your country, make sure to include the country code.

const chiwa = require('@akane_chiwa/getcontact-web-js');

(async () => {
  try {
    // You don't need to enter the country code because the country code is already provided by Getcontact in the search field.
    const phoneNumber = '85701203115'; // The phone number you want to search
    const info = await chiwa.getNumberTag(phoneNumber);
//
//  Use this to search for numbers outside your country code.
//  const countryCode = '+62'
//  const info = await chiwa.getNumberTag(phoneNumber, countryCode);
//  This will change the default country code before performing the search.
//
    console.log(info);
  } catch (error) {
    console.error('Error during search:', error.message);
  }
})();

Directory Structure

  • ./gtc_session/: Directory where sessions are stored in JSON files.
  • ./screenshot.png: Screenshot of the page accessed after authentication.

Contribution

If you'd like to contribute to this project, please fork this repository and submit a pull request with your changes.

License

This project is licensed under the MIT License.


Reach me!