Giter VIP home page Giter VIP logo

signal124's Introduction

Signal124

Binary data to GSM 7-bit transfer

Signal124 is a method focusing to transfer binary data in obsolete communication in the most effective way. Ideal for streaming short binary strings to the network. It is effective because 124 GSM accepted chars were used instead of other Base distributions.

The current algorithm has been written for the most usable way for obsolete communication. For minifying data is recommended to use a compressor before encoding.

Alphabet

Signal124 needs 124 characters to represent the encoded binary data in ASCII.

From the 128 GSM 03.38 characters, the following three ones have been omitted:

Char Explanation Verdict
LF a Line Feed control excluded
ESC an Escape control excluded

Strings with special meaning:

Char Explanation Verdict
SP a Space character; indicate the use of the encoding excluded
CR a Carriage Return control; used as a delimiter between messages excluded

The translation table is composed of following characters:

Symbol Symbol Symbol Symbol Symbol Symbol Symbol Symbol
0 @ 14 Δ SP 44 0 60 ¡ 76 P 92 ¿ 108 p
1 £ 15 _ 29 ! 45 1 61 A 77 Q 93 a 109 q
2 $ 16 Φ 30 " 46 2 62 B 78 R 94 b 110 r
3 ¥ 17 Γ 31 # 47 3 63 C 79 S 95 c 111 s
4 è 18 Λ 32 ¤ 48 4 64 D 80 T 96 d 112 t
5 é 19 Ω 33 % 49 5 65 E 81 U 97 e 113 u
6 ù 20 Π 34 & 50 6 66 F 82 V 98 f 114 v
7 ì 21 Ψ 35 ' 51 7 67 G 83 W 99 g 115 w
8 ò 22 Σ 36 ( 52 8 68 H 84 X 100 h 116 x
9 Ç 23 Θ 37 ) 53 9 69 I 85 Y 101 i 117 y
LF 24 Ξ 38 * 54 : 70 J 86 Z 102 j 118 z
10 Ø ESC 39 + 55 ; 71 K 87 Ä 103 k 119 ä
11 ø 25 Æ 40 , 56 < 72 L 88 Ö 104 l 120 ö
CR 26 æ 41 - 57 = 73 M 89 Ñ 105 m 121 ñ
12 Å 27 ß 42 . 58 > 74 N 90 Ü 106 n 122 ü
13 å 28 É 43 / 59 ? 75 O 91 § 107 o 123 à

Example of transaction

Encoded:

 tØàù;Θf£&0ì8E(Å
J#c+§ΦèCØå
CΩÄ+'6¿£/ù

  • a Space character indicates the encoding is used (optional)
  • a Carriage return is a delimiter for next data

Decoded:

space - encoding signal124

Hell-o World
John Doe
signal01

Distributions

Project

Please, feel free to contribute to this project to improve it and integrate it into use cases.

You can raise issue or send pull request.

Compression

Consider using lossless compression before transferring and streaming your data. Probably you want to achieve a compromise between fast encoding and data size.

Examples of lossless compression libraries:

  • Brotli - allows a denser packing than gzip and deflate
  • LZ4 - compression and decompression speed
  • Snappy - aims for very high speeds and reasonable compression

License

CORE License

signal124's People

Contributors

error2215 avatar rastislavcore avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.