GithubHelp home page GithubHelp logo

anthrax3 / smirch Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tuxxy/smirch

0.0 2.0 0.0 42 KB

SMIRCH is an SMS/MMS based Relay Chat.

License: GNU Affero General Public License v3.0

Python 100.00%

smirch's Introduction

SMIRCH

SMIRCH is an SMS/MMS based Relay Chat.

About

SMIRCH uses prebought DIDs from https://Teli.net/ and assigns them to registered users. Each user receives messages from their assigned DID.

When a user unsubscribes, the DID is released and given to the next available person. If the user is an admin, the DID isn't released. This allows the admin to administer the channel, and receive messages even when unsubbed.

This software is in use for Mojave Payphone (760.733.9969) as a chat service for DEFCON 24 attendees. Feel free to join the chat and have fun with everyone!

Configuration

  1. Setup a virtualenv and install the dependencies in requirements.txt.
  2. Install MySQL server implementation of your choice (I use mariaDB) and create a database called 'smirch'.
  3. Edit config.py and replace the root and test123 on line 7 (SQLALCHEMY_DATABASE_URI) with your db's user and password. Then on lines 8 & 9, replace TELI_TOKEN with your Teli API token and replace the TELI_DID with the DID that you want server messages to be sent from. (In the Mojave's case, it is the 760 number.) This must be a number you own on Teli.
  4. Source your virtualenv and execute python -c "from app import views;views.db.create_all().
  5. Get any number of DIDs that you want from the Teli API. (The Mojave uses 200.) Download the CSV file, and add them to the database by using SQLAlchemy. I did this by parsing the CSV file and adding them via db.session.add(), the doing db.session.commit(). db.session.add() requires a SQLAlchemy model object, so you can create a DID by importing DID from models.py and do DID('123456789'). Of course, replace the DID with the DID you parsed from the CSV file. I'll probably add a script to do this later.
  6. Run the app using your preferred method. I use gunicorn for the Mojave.
  7. Configure your webserver however you like and configure Teli to post to your application whenever it receives an SMS/MMS.
  8. Done!

TODO

  • Make feature requests, pls
  • See the Issue tracker

LICENSE

SMIRCH is licensed under the AGPLv3. See the LICENSE file for details.

smirch's People

Contributors

tuxxy avatar

Watchers

 avatar  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.