@setkeeper/text-message-utils
Version:
Get a Text Message's size depending on it's content. Get it's encoding and which characters are not GSM-7 compatible.
19 lines (16 loc) • 622 B
text/typescript
const GraphemeSplitter = require('grapheme-splitter')
const { SegmentedMessage } = require('./models.js')
const graphemeSplitter = new GraphemeSplitter()
enum Encoding {
'GSM-7',
'UCS-2'
}
const getMessageSegmentInformation = (data: string) => {
const segmentedMessage = new SegmentedMessage(data, 'auto', graphemeSplitter)
return {
count: segmentedMessage.segments.length as number,
encoding: segmentedMessage.getEncodingName() as Encoding,
nonGSM7Characters: segmentedMessage.getIncompatibleEncodingCharacters() as string[]
}
}
exports.getMessageSegmentInformation = getMessageSegmentInformation