Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

sms-segments-calculator

Package Overview
Dependencies
Maintainers
1
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

sms-segments-calculator

SMS segements calculator

  • 1.2.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
28K
increased by23.54%
Maintainers
1
Weekly downloads
 
Created
Source

SMS Segment Calculator

This repo contains a package for an SMS segments calculator. The package is released as a nodeJS package as well as a browser script. A browser demo for this package can be accessed here

Usage

nodeJS

The package can be installed using:

npm install --save sms-segments-calculator

Sample usage:

const { SegmentedMessage } = require('sms-segments-calculator');

const segmentedMessage = new SegmentedMessage('Hello World');

console.log(segmentedMessage.encodingName); // "GSM-7"
console.log(segmentedMessage.segmentsCount); // "1"

Browser

You can add the library to your page using the CDN file:

<script src="https://cdn.jsdelivr.net/gh/TwilioDevEd/message-segment-calculator/docs/scripts/segmentsCalculator.js" integrity="sha256-wXuHVlXNhEWNzRKozzB87Qyi9/3p6LKskjDXFHIMInw=" crossorigin="anonymous"></script>

Alternatively you can add the library to your page using the file segmentsCalculator.js provided in docs/scripts/ and adding it to your page:

<script type="text/javascript" src="scripts/segmentsCalculator.js"></script>

And example of usage can be find in docs/index.html

Documentation

SegmentedMessage class

This is the main class exposed by the package

constructor(message, encoding)

Arguments:

  • message: Body of the SMS
  • encoding: Optional: encoding. It can be GSM-7, UCS-2, auto. Default value: auto
encodingName

Returns the name of the calculated encoding for the message: GSM-7 or UCS-2

totalSize

Total size of the message in bits (including User Data Header if present)

messageSize

Total size of the message in bits (excluding User Data Header if present)

segmentsCount

Number of segment(s)

[getNonGsmCharacters()]

Return an array with the non GSM-7 characters in the body. It can be used to replace character and reduce the number of segments

Try the library

If you want to test the library you can use the script provided in playground/index.js. Install the dependencies (npm install) and then run:

$ node playground/index.js "👋 Hello World 🌍"

Contributing

This code is open source and welcomes contributions. All contributions are subject to our Code of Conduct.

The source code for the library is all contained in the src folder. Before submitting a PR:

  • Run linter using npm run lint command and make sure there are no linter error
  • Compile the code using npm run build command and make sure there are no errors
  • Execute the test using npm test and make sure all tests pass
  • Transpile the code using npm run webpack and test the web page in docs/index.html

License

MIT

Disclaimer

No warranty expressed or implied. Software is as is.

Keywords

FAQs

Package last updated on 04 Oct 2022

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc