From a7cd75cc25551f3f4350e438fe29231b414008dc Mon Sep 17 00:00:00 2001 From: Lyncoln Date: Tue, 13 Oct 2026 15:03:24 -0400 Subject: [PATCH] Working resolver integration with buildSelect3 exception --- .../__pycache__/execute.cpython-314.pyc | Bin 740 -> 755 bytes .../__pycache__/key.cpython-314.pyc | Bin 486 -> 502 bytes .../__pycache__/object.cpython-314.pyc | Bin 440 -> 460 bytes .../__pycache__/path.cpython-314.pyc | Bin 642 -> 1101 bytes .../__pycache__/request.cpython-314.pyc | Bin 1256 -> 1267 bytes core/apirequest/execute.py | 4 +-- core/apirequest/key.py | 2 +- core/apirequest/object.py | 4 +-- core/apirequest/path.py | 30 +++++++++++++--- core/apirequest/request.py | 6 ++-- .../action/__pycache__/action.cpython-314.pyc | Bin 800 -> 977 bytes core/execution/action/action.py | 15 +++++--- .../__pycache__/operation.cpython-314.pyc | Bin 1681 -> 1468 bytes core/execution/operation/operation.py | 25 ++++++++----- .../__pycache__/resolver.cpython-314.pyc | Bin 519 -> 941 bytes .../__pycache__/select.cpython-314.pyc | Bin 2897 -> 3897 bytes core/runtime/resolver.py | 29 ++++++++++++++- core/runtime/select.py | 33 ++++++++++++++++++ .../__pycache__/getmessage.cpython-314.pyc | Bin 806 -> 828 bytes plugins/rmass/actions/getmessage.py | 22 +++++------- pullmessagelist.py | 30 ---------------- tokens.json | 2 +- 22 files changed, 132 insertions(+), 70 deletions(-) diff --git a/core/apirequest/__pycache__/execute.cpython-314.pyc b/core/apirequest/__pycache__/execute.cpython-314.pyc index 076506181d1404d4f0d6e2fca090aa2c753e1deb..8ce0bd0324437852abc3fed69cbfc4caf9f79e18 100644 GIT binary patch delta 253 zcmaFD`k9qin~#@^0SIo#oXg6b$Xj8~4B|ln2apEwKd%E44Gb}iP;rKE#xN!msLFCC z28JTTiM!+#nS&T~q+m)I7{Zu?7*Y8Xf5|g4PnKfTWM&C>ob1LJZOD3yEit(yGe7SZ zdwyw2L1{_xEsmnp;{2Sl)RZC~pjlvUL4ICwYB4L2t2X&Kqr0Rqki`zf#bH3Af#Ht0 w@&dOF5tqg7CaW@)$be*5G8BmbsUjgDaf`zyH$SB`C)KV3B-c}4j|18#Glsyi3WxkMyNPLIHL(vT{)00 zQk=L)UXdw?K}QOvfPo>5DToo3Kk<(|BhzFVMonhsaKp(SjL~W=x7ZSsOEUBGZn5W= zmK2nh6c_OTO}NETlv-SnpI4k(%mU<2zQX7(E(Bz-195Q(kZ54IBd)x_?XtMZWD}+m k8Iasch9Y4gRU`-`ZgJS;=BJeAq}mmUPd>t=%>t4E0Avy_c>n+a diff --git a/core/apirequest/__pycache__/key.cpython-314.pyc b/core/apirequest/__pycache__/key.cpython-314.pyc index b7c97d264a30959040e76bb583f8d645309de4b5..e234161c59e7008bb4274e8505fdf9d536e6d5cd 100644 GIT binary patch delta 242 zcmaFH{EeAcn~#@^0SK64&ShPj$g9K1Jkd&%oG6z1{sEM z;UGpGDX<)vKxP*(hcN^(A&UUDUodxNxy78FT6v2-zqF*Fw50eJM^S2Veok3x$}QHi z#GKO9ViurLYHDfKUe+~i?4Gj7W1HRTpteo|Iya>*@bkOEeqVl_221%+Gs`WgATsro62 zWtl1ZMY*|&d5P(%Mf%D4Ohu`a`5BeDcz{YlW*6&CwqcZJU0`vUM`v;rqm&xRb6{JG iKuT6J6!C%txPini4x8Nkl+v73yCVL{vlyjVKr#S6GCef_ delta 238 zcmX@Zyn~rnn~#@^0SG3Q9m(1`k=Ik33B-c}b|B3R#GeCzL<569LjhA5g8+k@ECWLU za~RXaMtNC76Q~9gMu;YP25)%=22KV!2B3odqP8rzSh7#mzETimK5J&%TLNm zO)j~`3=(DmYEn~EP`IU~pOK%Ns-KcrmYJeol$)EFmzbVfG+B{RnTs2!2IPujoymTT z(#)56lqTmfN~v)Ig^EDpMIZ$$8H#v7Y>;PeaoFVMrNohNy=p(V7b3PBM8ODN)mDh`lC3!%y(=^+;rTdhkTW^D&mTyl&m zA%&MzqylID1`<~el~Aiy50Ux@(uN0@{z)KeuKD zfMd2988;025e!;TfH+uC;Lvjg*Ak@p3O_2vRm6|&`={tyP#&S72xS+h9Lo-)Tf@DI zhy+$F;pqlngb?J40ERGz7Ror+z%HQgJ7{4|8daRH*UGmn>J^RhrbVcr>J^KM zx~0|3w3`ZsVr^2XVOxf6nbb`*vr%noDxJc}u3D^sSd@REZBxFfRH=y0)=W1}l1inL z%;+6?vr*GzRcY#~Olmcyu54&Tt~7`yD~3+Amx!=r*6OaYO+C+Ty{fL^j)d_Tc0F?g zT?>w+aOcJze;_6HrNm({+V*t=!B*}#6l)7dzUhv-_vpa4xbIs$OeDXqd|LVPlPh7bflRT)l#?eO zmSAs<_?YuEhw=lH6%CjrAq=VajIDblhKV>UDxsTzu5RqwZtml=_T!%aa(d#7o;ime x!d`bi?Q*o?bo>TRZZMAfL9LDHMxPw zLYyg#L4d(6h=HMiIffCW5d^}RC!c4M_BCQ)kYNZH4r0`if{24iWOf*H5EC*VnO(pV z#uUR0(-+1vnV(tIl*!wRfgxO3hZiOew3o>{gn@yRL5?Ae3FtWHTMW0@@=Hq!N=t6B zWT#dZYcfv`U=-KYWWB{wkXVv&iyb0ae2c9pwYW3~sHz~bsN@!FSz=CUYB4L&U^TVL zn;7l5_<>B2kBXBg|6^i1rGX4PtA3u8LT8xPIVc;1!;dJVSMI)>R&b zF1H6fLcM-nZXd-N1VukcG4KdA_*+f6E0-J3=(BvC}5trQ<{}opQ(Ul;!PJM zi7=MQnvA-PtdqkTZ3WXq*b6vf1R+`&7{WLv|7Db(e1MTdlid<1m?FTyAj1$Y5yYw^ z1yjSofXpu7m^_nFJy`;zE{H7*q6=uA3_}=u5F4_}Fb*Ar5ex+!;jLk8YCsY1GzJDv z204cCkRTQiKSmU$ER5NN5yF;d2zQ)Z&D6@sIhm1JlZ34`2Zt_DVrrwV~PL+gA7Bsco3_O6xbv%fy^#o zj}e5)gt1Nj%cvX;(FqilVF+UjVnbFP#;yZX45SO#!%MrE9!2-m^FMvb?!yRss z2~pGIC&n*Gzs#*S`5?17qvPbC%zJG?>Q*uof&5Y=0VHm5*yQG?l;)(`70Cd(Ae)MT ZUS{~f%*e=imqGq6gY*{`Sw&yv*KWG0YyC}0KB%s~8k$HX`GLi!8^OfifwxiE$x#)<#M z>p^P3Ae_+zsu!q?9U&UVWCAh+2+D!-MTRk)5FP_VIAa(yikxt`urU+RVNAC;a`F>X zQW8rNZ?Quir^$MYJtMI=v81G^hy`du5y+S#W{_`-IDmvE%jAAWF>#PTQf_eoH5KIN z6{i-1l&YyIOy0=o#w847gLD(ChIWCGxAOLVd{0dC7PUHl&V)$npcvU3#1`|R|Iho x$c~i^MIu0|NC-&W;;_lhPbtkwwJVYVazVjYEHn8(lQ{2P2Hh`g0*ta?wE!zdW4HhS delta 309 zcmcb}zJQHan~#@^0SE++oywA*$ScX{Gf~}@Cx}g)p@ch#U710XV`59}#1CSO6_eQ+ z?dxM$L5e{joY8~{!YT*SMT#-(5FSV-jLC!+DLG*p==GNzE|7ETrAR{zO7;LD^*q^NTE^ z4IW=OChudCXXKfDkEvI!2xP!Yh9W^ARm2Y@ZgJS;=BJeAq}mlp0J)4nTr4?xEweb+ L7Zz?tS+GI?`W{BI diff --git a/core/execution/action/action.py b/core/execution/action/action.py index c732f12..f9945f2 100644 --- a/core/execution/action/action.py +++ b/core/execution/action/action.py @@ -3,16 +3,23 @@ from core.runtime.savedata import loadSave, buildSave from core.runtime.outputs import buildOutput from core.runtime.logs import buildLog from core.runtime.runtimecontract import buildRuntimeAttr +from core.runtime.resolver import resolveItem -def buildAction (action, outputs): - +#resolved ={} +def buildAction (action, outputs):#, resolved): + if hasattr(action, "loaddata"): outputs = loadSave(outputs, action) - response, outputs = executeRequest(action, outputs) + resolved = {} + if hasattr(action, "resolve"): + resolved = resolveItem(action, outputs) + + response, outputs = executeRequest(action, outputs, resolved) #print("DEBUG:", outputs) - + #print(resolved) + outputs, response = buildRuntimeAttr(action, outputs, response) return outputs, response diff --git a/core/execution/operation/__pycache__/operation.cpython-314.pyc b/core/execution/operation/__pycache__/operation.cpython-314.pyc index ef6c10bb619eccc75cb39d06cfa7b7662e101838..c100674a2a1d0e2206e65bcb451b2d4dfd823fca 100644 GIT binary patch delta 617 zcmYjO&u7^Wc zF!2I;7mmhL8!!C>Jm^&uBba8}O-*|64`>2^fN!NHPBP!jOXi#TW?t9-NkVs!-wVw8 zt?#eT#V%5~RyU57mr(TN%!rA?{Fu za9VDCyQb*|)+`TU!iipMVoT8L4N_szD3dBS5~3xRD@Lupr(5EyvR*a}LTr%)*cjQ1v@LfeN##fq~t{)-18pg%s_e&NT18f2!Suu$@H?O6dy?OOC@TmslJ*z zQBKtrQ_22NvK{9|B=){}vhg$Wup?f%VL98oA(+ZsUzs~nPL;*JyfhMEHbw8c?gj6& znOAG9Y5UobNrOa)?z=v4etJ{5y=nz2b%N*1T8)hVlt`?E*vlLPnYQx?1IxX-TiU8ZmKck0x|~#VbRRFUWQ~b4 z-$;$A3j`nt3G$h_$i)DtR!D~Rtu0L1GyoZHKLF79g4_13-%7DVTN4VR?aevzg6$6j zxy(+IUyP6B*)ej+B%Y;ClLvm=aj-Z^?9 z`+XQ^lw5v;%klqKH3H{3+B?B?>5rkU=(o$8K$7u8@Pm?j^&2k zEk~NgS_7?^&P}B2#R`hM$WK-YTa{sJOeU}4>Xw0BmMs)D4Q-VvW|mtHSkoz+E;=Wz zzNI7Gg2W=E%-vIGsA=_6|4l^;29na3B3&ucN`I04t;|4@Tj{UL8igPWLCG-HGV#{ocf4*P9p+*%4Tqj_o!-OsCqekMh}f0d-F~kdr?ISX$i? z`pR5ancGu(O0p|oq4(`dKeX5lE$%((g_e7PYX|bmQ8YoajzoAK#-~n_z4Ci6y%JVwUH zlb189$|N&`v_JtHkOuKTF9Q+{3=`|bC*~*D$H0{YF@*<(G3!V{l>;dgsGK}Q7}(?@ z5Wk28NL29!r55Msl%*CaxVSonx@$5Ou>yr}u@)3%=9Or&7lAA*Vh0Ja=a-fgl$I1D zG#7D#BtgC@X4eCfYHDf-p<0O&Bx2d00bZ1&t*MeoX963!~^6tFa$A(Gn6m{F)A}?GHtZWV`RKNc`c)= zwVx(q5lF#Gh9X`dRm2S>ZgJS;=BJeAq}mnn1G$VqTnsYv12ZEd;}<4TMiH=D02XQ$ At^fc4 diff --git a/core/runtime/__pycache__/select.cpython-314.pyc b/core/runtime/__pycache__/select.cpython-314.pyc index 883c62c4437743cd1a7c1c0bd0d7d2b4dabe2e4e..5d8d8065d8c3df9a4a86e72a904affba853100f1 100644 GIT binary patch delta 655 zcma)(L2MF16ozMJVOgNdE(E&3?&5|vTX3p2 z!K^pPnov*0gV7#LYI^djJsU8t-87BiX7q&EL{l%m)tg?Nq9U;-g|rfsn7{T)dWN>R7L{2jmj8^%LGWu6p$*rrcl~_l`@N-@XJg4w5LEExoDmz zmraS`%oikTt`XM!Lb%QEo-24xK~>s0!5LNN&x}xx&}a!F2^~NeNd@PqJ48lPsE&?P zGOFWsv*MLhx9)-sy6C_uvcoLYmQU&WO?}6EVfj|=x4UjW@U~ZGVYvj>_z7sCkxO!C z?8&I%9|ogq@?*Jo*NSDW;1PqiBVu>4v)DUkMGif$S&_Wqvjw@^>@<57OE|pYv4ny# z@qemsG>V8u$(B|Wp zmjL_b4cshDdYWuS!a$`(AoWF}AVLg8hy#fbP39sN5JwtBumK6p$u~JCh-v{@EVRT?*)F=`JN&x`rS6oqFdGn1t4q(7!rt5rcL7NHUJ1q4^(>VobIS{e~k+KEU(nq`(PUAlMW zBZ!Y6E<@aO>&kfquOeQ!myg3am-8fFq}umXf#7^j->x6$>h#VVA=s6>d=5yWEXWG)?gi)umPI^gBJ1@@;2ryT>!dEIy>{{ur-eR{qR0l z$FUwnqj1vGVRW0zDAvPRFAnILKO9B<@a8Hn{=rF4_ZAbHPxr7O#T~!mF&3rtgSbW# zr=IYoT~4@hh*wJrOV>*z>Y_S3nzb`tOfQVEiY&2BiHL3{RC@Q$8%8(|!%&k5KXWRx t?$7C4-ocWW(o17ExnhZHQ1jAB##Q?8|8?=j4tX0}eFHiPStI}e delta 284 zcmW-bze>bF5XN^myV?BR%f&lAy;B5_0}(EuzJQ&G)qu7lC>RAJ-lp)Xlqqw>XRz`S zEG(?8Lu~R0`v{H>%<%Ee{P^a>ezU^^6?z0KI{m(HSK--(gaBm1=1kiVf)5IM5G5?3 zT0$RUSo_;*2L>=i&qZ$l>#zYM*o3Ww!5H-f^)@n=_JHn@{hif&I?i(alk$Q)@k-wAJX&sl{Qy1{DfjJK5-a}Qu;$&;}B<9@J{v$j#|Zq*SV^&O-w|; zI<967_sdHoET0w91Vqd`C#t5MqbhDB7q$`7VaSf^FSa{rcu?Npb;t_WC?Zt3G#2}3 Ly;@jDe2Uq>yf#ML diff --git a/plugins/rmass/actions/getmessage.py b/plugins/rmass/actions/getmessage.py index 57db081..b60802b 100644 --- a/plugins/rmass/actions/getmessage.py +++ b/plugins/rmass/actions/getmessage.py @@ -1,6 +1,5 @@ import os -#getoutputs = {"emails": [0, "id"]} name = "Get message" @@ -12,12 +11,6 @@ showstatus = True method = "GET" -#path = f"https://rentmasseur.com/api/v1/mailbox/{messageid}" -#path = [ -# "https://rentmasseur.com/api/v1/mailbox/", -# {"output": "[messageid][0].id"} -#] - resolve = { "targetkeys": ["id"], "label": "path", @@ -25,11 +18,12 @@ resolve = { path = [ "https://rentmasseur.com/api/v1/mailbox/", - { - "output": "id", - #"keys": [0, "id"] - "keys": "id" - } + {"suffix": "path"} + #{ + # "output": "id", + # #"keys": [0, "id"] + # "keys": "id" + #} ] #path = os.path.join(baseurl.messageid) @@ -43,12 +37,14 @@ headers = { recursive = { "source": "emails", + #Transformation target. dynamic target to be resolved in each iteration "target": "id" } outputs = { - "message": "messages" + "message": "messages", + "profile": "profileData", } select = { diff --git a/pullmessagelist.py b/pullmessagelist.py index 08fb56f..3049ae7 100644 --- a/pullmessagelist.py +++ b/pullmessagelist.py @@ -6,33 +6,3 @@ from core.execution.action import buildAction outputs = buildOperation(rmass.operations.pullmessagelist) -#print(outputs) -#print(messageid) -#user_list = [] -#for item in outputs["message_list"]: -# sender = item["userCard"] -# user_list.append(sender["id"]) -#print(user_list) - -#conversations = [] -#for item in outputs["message_list"]: -# conversation = item["id"] -# conversations.append(conversation) - -#print(conversations) - -#for messageid in conversations: -#outputs = buildAction(rmass.actions.getmessage, outputs) - -#print(outputs) - - -#for messageid in user_list - #outputs = buildOperation(rmass.operations.getmessage) -#id_list = [] -#for user in user_list -# id_list.append -# print - - -#ime.sleep(rmass.operations.setavailable.sleeptime) diff --git a/tokens.json b/tokens.json index a18a94f..0762e38 100644 --- a/tokens.json +++ b/tokens.json @@ -1 +1 @@ -{"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3OTE5MDM5MDEsIm5iZiI6MTc5MTkwMzcyMSwic3ViIjoiMjM4MzAyIiwidXNlcm5hbWUiOiJYeHhvdGlxIiwidXNlclR5cGUiOjEsInN0YWdlTmFtZSI6Ilh4eG90aXEiLCJhcHByb3ZlZCI6MSwibG9jYXRpb25JZCI6NDcyLCJzZWFyY2hDaXR5IjoiYXRsYW50YSIsImNvdW50cnlTaG9ydCI6IlVTIiwic2Vzc2lvbkNvdW50cnlDb250aW5lbnQiOiJOQSIsImlzRnJvemVuIjowLCJsb2NhdGlvbkxhYmVsIjoiQXRsYW50YSwgR0EiLCJpc3MiOiJodHRwczovL3JlbnRtYXNzZXVyLmNvbSIsImlhdCI6MTc5MTkwMzc4MX0.dwJ10VfIyUSANbKlG0UqzoRqWfZpU0vdUh44IoEbwKeaNPk6d_J6yvrLQy_uY18IfQR_3t4PEp7Qrwa9Eqtyig", "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3OTQ0OTU3ODEsIm5iZiI6MTc5MTkwMzcyMSwianRpIjoiK3pMamtvVlhnN1ZhZmd1OGtib21CQkhxR0R5QmZVdVMxeTgzb0NmQWttcz0iLCJpc3MiOiJodHRwczovL3JlbnRtYXNzZXVyLmNvbSIsImlhdCI6MTc5MTkwMzc4MSwic3ViIjoiMjM4MzAyIn0.q_Bjzys1sCFe29BewT3Ez6cTMvL6vmAwvspSafOmPV980W5Rh2RuytxHnz8JiYj8zGKbi-oM5pNfrOG3gS5Heg"} \ No newline at end of file +{"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3OTE5MTgyMDEsIm5iZiI6MTc5MTkxODAyMSwic3ViIjoiMjM4MzAyIiwidXNlcm5hbWUiOiJYeHhvdGlxIiwidXNlclR5cGUiOjEsInN0YWdlTmFtZSI6Ilh4eG90aXEiLCJhcHByb3ZlZCI6MSwibG9jYXRpb25JZCI6NDcyLCJzZWFyY2hDaXR5IjoiYXRsYW50YSIsImNvdW50cnlTaG9ydCI6IlVTIiwic2Vzc2lvbkNvdW50cnlDb250aW5lbnQiOiJOQSIsImlzRnJvemVuIjowLCJsb2NhdGlvbkxhYmVsIjoiQXRsYW50YSwgR0EiLCJpc3MiOiJodHRwczovL3JlbnRtYXNzZXVyLmNvbSIsImlhdCI6MTc5MTkxODA4MX0.Y5Ej40c3Ji_-WLShpJkRSl3wF4XGxrLhE_rYMWxQmeDPHK03mv8bWX_7A7zmjjk3cYrwlBM5odn_eJWSaCI_Lg", "refresh_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJleHAiOjE3OTQ1MTAwODEsIm5iZiI6MTc5MTkxODAyMSwianRpIjoiQ0NmdW9xTFdsUmZpais1c1VxU2FudFRVb0xZVkd3ZG9NQkRYY1ZnV0pzdz0iLCJpc3MiOiJodHRwczovL3JlbnRtYXNzZXVyLmNvbSIsImlhdCI6MTc5MTkxODA4MSwic3ViIjoiMjM4MzAyIn0.oWa2PwSyh110MOJ8ypsRCtiXNQWosNv4T_UZ9m0shUjsFTX0Qtr-bSnc7mS8-5TSW-szEnLHT89-T8KzNZApYg"} \ No newline at end of file