Code Monkey home page Code Monkey logo

smsmatrix's People

Contributors

erdnaxeli avatar hammyhavoc avatar lindenk avatar phief avatar tijder avatar tobymurray avatar tulir avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

smsmatrix's Issues

Release on F-droid

Would you be OK if this app is published on f-droid?

If you would like it, you'll need to release the code under an OSI license.

Handling conversations with the bot, a riot contact and me

I have one contact, let's call him "Him" that has no 3G connection, only wlan. Sometimes Him would contact me through SMS (Him-SMS) and sometimes through his Riot account (Him-Riot). Thus I have 2 conversations with Him in my riot client (Me-Riot) :

  • 1 created by the SmsMatrix app (bot) that bridges the Him-SMS. This conversation is called with the name given to Him-SMS phone number in my phone contact list
  • 1 with Him-Riot called with his the riot account pseudo

It would be nice to be able to merge these conversations somehow. And later handle encryption between the riot contacts or even better between the riot contacts and the bot.

Show auth errors in the gui

After the user saved its settings. The Matrix service is started, when the Matrix service receives an auth error it should be shown to the user in the gui.

Doesn't recognize Name

SmsMatrix doesn't look up the name of the contact correclty. It changes the username to the phone number instead of the full name. This used to work on LineageOS 15 and doesn't work anymore on 16. Maybe because I disabled the Google contacts in my Contacts app and use Davx5 instead?

Multiple texts send from 1 matrix message

I've had this happen twice (but not always): I respond to someone through matrix through the sms bridge and then over a couple of days the app keeps sending the same message a number of times.
Is there any easy way for me to debug?

Dynamic long polling intervals

Will be good to create dynamic long polling intervals in app for minimize battery usage - after receive SMS - decrease poll interval to minimal for 15 minutes (maybe do this configurable), because chances that user reply to SMS in this time are maximum, and increase poll interval after this time to longer time (configurable too). This will minimize battery and traffic usage with minimum user behavior.

SMS not being sent

on version 0.0.9 i can recieve messages fine, but sending does not work. This seems to be a regression from a previous version, where it worked fine.

Recipient username case ignored

First of all, thank you for this awesome application, which I discovered only recently.

My problem is that the Matrix ID to which I want to send the SMS contains uppercase letters (e.g. @myMatrixID:myserver.com), and SmsMatrix seems to convert it into lowercase. When I connect to the bot account, I can see that all the messages have been sent to that same wrong Matrix ID (e.g. @mymatrixid:myserver.com). Thankfully, that wrong Matrix ID seems not to exist.

I know that it is a bad idea to have uppercase letters in my Matrix ID, but there is no easy way for me to change that. I hope that fixing this SmsMatrix bug will be simple.

Multiple rooms created for same phone number

If two sms are received close after each other. Then the app can't find a room with the phonen number even it just created one.
Receiving a sms when the app is starting will also not find the correct room.

Read contact name

The app could (if permission is given) read the contacts directory, find the contact name and use it instead of the number.

Also you could use it to set the rame name instead of only the topic.

Also bridge SMS sent via SMS App

Hi!

This app is really a cool idea. It also seems that messages that got bridged from matrix to sms are stored in the sms app of android. What does not happen is the other way round:

Writing a sms with the android app should be stored on matrix. So it would be in sync. It should be possible to read the sent sms (there are sync apps out there). But that would probably mean to save a second set of credentials in the app.

What do you think?

Greetings!
Valen

Implement bridge messages from other apps (WhatsApp, Hangouts, Viber) to Matrix via Androd System Notifications

Will be good to add support for listening other chat apps on current Android system via system notifications. Via this way we will can intercept and bridge to matrix messages in apps, that not provide any API to third-party systems, like WhatsApp, Viber, etc.

Example of working intercepting notifications and replying to messages we can see in many apps, eg in Pushbullet: https://blog.pushbullet.com/2015/02/17/reply-to-whatsapp-hangouts-and-more-from-your-computer-with-pushbullet-on-android/

SMS gets cut up into many messages

This happens to me on cyanogenmod 13.0 (android 6.0.1), com.android.messaging 1.0.001, smsmatrix 0.0.6 and synapse 0.25. The SMS usually gets sent to the same room, but cut up in many posts or in the wrong order. For a new number this also happened but sent to different rooms, maybe related or same as #13.

Thanks a lot for writing this program, so happy when I found it yesterday! :-D

Logo design

Hi, I'm a logo designer I just saw your project and if you want I can design a logo for your project. So, what do you say?

Could not find aapt2-proto.jar

Hello,

When trying to build this app with Gradle, I get the following error:

A problem occurred configuring root project 'SmsMatrix'.
> Could not resolve all artifacts for configuration ':classpath'.
   > Could not find aapt2-proto.jar (com.android.tools.build:aapt2-proto:0.3.1).
     Searched in the following locations:
         https://jcenter.bintray.com/com/android/tools/build/aapt2-proto/0.3.1/aapt2-proto-0.3.1.jar

As explained here, these changes seem to fix it:

diff --git a/build.gradle b/build.gradle
index ae9fbaf..ecd45f4 100644
--- a/build.gradle
+++ b/build.gradle
@@ -2,8 +2,8 @@
 
 buildscript {
     repositories {
-        jcenter()
         google()
+        jcenter()
     }
     dependencies {
         classpath 'com.android.tools.build:gradle:3.2.1'
@@ -15,8 +15,8 @@ buildscript {
 
 allprojects {
     repositories {
-        jcenter()
         google()
+        jcenter()
     }
 }

Messages from people are repeated back to them

Installed the app from fdroid and set it up. 2 people sent me messages which did indeed create rooms in Matrix. However, each message they sent me was replied back to them via SMS - got very annoying very quickly! This is in Lineage if it helps.

No way to diagnose connection issues

I created a matrix.org account for the sms bot as per the readme and put the information into the app. I have tested it a few times, but I'm not seeing the bot appear in my main account. Is there any way to check for login issues or errors? Thanks.

Support end to end encryption

If you want to use this app on a public matrix server, the admin of that server will technically have access to the plain text of all the messages sent through the app and this could be a serious leak of privacy.
If you host your own server that doesn't have to be a big deal, which is my use case, but for more general use end to end encryption would be a good solution to this problem.

Since you already use matrix-android-sdk it should be possible to support e2ee.

Wrong message type

The app sends message with the type m.message insteal of m.text. It still works with riot clients, but not with weechat.

Android 5 support?

Any chance to have Android 5 (Lollipop) support? Riot.im runs just fine on it, but F-Droid tells that SmsMatrix is not compatible. Or is it because of something else than the Android version?

App crash on phone call

The app crash when I receive a phone call, initiate a phone call, or end a phone call.
This is not 100% of the time, but very frequent.

I don't have a logcat for this error but I can try to install the needed tools to provide it if needed.

Note : I'm using LineageOS 15.1 without the google play services (and had the same error with OmniRom, without the play services too)

sans titre

Incoming SMS not bridged

After moving to a new phone, incoming SMS doesn't get bridged to Matrix at all. Messages sent to previously created rooms are bridged to SMS just fine.

The only related thing I could find in logcat is this:

11-14 20:26:26.148  1092  1112 W BroadcastQueue: Permission Denial: receiving Intent { act=android.provider.Telephony.SMS_RECEIVED flg=0x19000010 (has extras) } to eu.droogers.smsmatrix/.ReceiverListener requires android.permission.RECEIVE_SMS due to sender com.android.phone (uid 1001)

The app has all the permissions. I tried both the latest release and a self-compiled version from a few days back.

Huawei P20 Pro / Android 8.1

Restart/update session when parameters change

First of all, thanks a lot for this application ! It's perfectly what I needed.

I had a small issue setting it up : I input a wrong password, then updated it to the correct one, but it still wasn't working. It did when I force stopped the application, so I suppose the session is not reset when the connection parameters change.

Maybe a "test connection settings" button would help too ?

Again, thanks a lot, you just made my day :)

Provide a setting for room name

I would like to have (SMS) in the room name to distinguish the rooms from the other rooms for Whatsapp or Matrix. If you could add the text field for a room name on initialization. It might be empty or with placeholders %n (SMS) where %n gets replace by the name.

Battery optimisation kills Matrix event listener.

If android is Optimising battery use it will kill the matrix service. The app will start listening again for a couple minutes (until killed by android) if we receive a text message or if the app is manually opened.

Blacklist/whitelist phone numbers as a firewall between android SMS app and matrix

Hi,
It would be nice to be able to manually blacklist some numbers in smsmatrix settings, so that no information leaves the android phone and flies on the web through matrix. Even better would be to be able to answer a keyword to the bot that makes it erase the riot room and the smsmatrix app adds the number the blacklist.
Be able to work with a whitelist could be helpful in some use case too.
Cheers.

Start bridging SMS content from new contacts only after user confirmation

Many services sends verification codes, passwords and other confidential info to phone, that not good to share via Matrix bridge. But if we totally ignore them, this was not so good, because user will not informed that new sms is received and unbridged.

For solve this problem, will be good to implement mode for bridge sms from new contacts only after user confirmation.

So, SmsMatrix must handle list of whitelisted/blacklisted contacts and bridge all sms from them normally.

But when received sms from new contact - SmsMatrix bot will write in some "Status" room message to user: "Received new sms from {phone_number} contact. Allow bridge it to Matrix? [yes/no]".

And bridge sms content only after receiving yes answer.

What do you think about this idea?

Handle replies better

Currently a reply will simply send the body of the message, it should instead send something like:

[In reply to: "Hey steve!"]

Hi there Jeffrey!

Or maybe it should just ignore replies and send them as normal messages, not sure.

Add ability to bridge SMS to multiple users

It would be great in some situations to be able to bridge SMS to multiple users. For example, I have a "family number" where I receive SMS from my city, and various ones that are interesting to the whole family. It would be great to be able to bridge them to all family matrix accounts. It could be of some use for any group of people.

Sync read status

It would be awesome if the app could mark the sms as read when the conversation is read in Matrix.

Unfortunately to do the opposite way the app need to know the user credentials.

Restart Matrix service after saving the settings

Now when the user is saving its settings then the Matrix service is started. When the service is allready running it ignores the newly saved settings. The service should stop the current service and start a new one (so the right settings would be used).

Feature Request: Create own community for all created Rooms

Hi,
it would be neat if each created SMS bot could manage to add all new created rooms to a single created (like +smsmatrix_username:matrix.yourdomain.tld) community to collect all the rooms. WhatsApp bridge (mautrix) does it similar which helps to keep overview.

regards, Mario

Can I setup different matrix accounts on dual sim phones?

I'd like to create a setup with a dual sim phone, that bridges SMS for two SIM cards to two different Matrix accounts respectively. Is that already possible, or should I not care to buy a dual sim phone and better get two distinct phones for the two sim cards?

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.