gnu-social/docs/administrator/src/sms.md
Diogo Peralta Cordeiro cc9f2d6ff2
[DOCUMENTATION] Three books instead of only one
The User one is intended to illustrate the various common use cases, possibilities regarding customization and introduce the existing functionalities.

The Administrator one explains the step by step of how to install and maintain a GNU social instance, be it as node of The Free Network or as an intranet social network in a company setting.

The Developer one starts by introducing the Modules system and architecture, then the plugin development process and finally the exciting internals of GNU social for those looking forward to make the most advanced contributions.
2021-09-14 13:11:49 +01:00

1.7 KiB

SMS

StatusNet supports a cheap-and-dirty system for sending update messages to mobile phones and for receiving updates from the mobile. Instead of sending through the SMS network itself, which is costly and requires buy-in from the wireless carriers, it simply piggybacks on the email gateways that many carriers provide to their customers. So, SMS configuration is essentially email configuration.

Each user sends to a made-up email address, which they keep a secret. Incoming email that is "From" the user's SMS email address, and "To" the users' secret email address on the site's domain, will be converted to a notice and stored in the DB.

For this to work, there must be a domain or sub-domain for which all (or most) incoming email can pass through the incoming mail filter.

  1. Run the SQL script carrier.sql in your StatusNet database. This will usually work:

    mysql -u "statusnetuser" --password="statusnetpassword" statusnet < db/carrier.sql
    

    This will populate your database with a list of wireless carriers that support email SMS gateways.

  2. Make sure the maildaemon.php file is executable:

    chmod +x scripts/maildaemon.php
    

    Note that "daemon" is kind of a misnomer here; the script is more of a filter than a daemon.

  3. Edit /etc/aliases on your mail server and add the following line:

    *: /path/to/statusnet/scripts/maildaemon.php
    
  4. Run whatever code you need to to update your aliases database. For many mail servers (Postfix, Exim, Sendmail), this should work:

    newaliases
    

    You may need to restart your mail server for the new database to take effect.

  5. Set the following in your config.php file:

    $config['mail']['domain'] = 'yourdomain.example.net';