• Stars
    star
    184
  • Rank 208,546 (Top 5 %)
  • Language
  • Created over 12 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A simple repo containing a list of known e-mail to SMS, MMS, and Rich Messaging carrier gateways in JSON format under a MIT or LGPL license.

E-mail to SMS/MMS Gateways in JSON Format

A simple repo containing a list of known e-mail to SMS, MMS, and Rich Messaging gateways in JSON format under a MIT or LGPL license. If you want to add SMS or MMS support to your application but money/cost is an issue, this may be the answer you are looking for. Basically, this is a giant list, sorted by country, of active gateways that transform e-mails into SMS/MMS messages on a mobile phone network. It does have the downside of requiring the user to select their carrier, enter in their full phone number (usually with country code), and deal with their carrier's unique gateway issues (e.g. sometimes requires the number to be prefixed with '0', having to ask their carrier to enable e-mail to SMS for their account, etc). While the biggest carriers tend to support e-mail to SMS/MMS, not every carrier does.

Carriers are constantly changing, so GitHub is a perfect fit for this sort of project. Set up a cron job to download this project automatically or use it as a submodule in your own Git project. If you know of any changes that need to be made, submit a pull request so that everyone benefits.

Features

  • Allows for free SMS/MMS integration into any application.
  • Since it is in JSON format, it is programming language agnostic.
  • Has a liberal open source license. MIT or LGPL, your choice.
  • Designed for relatively painless integration into your project.
  • Sits on GitHub for all of that pull request and issue tracker goodness to easily submit changes and ideas respectively.

Useful Information

Using the file is pretty straight-forward. Just load the file, JSON decode it (many languages offer native support), and then do something with it.

'sms_carriers' contains a list of carriers offering e-mail to SMS. 'mms_carriers' contains a list of carriers offering e-mail to MMS. The latter list is much smaller. Some of the SMS carriers support MMS, but don't count on it.

Each of the carriers are keyed off of a code for country or region (typically the ICANN TLD). For example, 'us' is for 'United States'. The 'countries' mapping can be used to map the code to a display name. The key names are carefully chosen for maximum portability and no conflicts. For example, if a web form contains a dropdown 'select' box, a 'us-at_and_t' value would be able to select the 'United States - AT&T' carrier.

The carriers are ordered as follows: United States, Canada, countries sorted by their English name, and then weird stuff that doesn't fit in anywhere else.

Some carriers have more than one possible e-mail address. Each carrier is listed in an array as ["Display name", "{number}@address.com", "{number}@address2.com", ...] The first address listed is likely to work without any issue. If you want to get fancy, give the user the option of which address to use.

On the application/server end of things, replace the string '{number}' with a user-supplied phone number. Don't forget to do important stuff like sanitize the user's input so that only digits remain (no hyphens or other characters, just digits) and perform validation so users can't just enter any ol' e-mail address or otherwise break your desired system. It is advisable to show the full e-mail address to the user that includes their mobile number so they can have the option to try it out first with their own e-mail provider to make sure it works. A lot of mobile phone users don't know that e-mail to SMS even exists.

If possible, use a black hole e-mail address for the bouncebacks that will happen. SMS/MMS gateways are not the greatest at handling error conditions.

Program your application to handle the case where a carrier ceases to exist and the entry vanishes or changes in the file. It does happen. Users may also change carriers and transfer their number to the new carrier. Be as flexible as possible.

'lastupdated' contains the date of the last update of the file. This exists so your application can figure out if it is working with stale information.

Mobile carriers don't actually necessarily need to own the network they are using. These are known as Mobile Virtual Network Operators (MVNO). An example is Tracfone, which uses multiple networks to deliver service to their customers - they negotiate the lowest possible rates from multiple providers such as AT&T, Sprint, T-Mobile, etc. Straight Talk is another example of a MVNO, which may actually use Tracfone under the hood, but it gets confusing when multiple layers are involved. The problem with MVNOs is that the user knows the brand name (e.g. Tracfone) but not their actual carrier (e.g. AT&T) until they go to do e-mail to SMS. Each MVNO is constantly changing and bartering for the lowest prices to stay competitive. As a result, the quality of this list is affected. In general, the carrier most likely to be used is specified as the entry if the MVNO doesn't offer their own e-mail to SMS gateway.

Finally, this solution isn't going to work for everyone. If you absolutely need SMS/MMS to work with the least hassle for your users, you will need to spend money. There is currently no way around this. Look for a 'GSM modem' if you need to go all out. There are also web services like Twilio and Tropo available that do a lot of the hard work for you. Each solution has upsides and downsides.

Sources

The initial release of this project was a lot of manual data entry (yuck). Wikipedia was the most helpful source - it was pretty easy to look at the history diffs to see what had changed. Unfortunately, the article was deleted and the Internet now has no central source for the information. Pull requests (or just open an issue in the tracker) are probably the only thing that will keep this repo current. A couple other bits of information I found scattered around the Internet were also merged in. A quick little command-line PHP script that checked the MX and A records of each domain helped identify and remove a number of obviously broken entries.

I'm pretty sure this is the most complete and functional list of this kind. It is certainly the first time that this data has been massaged into a format suitable for use in most programming languages. You're welcome.

More Repositories

1

ultimate-web-scraper

A PHP library/toolkit designed to handle all of your web scraping needs under a MIT or LGPL license. Also has web server and WebSocket server classes for building custom servers.
PHP
424
star
2

js-fileexplorer

A zero dependencies, customizable, pure Javascript widget for navigating, managing, uploading, and downloading files and folders or other hierarchical object structures on any modern web browser.
JavaScript
181
star
3

sso-server

Do you need a PHP login system that rocks? Then install this SSO server. It's an awesome, scalable, secure, flexible PHP login system for the modern era.
PHP
122
star
4

createprocess-windows

A complete, robust command-line utility to construct highly customized calls to the CreateProcess() Windows API. Released under a MIT or LGPL license.
C++
94
star
5

php-app-server

Create lightweight, installable applications written in HTML, CSS, Javascript, and PHP for the Windows, Mac, and Linux desktop operating systems.
PHP
88
star
6

cloud-storage-server

An open source, extensible, self-hosted cloud storage API. The base server implements a complete file system similar to Amazon Cloud Drive, B2 Cloud Storage and other providers. MIT or LGPL.
PHP
79
star
7

cross-platform-cpp

A wonderful, lightweight, cross-platform C++ snippet library under a MIT or LGPL license.
C++
74
star
8

jquery-fancyfileuploader

A jQuery plugin to convert the HTML file input type into a fancy file uploader under a MIT or LGPL license. Mobile-friendly too!
JavaScript
53
star
9

portable-apache-maria-db-php-for-windows

Portable Apache + Maria DB + PHP for Windows is for web developers who prefer manually editing configuration files and want "manual" but quick startup of Apache and Maria DB (no Windows services). No more hunting for ZIP files for each separate piece of software.
PHP
47
star
10

php-filemanager

A fantastic mobile-friendly, web-based file manager, code editor, and file previewer for the web. Can be used to create HTML/CSS/Javascript embeds for websites, a web-based file sharing portal, and much more. MIT or LGPL, your choice.
JavaScript
45
star
11

service-manager

The world's first cross-platform, open source (MIT or LGPL), programming AND scripting language-agnostic solution to system service development. Source code:
PHP
37
star
12

php-license-server

A high-performance license server system service for creating and managing products, major versions, and software licenses for the purpose of selling installable software products.
PHP
37
star
13

cloud-backup

A flexible, powerful, and easy to use rolling incremental backup system that pushes collated, compressed, and encrypted data to online cloud storage services. MIT or LGPL.
PHP
26
star
14

ultimate-email

A PHP library/toolkit designed to handle all of your one-off e-mail needs under a MIT or LGPL license.
PHP
26
star
15

windows-pe-artifact-library

Contains over 375 samples of Windows Portable Executable (PE) files ranging from the common to the completely esoteric with detailed origin information for each sample. Spans decades of computing in roughly 64MB of disk storage. Unique, ultra-rare PE file format artifacts. Any researcher's most delightful find!
23
star
16

php-ext-qolfuncs

A set of quality of life improvement functions designed for PHP core.
C
23
star
17

php-cool-file-transfer

Directly transfer files between two devices (PC, tablet, smartphone, refridgerator) using nothing more than a web browser and a standard PHP enabled web server. MIT or LGPL.
PHP
22
star
18

messagebox-windows

A complete, robust command-line utility to construct calls to the MessageBox() and MessageBeep() Windows APIs. Released under a MIT or LGPL license.
C++
19
star
19

ssh-win64

An automatically updated repository of MSYS SSH binaries for 64-bit Windows. Sourced via Git Portable.
19
star
20

server-instant-start

Spin up a fully configured Ubuntu/Debian-based web server in under 10 minutes with Nginx (w/ HTTPS), PHP FPM, Postfix, OpenDKIM, MySQL/MariaDB, PostgreSQL, and more. Deploy your web application too.
PHP
19
star
21

sso-client-php

The PHP SSO Client portion of the Barebones SSO Server/Client. Pairs with the SSO Server, which is an awesome, scalable, secure, flexible PHP login system that's become a bit ridiculous - but it still rocks anyway.
PHP
19
star
22

portable-apache-mysql-php-for-windows

SEE NOTE. Portable Apache + MySQL + PHP for Windows is for web developers who prefer manually editing configuration files and want "manual" but quick startup of Apache and MySQL (no Windows services). No more hunting for ZIP files for each separate piece of software.
PHP
17
star
23

service-manager-src

The source code to the world's first cross-platform, open source (MIT or LGPL), programming AND scripting language-agnostic solution to system service development. Binaries:
C++
16
star
24

php-winpefile

Windows Portable Executable file format command-line tools and PHP classes. Easily extract structures and information, modify files, and even construct files from scratch in the Windows Portable Executable (PE) file format (EXEs, DLLs, etc).
PHP
16
star
25

xcron

xcron is the souped up, modernized cron/Task Scheduler for Windows, Mac OSX, Linux, and FreeBSD server and desktop operating systems. MIT or LGPL.
PHP
10
star
26

digitalocean

DigitalOcean PHP SDK plus a feature-complete command-line interface with full support for all DigitalOcean APIs. MIT or LGPL.
PHP
10
star
27

ssh-win32

An automatically updated repository of MSYS SSH binaries for 32-bit Windows. Sourced via Git Portable.
9
star
28

php-decomposer

Generate no-conflict standalone builds of PHP Composer/PSR-enabled software. MIT or LGPL.
PHP
9
star
29

php-ext-sync

SEE NOTE. CubicleSoft authored PHP Extension: Synchronization objects (sync). MIT license.
C
8
star
30

admin-pack

A PHP toolkit designed specifically for programmers to quickly create a nice-looking, custom-built, secure administrative web interface. MIT or LGPL.
PHP
8
star
31

php-obsmanager

Remotely control Open Broadcaster (OBS) scene selection anywhere in the world via a standard web browser. MIT or LGPL.
PHP
7
star
32

barebones-cms

The official Barebones CMS release distribution. Accept no substitutes. MIT or LGPL.
PHP
7
star
33

admin-pack-with-extras

A PHP toolkit designed specifically for programmers to quickly create a nice-looking, custom-built, secure administrative web interface. MIT or LGPL.
JavaScript
7
star
34

php-discord-sdk

An ultra-lightweight PHP SDK for accessing the Discord API and Discord webhook endpoints.
PHP
7
star
35

cloud-storage-tools

Useful tools to access Cloud Storage Server APIs directly from the command-line.
PHP
7
star
36

php-ssl-certs

Easily manage SSL Certificate Signing Requests (CSRs) and SSL certificate chains with a pure PHP-based command-line tool. MIT or LGPL.
PHP
7
star
37

php-libs

A single repository containing all CubicleSoft PHP libraries. Fully automated nightly updates. MIT or LGPL.
PHP
7
star
38

status-tracker

A simple and elegant cron script and web application health status tracker written in PHP. MIT or LGPL.
PHP
7
star
39

web-knocker-firewall-service

Not your average port knocker. A web-based service written in pure PHP that opens protected TCP and UDP ports in response to encrypted requests from a correctly configured client for a limited but renewable time period. MIT or LGPL.
PHP
7
star
40

php-drc

Data Relay Center (DRC) is a powerful multi-channel, secure, general-purpose WebSocket PHP server and client SDKs for PHP and Javascript. Similar to how Internet Relay Chat (IRC) works but designed specifically for data and the web!
PHP
6
star
41

ifds

Easily create your own custom file format with the Incredibly Flexible Data Storage (IFDS) file format. Repository contains: The IFDS specification (CC0) and the official PHP reference implementation of IFDS, a paging file cache class, and example usage classes (MIT or LGPL).
PHP
6
star
42

offline-forms

A form designer and data gathering tool for use in areas with spotty or unknown Internet connectivity powered by any standard web browser. MIT or LGPL.
JavaScript
5
star
43

getsidinfo-windows

Dumps information about Windows Security Identifiers (SIDs) as easy-to-consume JSON output. MIT or LGPL.
C++
5
star
44

portable-apps-mirror-proxy

An unofficial WSUS-like mirror/proxy server with system service integration for the Portable Apps platform client software. Choose from a slightly modified MIT or LGPL license.
PHP
5
star
45

webroute

Official reference implementation and technical description of the WebRoute Internet protocol. MIT or LGPL.
PHP
5
star
46

php-zipstreamwriter

A fast, efficient streaming library for creating ZIP files on the fly in pure userland PHP without any external tools, PHP extensions, or physical disk storage requirements.
PHP
4
star
47

php-csprng

A PHP library that utilizes available CSPRNGs and a set of convenience functions for generating random data under a MIT or LGPL license.
PHP
4
star
48

php-flexforms

FlexForms is a powerful HTML forms generator/builder PHP class to output HTML forms using PHP arrays. MIT or LGPL.
PHP
4
star
49

network-speedtest-cli

A command-line tool for cloud and network speed testing of single TCP connections. Supports most common setups (e.g. TCP ports 22, 80, 443, and others) and has integrations for Digital Ocean, speedtest.net, and custom OoklaServer installs.
PHP
4
star
50

license-server-demo

A complete Stripe + PHP License Server integration + product support center + demo app ready to adjust and deploy. Get back to writing software in minutes.
PHP
4
star
51

gettokeninformation-windows

A complete, robust command-line utility to dump the contents of Windows security tokens using the GetTokenInformation() Windows API as JSON. MIT or LGPL.
C++
4
star
52

remoted-api-server

Allows any standard TCP/IP server to be remoted with low-overhead TCP connectivity. Allows TCP/IP clients to easily and directly connect to a TCP/IP server operating completely behind a firewall by utilizing the WebRoute protocol. MIT or LGPL.
PHP
4
star
53

php-short-open-tag-finder

Intelligent command-line tool to find software references to short open tags with an optional "ask to replace" mode. Compatible with all versions of PHP, including PHP 8.
PHP
4
star
54

efss

Encrypted File Storage System (EFSS). A real, virtual, mountable block-based file system for PHP. MIT or LGPL.
PHP
4
star
55

voicemail-manager

Works with Twilio-compatible systems to automatically route incoming calls to a voicemail queue. Has flexible management options available through phone and web interfaces.
PHP
4
star
56

cloud-storage-server-ext-scripts

A powerful and flexible cross-platform /scripts extension for the self-hosted cloud storage API for starting and monitoring long-running scripts. Includes a PHP SDK for interacting with the /scripts API. MIT or LGPL.
PHP
4
star
57

json-base64

A single, massive repository containing all official reference implementations of JSON-Base64 as well as related applications, addons, icons, and logos.
C#
4
star
58

jquery-ui-masked-picker

A jQuery UI plugin that implements a masked picker to fill in a custom-formatted string.
HTML
3
star
59

sso-native-apps

Example native app frameworks for integrating Android, iOS, Windows Phone 8, and popular desktop operating systems (Windows, Mac, Linux) with the SSO Server.
C++
3
star
60

js-flexforms

FlexForms is a powerful HTML forms generator/builder Javascript class to output HTML forms using JSON-style arrays. MIT or LGPL.
JavaScript
3
star
61

php-misc

Miscellaneous, lonely PHP classes that don't already have a home in another CubicleSoft product but want to be free and open source and loved. MIT or LGPL.
PHP
3
star
62

php-flexforms-modules

Official PHP modules for FlexForms (charts, HTML editor, etc). MIT or LGPL.
PHP
3
star
63

php-libs-to-composer

CubicleSoft PHP Software Development Libraries for Composer
PHP
3
star
64

ssh-extract

Extracts MSYS SSH binaries from Git Portable and automatically pushes them to ssh-win32 and ssh-win64. MIT or LGPL.
PHP
3
star
65

jquery-tablebodyscroll

A really nice jQuery plugin to scroll the body of long tables so the table fits on a single screen vertically. MIT or LGPL. Mobile-friendly data tables.
JavaScript
3
star
66

php-libs-namespaced

A single repository containing all CubicleSoft PHP libraries inside a CubicleSoft namespace. Fully automated nightly updates. MIT or LGPL.
PHP
3
star
67

resilient-ip-php

The very first prototype implementation of the Resilient Internet Protocol (ResIP). ResIP is a modern tunneling protocol designed to withstand a wide range of network conditions and has features beyond what TCP/IP can offer. This prototype is written in PHP. MIT or LGPL.
PHP
3
star
68

csdb

A portable, cross-platform, cross-database, lightweight, debuggable, replication-aware, migration-friendly, transaction-capable, data access layer (DAL) for PHP.
PHP
3
star
69

barebones-cms-sdks

The Barebones CMS SDKs development repository. Changes made here propagate to the Barebones CMS release distribution repository.
PHP
2
star
70

jquery-tablecards

A really nice jQuery plugin to convert tables to responsive cards via templates. MIT or LGPL license. Mobile-friendly data tables.
JavaScript
2
star
71

net-test

Command-line network testing tool. Sets up a debuggable TCP/IP echo server or client.
PHP
2
star
72

sso-client-aspnet

The ASP.NET (C#) SSO Client portion of the Barebones SSO Server/Client. Pairs with the SSO Server, which is an awesome, scalable, secure, flexible PHP login system that's become a bit ridiculous - but it still rocks anyway.
C#
2
star
73

php-web-tester

An ultra lightweight testing framework for creating repeatable, instrumented builds of PHP-based software products. MIT or LGPL.
PHP
2
star
74

php-twilio-sdk

An ultra-lightweight PHP SDK for accessing Twilio APIs and emitting valid TwiML verbs in response to webhook calls. Also works with SignalWire!
PHP
2
star
75

matrix-multiply

A set of pure ANSI C/C++ matrix multiplication implementations and a test suite. MIT or LGPL.
C++
2
star
76

file-tracker

The world's first cross-platform, bulk visual diff/merge tool. Massively deploy and synchronize changes/updates across multiple software projects and systems in minutes instead of days or weeks.
2
star
77

cloud-storage-server-ext-feeds

A powerful and flexible cross-platform /feeds extension for the self-hosted cloud storage API for sending and filtering notifications with data payloads. Includes a PHP SDK for interacting with the /feeds API. MIT or LGPL.
PHP
2
star
78

php-concurrency-tester

A simple program that executes another PHP command-line script and (hopefully) collects output in CSV format for later analysis. Mostly for performance testing/verifying localhost TCP/IP servers.
PHP
2
star
79

barebones-cms-extensions

A list of available plugins, language packs, and other extensions for Barebones CMS. Fully automated repository updated daily.
PHP
1
star
80

barebones-cms-shortcode-bb_syntaxhighlight

Barebones CMS 1.x - Syntax Highlighter shortcode | NOT COMPATIBLE WITH Barebones CMS 2.0!
CSS
1
star
81

php-flexforms-extras

FlexForms Extras adds the most commonly used best-of-class Javascript components to the already excellent FlexForms PHP class. MIT or LGPL.
JavaScript
1
star
82

barebones-cms-plugin-demo_mode

Barebones CMS 1.x - Demo/Kiosk Mode plugin | NOT COMPATIBLE WITH Barebones CMS 2.0!
PHP
1
star
83

barebones-cms-widget-bb_page_protect

Barebones CMS 1.x - SSO Server/Client Page Protection widget | NOT COMPATIBLE WITH Barebones CMS 2.0!
PHP
1
star
84

barebones-cms-plugin-edit_area

Barebones CMS 1.x - EditArea plugin | NOT COMPATIBLE WITH Barebones CMS 2.0!
JavaScript
1
star
85

barebones-cms-shortcode-bb_flash

Barebones CMS 1.x - Flash Object (SWF) shortcode | NOT COMPATIBLE WITH Barebones CMS 2.0!
PHP
1
star
86

barebones-cms-api

The Barebones CMS API development repository. Changes made here propagate to the Barebones CMS release distribution repository.
PHP
1
star
87

product-hashes

Latest JSON release files containing multiple file hashes for all released CubicleSoft commercial products.
1
star
88

barebones-cms-instant-start

Quickly, easily, and automatically install all components of Barebones CMS in just a couple of minutes.
PHP
1
star
89

barebones-cms-docs

The Barebones CMS documentation repository. Changes made here propagate to the Barebones CMS release distribution repository.
1
star
90

barebones-cms-widget-bb_langmap_modifier

Barebones CMS 1.x - Language Map Modifier widget | NOT COMPATIBLE WITH Barebones CMS 2.0!
PHP
1
star
91

barebones-cms-plugin-sso_plugin

Barebones CMS 1.x - SSO server/client integration plugin | NOT COMPATIBLE WITH Barebones CMS 2.0!
PHP
1
star
92

getiptables-windows

Dumps information about Windows TCP/IP and UDP/IP tables (both IPv4 and IPv6) as JSON. MIT or LGPL.
C++
1
star
93

barebones-cms-plugins-demo-site

The plugins used on the Barebones CMS demo site. MIT or LGPL.
PHP
1
star