0.1.8 • Published 4 years ago

twilio-split-sms v0.1.8

Weekly downloads
261
License
MIT
Repository
github
Last release
4 years ago

twilio-split-sms

This package is a forked version of codesleuth's original split-sms. This version was made to accommodate Twilio's smart encoded charset.

Codesleuth's original documentation:

An SMS message splitter with support for both GSM and Unicode written in JavaScript. GSM support is limited to GSM 03.38 with the extension table (see the Wikipedia article); no support for natural language shift tables exists at this time.

View the demo...

Getting Started

  1. Install via npm: npm install split-sms
  2. Include in your project: var splitter = require('split-sms');
  3. Start splitting messages! var info = splitter.split('JavaScript is fun!');

In the example above, info will be:

{
  "characterSet": "GSM",
  "parts": [
    {
      "content": "JavaScript is fun!",
      "length": 18,
      "bytes": 18
    }
  ],
  "bytes": 18,
  "length": 18,
  "remainingInPart": 142
}

Unicode example:

splitter.split('Snowman shows off! ☃');
{
  "characterSet": "Unicode",
  "parts": [
    {
      "content": "Snowman shows off! ☃",
      "length": 20,
      "bytes": 40
    }
  ],
  "bytes": 40,
  "length": 20,
  "remainingInPart": 50
}

In The Browser

You can use Bower to install split-sms components:

$ bower install split-sms --save

You can also use RawGit to link directly to specific versions of the built scripts. For example, the following URLs are for version 0.1.7:

TypeURL
Sourcehttps://github.com/Codesleuth/split-sms/blob/0.1.7/dist/split-sms.min.js
RawGit devhttps://rawgit.com/Codesleuth/split-sms/0.1.7/dist/split-sms.min.js
RawGit CDNhttps://cdn.rawgit.com/Codesleuth/split-sms/0.1.7/dist/split-sms.min.js

Alternatively, pull out the scripts in the dist/ directory and consume them.

To generate a browser consumable script yourself, clone the repo and run the following commands:

$ npm install
$ npm run build

This will generate the browser-compatible scripts in dist/ and export splitter to the global so you can then consume it in the browser as follows:

<html>
<head>
  <script src="split-sms.js"></script>
</head>
<body>
<script>
  var info = window.splitter.split('Hello!');
  document.write(JSON.stringify(info));
</script>
</body>

See the demo site for an example.