Skip to content
Jethro Carr edited this page Mar 20, 2015 · 1 revision

Introduction

SMStoXMPP is a lightweight PHP-based SMS to XMPP bi-directional gateway application which receives messages from an SMS gateway device/application and relays them to the target user via XMPP.

Optionally, replies to the user can be made via XMPP which then delivers the message back to the SMS gateway.

Key Features

  • Bi-directional messaging between SMS networks and XMPP networks.
  • Supports turning an Android phone into an SMS gateway by installing SMS Gateway on a phone and using this app on a server.
  • Easy to add additional gateway types.
  • Conversation aware chat, allows selection of chat focus.
  • Looks up phone numbers against a CardDAV directory (including Google Contacts) to display human names, rather than numbers.
  • Support for remote gateways with dynamic IPs
  • PHP based daemon with simple dependencies.
  • No DB needed! :-)

Supported Devices

SMStoXMPP was originally designed for coupling with Android software-based SMS gateways - by combining an old/cheap Android cellphone, SMS Gateway application on the phone and SMStoXMPP, one can have a fully functional gateway solution for very low budget.

The self-contained nature of Android devices makes it possible to leave different phones in different countries as remote gateways, to make it possible to chat with friends when overseas without needing to take the local SIM roaming.

However the design of SMStoXMPP allows for numerous different backends to be used and there's no reason why an easy to write module can't be prepared for

Refer to Developer-GatewaySupport if you're interested in writing new gateway modules.

Getting Started

To get started with SMStoXMPP, start by reading the Installation wiki page.

I have packaged for RHEL/CentOS 5 & 6 and there is a .src.rpm you can build for other platforms as desired.

Support & Contributions

Please read the Troubleshooting page before asking for help, it may solve your issue. :-)

Best way to get support is to open an issue in the tracker, since then others can find any issues they also experience and you can track the fixes against any issues.

Beer

Beer is welcome. So are patches.