Skip to content
eyedol edited this page Sep 22, 2011 · 17 revisions

Welcome to “SMSSync”, its an android application that turns your android powered phone into an SMS gateway. It main use could be to push SMSes that come to the phone to a website you configure the application to send them to. You could filter out which messages to push to the website based on keywords or tags

h1.Instructions

  • To start the SMSSync Gateway, you’ll need to specify a callback URL. This URL is where all incoming text messages will be transmitted to.
  • For security you can specify at secret at the callback URL. If the secret doesn’t match, the callback URL will ignore the transmission.
  • Additionally, you can specify keywords with which to filter incoming messages. Only matching text messages will be sent to the SMSSync Gateway URL.
  • The SMSSync sends the following variables via the POST method:
  • from
  • message
  • secret
  • sent_timestamp (optional)
  • In order for SMSSync to account for perfect transmission, the callback URL needs to give back a formatted JSON string such as its shown below to indicate if it received the message or not.
  • Succeeded
    {
          payload: {
              success: "true"
          }
    }
  • Failed
    {
          payload: {
              success: "false"
          }
    }
  • Response from server
    SMSSync allows auto response to be configured on the app itself or to be retrieved from the server. When the app makes an HTTP Post request to sync the incoming messages to the configured URL, it can send a JSON string that has messages in it as opposed to sending a success or failed JSON string as stated above. The app then sends the messages as SMS to users.

This makes it possible to have an instant response via SMS when an HTTP Post request is made. To leverage this feature, a JSON formatted string like the one below needs to be returned by the configured URL after the app makes the HTTP Post request.

  • Response JSON data from the callback URL
    {
        "payload": {
            "success": "true",
            "task": "send",
            "messages": [
                {
                    "to": "000-000-0000",
                    "message": "the message goes here" 
                },
                {
                    "to": "000-000-0000",
                    "message": "the message goes here" 
                },
                {
                    "to": "000-000-0000",
                    "message": "the message goes here" 
                }
            ]
        }
    }
  • Task
  • SMSSync supports execution of task sent from the configured callback URL. At the moment, it supports sending of messages sent from the callback URL as SMS. This feature is targeted towards developers. If you are a developer and you want SMSSync to send an SMS, send a JSON formatted string as shown below to SMSSync with the variable task=send. When SMSSync does an HTTP GET request with a sample URL like this one, http:///smssync?task=send, it should bring back a JSON string below.

Note: The secret key has to match the secret key configured with SMSSync, otherwise, SMSSync will not execute the task.

  • Response JSON data from the callback URL
    {
        "payload": {
            "task": "send",
            "secret": "<secret_key>",
            "messages": [
                {
                    "to": "000-000-0000",
                    "message": "the message goes here" 
                },
                {
                    "to": "000-000-0000",
                    "message": "the message goes here" 
                },
                {
                    "to": "000-000-0000",
                    "message": "the message goes here" 
                }
            ]
        }
    }

Scan the QR below to install SMSSync on your Android powered phone

We appreciate your feedback

Copyright © 2010 Ushahidi.com

Clone this wiki locally