Script to get MMS(!)
#1
I've written a program to get -- though not send -- MMS. In addition, it's an easy way to clear out your modem to receive SMS (to fix https://gitlab.com/mobian1/issues/-/issues/89 and similar issues)

The code is inelegant in a lot of places, so its name reflects that: it's called Janky MMS. My hope is that soon we won't need Janky MMS because we'll have real MMS support on the Pinephone by default (fingers crossed!).

I've been using and developing it for 2 months now on a phone that's my daily driver, and although the implementation is slightly janky, it works great. And socially it's been a lifesaver to be able to get photos and group messages again! ?️

Please enjoy. Code, more details, and install instructions are here:

https://git.sr.ht/~amindfv/janky-mms

(Disclaimer: this is software I trust my own data and daily driver phone to, but I can take absolutely no responsibility for anything bad that might happen. No warranty or fitness for purpose implied, etc etc.)
#2
(10-30-2020, 06:26 PM)amindfv Wrote: I've written a program to get -- though not send -- MMS. In addition, it's an easy way to clear out your modem to receive SMS (to fix https://gitlab.com/mobian1/issues/-/issues/89 and similar issues)

The code is inelegant in a lot of places, so its name reflects that: it's called Janky MMS. My hope is that soon we won't need Janky MMS because we'll have real MMS support on the Pinephone by default (fingers crossed!).

I've been using and developing it for 2 months now on a phone that's my daily driver, and although the implementation is slightly janky, it works great. And socially it's been a lifesaver to be able to get photos and group messages again! ?️

Please enjoy. Code, more details, and install instructions are here:

https://git.sr.ht/~amindfv/janky-mms

(Disclaimer: this is software I trust my own data and daily driver phone to, but I can take absolutely no responsibility for anything bad that might happen. No warranty or fitness for purpose implied, etc etc.)

Nice! I'll see about giving this a spin on manjaro tomorrow and report back - thanks for putting this together!
A64, SOPINE, Rock64, RockPro64, Pinebook1080p, Pinebook Pro, Pinephone, Pinewatch dev kit, Pinetab, Pinecil, Pinenut, Quartz64, Pinephone Pro, and PineNote (so far)
#3
(10-30-2020, 06:26 PM)amindfv Wrote: I've written a program to get -- though not send -- MMS. In addition, it's an easy way to clear out your modem to receive SMS (to fix https://gitlab.com/mobian1/issues/-/issues/89 and similar issues)

The code is inelegant in a lot of places, so its name reflects that: it's called Janky MMS. My hope is that soon we won't need Janky MMS because we'll have real MMS support on the Pinephone by default (fingers crossed!).

I've been using and developing it for 2 months now on a phone that's my daily driver, and although the implementation is slightly janky, it works great. And socially it's been a lifesaver to be able to get photos and group messages again! ?️

Please enjoy. Code, more details, and install instructions are here:

https://git.sr.ht/~amindfv/janky-mms

(Disclaimer: this is software I trust my own data and daily driver phone to, but I can take absolutely no responsibility for anything bad that might happen. No warranty or fitness for purpose implied, etc etc.)

Excellent 1st post - welcome! Smile

I tried the install and things seemed to go OK. On first run I got some curious responses - not sure if they are normal or errors? I am also not sure if I have any MMS waiting - it is possible but not for certain. But very happy to try help and fully recognise that the warranty is, if something breaks I own both parts!

Code:
mobian@mobian:~/janky-mms$ ghc -O2 jmms.hs
[1 of 4] Compiling Settings         ( Settings.hs, Settings.o )
[2 of 4] Compiling ViewPix          ( ViewPix.hs, ViewPix.o )
[3 of 4] Compiling ReadMessages     ( ReadMessages.hs, ReadMessages.o )
[4 of 4] Compiling Main             ( jmms.hs, jmms.o )
Linking jmms ...
mobian@mobian:~/janky-mms$ nano ~/.bashrc
mobian@mobian:~/janky-mms$ source ~/.bashrc
mobian@mobian:~/janky-mms$ sudo nmcli radio wifi off   &&   jmms --get   &&   sudo nmcli radio wifi on

git init
Initialized empty Git repository in /home/mobian/msg-data/.git/
git annex init
init 
*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'mobian@mobian.(none)')
(scanning for unlocked files...)
ok
(recording state in git...)
"2"
["No sms messages were found"]
[]
On branch master

Initial commit

nothing to commit (create/copy files and use "git add" to track)
attempted to get: []
successes: []
mobian@mobian:~/janky-mms$ jmms --read
Up to date!
  • ROCKPro64 v2.1 2GB, 16Gb eMMC for rootfs, SX8200Pro 512GB NVMe for /home, HDMI video & sound, Bluetooth keyboard & mouse. Arch (6.2 kernel, Openbox desktop) for general purpose daily PC.
  • PinePhone Pro Explorer Edition, daily driver, rk2aw & U-boot on SPI, Arch/SXMO & Arch/phosh on eMMC
  • PinePhone BraveHeart now v1.2b 3/32Gb, Tow-boot with Arch/SXMO on eMMC
#4
Thanks for testing!

Code:
mobian@mobian:~/janky-mms$ ghc -O2 jmms.hs
[1 of 4] Compiling Settings         ( Settings.hs, Settings.o )
[2 of 4] Compiling ViewPix          ( ViewPix.hs, ViewPix.o )
[3 of 4] Compiling ReadMessages     ( ReadMessages.hs, ReadMessages.o )
[4 of 4] Compiling Main             ( jmms.hs, jmms.o )
Linking jmms ...
mobian@mobian:~/janky-mms$ nano ~/.bashrc
mobian@mobian:~/janky-mms$ source ~/.bashrc
mobian@mobian:~/janky-mms$ sudo nmcli radio wifi off   &&   jmms --get   &&   sudo nmcli radio wifi on

git init
Initialized empty Git repository in /home/mobian/msg-data/.git/
git annex init
init 
*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'mobian@mobian.(none)')
(scanning for unlocked files...)
ok
(recording state in git...)
"2"
["No sms messages were found"]
[]
On branch master

Initial commit

nothing to commit (create/copy files and use "git add" to track)
attempted to get: []
successes: []
mobian@mobian:~/janky-mms$ jmms --read
Up to date!

Overall this looks good, but it does mean there weren't any MMS messages waiting.
The only thing that's a problem here is this part, which indicates something I forgot to put in my install instructions:


Code:
*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

I'll add those two lines to the install instructions now.
#5
Using RedPocket a mvno on the US T-mobile network I was able to get messages while the wifi was on by change the wget command to include --bind-address=<wwan0_IPv6>. T-Mobile's network seems to prefer IPv6 connections. wget also has a flag for IP v4 or V6 only.

https://git.sr.ht/~amindfv/janky-mms/tre...mms.hs#L89

Code:
(shell $ "cd "++mmsDir++" && wget --bind-address=<wwan0_IPv6> "++BS8.unpack url)

Next I'll try to add some code to get the IPv6 address and add it dynamically. Or switch to curl using the --interface wwan0 command like argument. Curl's output of binary is a little different but using the --interface wwan0 did download the MMS message while on wifi.
#6
This is awesome, @puffchumpy ! I'm going to try and build a version using libcurl.

If we don't have to disable wifi, that also allows me to write a feature where it constantly polls for new MMS messages in the background, every n seconds/minutes. Sometimes I have a problem where I stop getting SMS because I haven't run jmms recently enough, and polling would get rid of that.
#7
(10-31-2020, 02:22 PM)amindfv Wrote: This is awesome, @puffchumpy ! I'm going to try and build a version using libcurl.

If we don't have to disable wifi, that also allows me to write a feature where it constantly polls for new MMS messages in the background, every n seconds/minutes. Sometimes I have a problem where I stop getting SMS because I haven't run jmms recently enough, and polling would get rid of that.

This forum is limiting the number of posts I make per day, so it's taken a while to respond, but I've both implemented  the "curl --interface=wwan0" change and also added the polling function "jmms --poll 10", where 10 is the number of minutes to wait between checks for new messages.
#8
I'm using a different script on sxmo which uses wget. It works fine if I'm only connected to mobile data, but I can't seem to get it to work with wget or curl when also connected to wifi.  My carrier is Red Pocket on the ATT network. I have to use the mms proxy, so I need to include "-e http-proxy=proxy.mobile.att.net:80" to get it to work, but when connected only to mobile data.

I've tried different options with curl including:
-x "http://proxy.mobile.att.net:80
--interface wwan0
--dns-servers X.X.X.X for the dns servers in resolv.conf which come from mobile data connection

and I've tried similar options with wget. 

Is the --interace wwan0 with curl all you need and you can download while connected to wifi also? What carriers are everybody who have tried this using? I'd be interested in knowing if it works for anybody on AT&T or an AT&T MVNO. Anybody have any ideas of what else to try?
#9
If anyone is interested, I have compiled Fedora builds for this. https://copr.fedorainfracloud.org/coprs/...d/1760925/
You can enable the repo with "dnf copr enable -y subsentient/pinephonestuff"
That repo also has a newer version of Calls.
#10
Hello!

I don't know if it interests you, but mmsd also allows for receiving and sending MMS (I just added functionality so it can do it without chatty/purple-mm-sms)

https://forum.pine64.org/showthread.php?...6#pid92716

If you are still working on this, jmms would make a good front end to allow folks to send and receive MMS.


Possibly Related Threads…
Thread Author Replies Views Last Post
  Flat-file database script for pinephone terminal cabbie001 0 1,462 11-21-2021, 06:17 PM
Last Post: cabbie001
  phosh proximity sensor toggle script D4rkh0rs3 2 3,192 06-10-2021, 06:42 AM
Last Post: Trbl
  Silly Kali Linux script for Mobian SD card sergio.pantalone 0 3,642 03-08-2021, 10:08 PM
Last Post: sergio.pantalone

Forum Jump:


Users browsing this thread: 2 Guest(s)