From 3b67746ccda5ca6b42be37b1c13f710cc2a12b8c Mon Sep 17 00:00:00 2001 From: thyttan <6uuxstm66@mozmail.com> Date: Wed, 13 Apr 2022 19:56:48 +0200 Subject: [PATCH] messagesmusic added. --- apps/messagesmusic/ChangeLog | 1 + apps/messagesmusic/README.md | 15 +++++++++++++++ apps/messagesmusic/app-icon.js | 1 + apps/messagesmusic/app.js | 15 +++++++++++++++ apps/messagesmusic/app.js~ | 15 +++++++++++++++ apps/messagesmusic/app.png | Bin 0 -> 1190 bytes apps/messagesmusic/metadata.json | 18 ++++++++++++++++++ apps/messagesmusic/screenshot.png | Bin 0 -> 2365 bytes 8 files changed, 65 insertions(+) create mode 100644 apps/messagesmusic/ChangeLog create mode 100644 apps/messagesmusic/README.md create mode 100644 apps/messagesmusic/app-icon.js create mode 100644 apps/messagesmusic/app.js create mode 100644 apps/messagesmusic/app.js~ create mode 100644 apps/messagesmusic/app.png create mode 100644 apps/messagesmusic/metadata.json create mode 100644 apps/messagesmusic/screenshot.png diff --git a/apps/messagesmusic/ChangeLog b/apps/messagesmusic/ChangeLog new file mode 100644 index 000000000..5560f00bc --- /dev/null +++ b/apps/messagesmusic/ChangeLog @@ -0,0 +1 @@ +0.01: New App! diff --git a/apps/messagesmusic/README.md b/apps/messagesmusic/README.md new file mode 100644 index 000000000..7aa9209df --- /dev/null +++ b/apps/messagesmusic/README.md @@ -0,0 +1,15 @@ +Hacky app that uses Messages app and it's library to push a message that triggers the music controls. It's nearly not an app, and yet it moves. + +This app require Messages setting 'Auto-open Music' to be 'Yes'. If it isn't, the app will change it to 'Yes' and let it stay that way. + +Making the music controls accessible this way lets one start a music stream on the phone in some situations even though the message app didn't receive a music message from gadgetbridge to begin with. (I think.) + +It is suggested to use Messages Music along side the app Quick Launch. + +Messages Music v0.01 has been verified to work with Messages v0.31 on Bangle.js 2 fw2v13. + +Music Messages should work with forks of the original Messages app. At least as long as functions pushMessage() in the library and showMusicMessage() in app.js hasn't been changed too much. + +Messages app is created by Gordon Williams with contributions from [Jeroen Peters](https://github.com/jeroenpeters1986). + +The icon used for this app is from [https://icons8.com](https://icons8.com). diff --git a/apps/messagesmusic/app-icon.js b/apps/messagesmusic/app-icon.js new file mode 100644 index 000000000..5252570b6 --- /dev/null +++ b/apps/messagesmusic/app-icon.js @@ -0,0 +1 @@ +require("heatshrink").decompress(atob("mEwwhC/AFXdAAQVVDKQWHDB0NC5PQCyoYMCxZJKFxgwKCxowJC6xGOJBALE6YwRBQnf+YXPIwvf/4YKJAgXHDBQXNDBIXO/89C5YKFC4gYIC54YHC6AYGC6IYFC9JHWO6ynLa64XJ+YWGC5wWIC5oWJC4p4F74WKOwgXG6YWKC4xIFABRGFYI4uPC7JIOIw4wPCxAwNFxIYMCxZJLCxgYJCxwZGCqIA/AC4=")) diff --git a/apps/messagesmusic/app.js b/apps/messagesmusic/app.js new file mode 100644 index 000000000..a6f7e075e --- /dev/null +++ b/apps/messagesmusic/app.js @@ -0,0 +1,15 @@ +let showMusic = () => { + Bangle.CLOCK = 1; // To pass condition in messages library + require('messages').pushMessage({"t":"add","artist":" ","album":" ","track":" ","dur":0,"c":-1,"n":-1,"id":"music","title":"Music","state":"play","new":true}); + Bangle.CLOCK = undefined; +}; + +var settings = require('Storage').readJSON('messages.settings.json', true) || {}; //read settings if they exist else set to empty dict +if (!settings.openMusic) { + settings.openMusic = true; // This app/hack works as intended only if this setting is true + require('Storage').writeJSON('messages.settings.json', settings); + E.showMessage("First run:\n\nMessages setting\n\n 'Auto-Open Music'\n\n set to 'Yes'"); + setTimeout(()=>{showMusic();}, 5000); +} else { + showMusic(); +} diff --git a/apps/messagesmusic/app.js~ b/apps/messagesmusic/app.js~ new file mode 100644 index 000000000..a02c7704f --- /dev/null +++ b/apps/messagesmusic/app.js~ @@ -0,0 +1,15 @@ +let showMusic = () => { + Bangle.CLOCK = 1; // To pass condition in messages library + require('messages').pushMessage({"t":"add","artist":" ","album":" ","track":" ","dur":0,"c":-1,"n":-1,"id":"music","title":"Music","state":"play","new":true}); + Bangle.CLOCK = undefined; +}; + +var settings = require('Storage').readJSON('messages.settings.json', true) || {}; //read settings if they exist else set to empty dict +if (!settings.openMusic) { + settings.openMusic = true; // This app/hack works as intended only if this setting is true + require('Storage').writeJSON('messages.settings.json', settings); + E.showMessage("First run:\n\nMessages setting\n\n 'Auto-Open Music'\n\n set to 'Yes'"); + setTimeout(()=>{showMusic();}, 5000); +} else { + showMusic(); +}; diff --git a/apps/messagesmusic/app.png b/apps/messagesmusic/app.png new file mode 100644 index 0000000000000000000000000000000000000000..9d2967bba575ae9c0f01c29129533c495d8bb12c GIT binary patch literal 1190 zcmV;X1X=ruP)~5>1;DHp>#2`&L=|Tw!B+{Y=j0qen z2xv5EOh_S7FUEsOjYgv}F-qG&YS3WO0vb_7L((>l9B|vNXTcD)R5?hC%CgIDJM%n1 zFqxh0{4E^l=lFiV_ultq=J$T{`wh%7$DNJD5ky;C&En+mO$r-O$*5=}!V;9)8(H!w ze~QXkL~|lCm|T|~mJaNwxg!-&cx?4D+m?2eT|h%X_i7>;vCvpX^sfO1C z&17nBsdxZo^VLG)Yi(WWxxPFL$S*XzZ>jj3=*Ilz^aozEW_*S6Evt8e^u{MDIErqs z8yGoKZM)m@vJEG&!lZxE2_2Fs;`isZ{bt?f_L{}Jg_{ZK2PdRGx2)0 zLDwfxcx25|+tl;;+@#X|Sx}ql{!^5DI?>6%`;ixAQ>^95{@j>z!1W2(3Ee}`9aany zk8UFM>6grFYe!P)a8liwXW5C}ZUYqsXa@$$&d{mmFQ8`ovm`%0O5%wvV0bnuUC|Xzo7)Oo z5>}sYLN9cw(B|e@8%>>mLM-$;ry-^ucl$`V*z&}G+HyrFE>S+z!}RyxfbHvif5mBV zE8rrtT|ns?Q(qlr>a$PK!qotddeLdAC_v$yz{*GhtLBgPy(Gw4r>&v@14b3LhLl(p z>!)GL2R_6;|4Zl?s*E~q6$OaMpsI#W;=~^NjdD*X)|u0hV~OaX(^k=ilIya=z=f#E zbm9`F_ur=2_H-=bfw9#3k(|?5xf6F_qjETOn$k6<`VLWi{wbzU9{1Z_e4vNjt|HyK z5Qa^cZSpcf&IGf2peY%e=yDry-N;fy*>M#P`i*Xl{z&nKU6kJGm<{oW(32WG^M~tL zHK%_bUt4cZTW7ibhx!TIvKj*)>hC^vW>S&8v!}}+s_dTW(s#yhp}K)=pTdFoW%)zU zuDZeDV>8Y1{Ftk)zpq{4czm*ab24S6U-X*f|8loz9z)q2U6(JuO{c7Fv0Ux~$cbDb zec9Tg!v5&mJaVC3X)CqWkNE5J19GKh^)^8|iMu-~e<`$kz4J~2A86_ZMvmCfC`dO@ z3hM7dNrXE^P9B;qxi$BRkk6` zqLR6Odms(`f4#H2?qr07*qoM6N<$ Eg5c~?^#A|> literal 0 HcmV?d00001 diff --git a/apps/messagesmusic/metadata.json b/apps/messagesmusic/metadata.json new file mode 100644 index 000000000..edc6835ed --- /dev/null +++ b/apps/messagesmusic/metadata.json @@ -0,0 +1,18 @@ +{ + "id": "messagesmusic", + "name":"Messages Music", + "version":"0.01", + "description": "Uses Messages library to push a music message which in turn displays Messages app music controls", + "icon":"app.png", + "type": "app", + "tags":"tool,music", + "screenshots": [{"url":"screenshot.png"}], + "supports": ["BANGLEJS","BANGLEJS2"], + "readme": "README.md", + "storage": [ + {"name":"messagesmusic.app.js","url":"app.js"}, + {"name":"messagesmusic.img","url":"app-icon.js","evaluate":true} + ], + "dependencies": {"messages":"app"} + +} diff --git a/apps/messagesmusic/screenshot.png b/apps/messagesmusic/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..986b869f862e9d315d3888c5f71569170184094e GIT binary patch literal 2365 zcmeHJdpOezAK#6QjvW$nS&NX0ic{F;bvRnNgq&6`VM|_d5St!m&1LJ}A(vB>B6V_9 zgvo8W%ui@E=9RhB*5*=Mtl1bUNw4$%{r>;{^ZxPue4g(g-_P@TKF{-cp6}Jb053gV zGhGk}r03&JII_;{zXzecj3rjq80tW5aZ`I4R=A1(Y+OL zOEAp-!l76moM3{vNvR=V~04q>wO)PduujaU>#5OJoAjCE|m zocA~mh+@*30@EhYk9 zVdoqcTJ@)&M#@|)*oNxYE)K^9my;L`HSciDy#j_#iebkiz_GEdf#_TLrQawD`oq;Fsi7A&`OC<{b5|d_s zgAg5#v{0fk{S#$tmV(AQ$Wr4WScg`0v*djzD@p181GkqIHd0Z&64~)3^Q$rvPMRBU z9Pd1Vf;_Bl*-)1$C1-z&LVwN_jK>9cD}kXH8{ZN$_zPAQR^4|eXyAfX?ltH%u)~Xn zqX;vaXO~+XkqOI}C(T-Dma|vK*M#QC9B43gBAQ-%Ab~o3FwE)N}PcamQN z`&+Y`b*M;50>03QlYmWk*4Gg9c;NZGkg$V;?CLzbN|sf;IXpLT`qoa`ly7M)!!|Dh z5hpsrOPmD^K1FXa`Q&ExuX61GxBaYj`w=*{+_^sbJ1s*#IE)!IyX@fvU(R;Pg4gg| zvHMZI(1dZ#5$~d&5QEgKd=cd3%$bVD2`cs-lZ^jy*ai{$iReUe;MZCSl^RkRr79b zLavbeEWV<)qhRQ|Xlb8uIGYS1XIVwPIlz|W2OjQQ@Yfrufm2n}tEg zM+=Z9`JSiz22y#^^aIUKeTtYhM&T1m0*ITuyOnLZv!}P15=j7em9A+(sp%S1R&cm*1V>Y>02#_qp-qtMo)#dR2AS!O9p8e8# zQFb!$>AC97?`^L^!$K29BQK@J^++OA{zpFQCuB)fn*9l~UdgOgVcBHdMEJ(#dz1-u zy-?nW{@hCVEPx}^J*3kwhHmdn?om}6wJWWnD%&?ihT1DuCji^-8^Mi?y6&1$cUQZw zdwbq4vvy5=Rn?bbsyTDZS9Dyr8eiG`Z3Kz#8$Rqx zfgzBqugSaK$GFwM<7z@Qn%KUv2JPKis>k^cJpN2oZ$>_LDjQ?V0q)ZchM*J+v#Y=9qQ7wnqb{HBM#=QRZR}-)H z(VSz>Rd^aI9#5Z1kIS*KKQVZ0WphyS+R3@&yd(DIn7GMTbR!*(i|y`<1*mza7__WV z;8({)8I0jeZ*&g{-;^2r)zsnpA^}%Kzp9ns137JR&mypgWdya_2D69hvoCHu-D1OJ zw)*Qq>-9YVW8a3EA`oQG+3AOVPY^h4`%py~1i=vr9UL}*VF~vMcM^3hCK8EVz<)hv zIrGoE&%&vY{a+vN*Jp1pMTEdo4UNIsSgR8TAuzGFJtVP5Q&fMH5HFUz z7(SS|#P|ge5noBART|y?J7!7gNeorm+?z}jaC3mZ4Z(a05z=i6&IXbV#{Q#W3OA-6 s1h%rV6m$0Ct4koH_|o3?D~MI-HAF%8