name mode size
..
active.svg 100644 1.08kB
active_archived_conversations.png 100644 312.57kB
active_small.svg 100644 1.08kB
add.svg 100644 1.61kB
app-dark.svg 100644 6.47kB
app.svg 100644 6.53kB
archive.svg 100644 2.53kB
archive_red.svg 100644 2.53kB
archived.svg 100644 2.68kB
archived_small.svg 100644 2.68kB
arrow-top-small.svg 100644 697B
arrow-top.svg 100644 701B
arrowDown.svg 100644 1.24kB
arrowDown_small.svg 100644 1.24kB
arrowUp.svg 100644 693B
arrowUp_small.svg 100644 689B
between.svg 100644 1.4kB
check.svg 100644 972B
clearfilters.svg 100644 7.54kB
clearfilters_small.svg 100644 7.54kB
clock.svg 100644 762B
closeconvpart.svg 100644 1.46kB
closewnd.svg 100644 1.49kB
conversations.svg 100644 2.24kB
description.svg 100644 7.33kB
description_added.svg 100644 4.64kB
dots.svg 100644 2.02kB
filter_blue.svg 100644 5.48kB
filter_icon.svg 100644 3.9kB
flag_empty.svg 100644 1.5kB
flag_red.svg 100644 1.53kB
garbage.svg 100644 3.14kB
garbage_bright.svg 100644 3.14kB
garbage_grey.svg 100644 3.14kB
group.svg 100644 838B
incoming.svg 100644 2.52kB
list.svg 100644 2.62kB
network.svg 100644 3.51kB
nextcloud_logo.svg 100644 2.22kB
nextcloud_logo_bright.svg 100644 2.22kB
outgoing.svg 100644 2.52kB
participants.svg 100644 1.27kB
participants_red.svg 100644 1.27kB
question.svg 100644 2.31kB
received_messages_on_mobile.png 100644 154.83kB
refresh_logo.svg 100644 733B
reply.svg 100644 5.34kB
reply_to_message_on_mobile.png 100644 153.88kB
sms_relentless.svg 100644 6.53kB
sms_relentless_dark.svg 100644 6.47kB
sms_relentless_delete_old_messages.png 100644 468.55kB
sms_relentless_exchanged_messages_popup.png 100644 361.25kB
sms_relentless_filter_messages_by_date_and_keyword.png 100644 303.57kB
sms_relentless_grey.svg 100644 6.52kB
sms_relentless_grouped_by_number.png 100644 259.11kB
sms_relentless_logo.png 100644 8.1kB
sms_relentless_messages_to_from_popup.png 100644 409.25kB
sms_relentless_on_mobile.png 100644 136.64kB
sms_relentless_received_messages.png 100644 359.1kB
sms_relentless_send_mass_sms.png 100644 359.21kB
sms_relentless_send_mms.png 100644 1.37MB
sms_relentless_send_sms.png 100644 122.29kB
sms_relentless_sent_messages.png 100644 416.72kB
tag.svg 100644 1.62kB
tag_added.svg 100644 1.62kB
unarchive.svg 100644 2.53kB
unarchive_red.svg 100644 2.53kB
user-grey.svg 100644 1.25kB
user.svg 100644 475B
README.md
<span style="display:block;height:15px!important"></span> <p align="center"><img src="https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_logo.png" alt="SMS Relentless" width="191px" height="157px"/></p> <span style="display:block;height:20px!important"></span> **SMS Relentless is a Nextcloud application that allows sending and receiving SMS and MMS messages in Nextcloud.** A telnyx.com, plivo.com, twilio.com or flowroute.com account and a real phone number acquired from one of the 4 providers are needed. <span style="display:block;height:20px!important"></span> ## Features <span style="display:block;height:10px!important"></span> * πŸš€ Use one or multiple local phone numbers in countries of your choice, to send and receive SMS/MMS messages with your browser, on any device connected to the Internet. * πŸ“‘ Sent and received SMS/MMS messages are stored in the database per sending/receiving user and can be viewed in paginated tables with filters for every column. * πŸ–ΌοΈ Up to 10 files of various formats, including jpeg, png and gif, can be sent as MMS messages from MMS enabled phone numbers. Files included in incoming MMS messages are not downloaded automatically. They are stored as URL links to the actual files, so that the receivers can download them only if they trust the senders. * πŸ“” SMS/MMS messages older than a specified number of days can be deleted in bulk with one click and they are automatically archived in csv files stored in Nextcloud, before being removed from the database. This makes them available for future analysis. * πŸ’» Sending SMS/MMS messages to thousands of recipients can be achieved by uploading a txt/csv file containing the recipients' phone numbers and the same SMS/MMS is sent automatically to all. The time interval between two consecutive messages is configurable. * πŸ‘€ The Display Name of Nextcloud users can be prepended to their messages, to make the origin of messages clearer. * ⚠️ Admins can restrict the use of specific phone numbers to specific groups or users. * βœ‰οΈ Auto-replies in 'daily mode' and 'vacation mode' can be configured for any controlled phone number. * πŸ” SMS/MMS messages coming from Telnyx, Plivo and Twilio are checked for authenticity by verifying the SMS provider's signature. * πŸ“§ Users receive notifications in Nextcloud and (optionally) emails when new SMS/MMS messages arrive. * πŸ“„ Each sent message receives a delivery receipt displayed in the Sent SMS Messages table. * 🎎 Messages exchanged between pairs of numbers are organized into conversations on a separate page where each conversation can be viewed, tagged and archived. * πŸ“ž It can be used with regular 'long code' (10-digit) phone numbers, but also with 'toll-free' numbers and 'short codes'. Users see a list with their current phone numbers and can set them as Sender IDs. Setting alphanumeric Sender IDs is also possible. * πŸ“± If Nextcloud is accessed in Firefox for mobile (version 123.0 or newer), it can be used directly on mobile devices. * πŸ’΅ It allows checking the current Telnyx/Plivo/Twilio balance by selecting the provider on the left panel. * πŸ’° The only ongoing cost is about $1 per month (depending on the country) for an SMS/MMS enabled phone number located in a country chosen by the user. No contracts. * πŸ’Έ Low prices per SMS: starting from $0.0040 per sent message and $0.0040 per received message (Telnyx), or $0.0085 per sent message and $0.0085 per received message (Plivo), or $0.0109 per sent message and 0.0079 per received message (Twilio), or $0.0055 per sent message and 0.0040 per received message (Flowroute) in the USA. <span style="display:block;height:10px!important"></span> Double Bastion is not affiliated with Telnyx, Plivo, Twilio or Flowroute. ### Donations * 🎁 [Donate](https://www.doublebastion.com/donations/) <span style="display:block;height:20px!important"></span> Send SMS message <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_send_sms.png) <span style="display:block;height:40px!important"></span> Send MMS message <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_send_mms.png) <span style="display:block;height:40px!important"></span> List received SMS messages <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_received_messages.png) <span style="display:block;height:40px!important"></span> List sent SMS messages <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_sent_messages.png) <span style="display:block;height:40px!important"></span> List active and archived conversations <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/active_archived_conversations.png) <span style="display:block;height:40px!important"></span> List messages grouped by phone number <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_grouped_by_number.png) <span style="display:block;height:40px!important"></span> List all the messages exchanged between the sending and the receiving phone number <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_exchanged_messages_popup.png) <span style="display:block;height:40px!important"></span> List all the messages sent from or received by phone number <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_messages_to_from_popup.png) <span style="display:block;height:40px!important"></span> Send SMS message to multiple recipients <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_send_mass_sms.png) <span style="display:block;height:40px!important"></span> Filter messages by date and keyword <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_filter_messages_by_date_and_keyword.png) <span style="display:block;height:40px!important"></span> Delete old SMS messages <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_delete_old_messages.png) <span style="display:block;height:40px!important"></span> Access SMS Relentless on mobile phone <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/sms_relentless_on_mobile.png) <span style="display:block;height:40px!important"></span> List received messages on mobile phone <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/received_messages_on_mobile.png) <span style="display:block;height:40px!important"></span> Quick reply on mobile phone <span style="display:block;height:10px!important"></span> ![Image of SMS Relentless Interface](https://git.doublebastion.com/sms-relentless/raw/develop/img/reply_to_message_on_mobile.png) <span style="display:block;height:40px!important"></span> ## Browsers <span style="display:block;height:10px!important"></span> SMS Relentless works with all major browsers. <span style="display:block;height:20px!important"></span> ## Programming Languages <span style="display:block;height:10px!important"></span> SMS Relentless only uses PHP, SQL, jQuery, CSS and HTML. This means it's efficient, light-weight and easy to maintain and debug. <span style="display:block;height:20px!important"></span> ## Minimum Requirements <span style="display:block;height:10px!important"></span> - **Nextcloud 22+** has to be installed and properly configured, preferably by following the <a href="https://www.doublebastion.com/install-nextcloud/" rel="noreferrer noopener" target="_blank">Install Nextcloud</a> chapter in our guide. - **A telnyx.com, plivo.com, twilio.com or flowroute.com account and an SMS/MMS enabled phone number** attached to it. - The **libcurl** PHP library has to be installed on the server (it's usually installed automatically when PHP is installed). To enable email notifications for every received SMS/MMS, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux), has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to send emails from command line (by specifying "authorized\_submit\_users = www-data" in "/etc/postfix/main.cf" for Postfix on Debian). <span style="display:block;height:20px!important"></span> ## Installation <span style="display:block;height:10px!important"></span> <a href="https://www.doublebastion.com/install-nextcloud/#install-sms-relentless" rel="noreferrer noopener" target="_blank">This chapter</a> of our Complete Guide to a Complete Linux Server explains in detail how to install and use this application. SMS Relentless is a component of RED Scarf Suite. It can be installed and used alone, but if you want to install <a href="https://www.doublebastion.com/red-scarf-suite-components/" rel="noreferrer noopener" target="_blank">all the components</a> of RED Scarf Suite, you can follow our <a href="https://www.doublebastion.com/free-server/complete-guide-to-a-complete-linux-server/" rel="noreferrer noopener" target="_blank">complete guide</a>. <span style="display:block;height:20px!important"></span> ## Contribute <span style="display:block;height:10px!important"></span> This is the official git repository of SMS Relentless. The <a href="https://github.com/DoubleBastionAdmin/sms-relentless" rel="noreferrer noopener" target="_blank">GitHub SMS Relentless repository</a> is just a pointer to this repository. We don’t use GitHub for developing SMS Relentless because GitHub is owned by one of the companies that proved their disrespect for digital freedom over the years and because centralized services create autonomy and privacy issues, in spite of all the benefits. If you want to contribute code to this project, please submit <a href="https://git.doublebastion.com/sms-relentless/pullrequests/contrib" rel="noreferrer noopener" target="_blank">this form</a>, mentioning your intended changes. We'll send you the credentials needed to push code to the "contrib" branch of this repository. After we review the changes we can include them in the project. Please post any bugs that are not security related, or feature requests, on the <a href="https://git.doublebastion.com/sms-relentless/issues/develop" rel="noreferrer noopener" target="_blank"> issue tracker</a>. If you notice bugs related to security, don’t post them on the issue tracker; instead, send them to manager [at] doublebastion [dot] com . <span style="display:block;height:20px!important"></span> ## License <span style="display:block;height:10px!important"></span> SMS Relentless as a whole is licensed under the GNU Affero General Public License Version 3, or any later version. If you use SMS Relentless or distribute it in modified or unmodified form, you will need to comply with the terms of the GNU Affero General Public License Version 3, or any later version. SMS Relentless includes libraries licensed under different free software licenses. These libraries contain their respective original copyright notices.