Updated apprise to 1.8.0

pull/2495/head v1.4.3-beta.36
morpheus65535 3 weeks ago
parent 006ee0f63a
commit 86d34039a3

@ -1,183 +0,0 @@
../../bin/apprise,sha256=ZJ-e4qqxNLtdW_DAvpuPPX5iROIiQd8I6nvg7vtAv-g,233
apprise-1.7.6.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
apprise-1.7.6.dist-info/LICENSE,sha256=gt7qKBxRhVcdmXCYVtrWP6DtYjD0DzONet600dkU994,1343
apprise-1.7.6.dist-info/METADATA,sha256=z_gaX2IdNJqw4T9q7AYQri9jcIs-OTGCo3t2EgEY-mw,44823
apprise-1.7.6.dist-info/RECORD,,
apprise-1.7.6.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
apprise-1.7.6.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
apprise-1.7.6.dist-info/entry_points.txt,sha256=71YypBuNdjAKiaLsiMG40HEfLHxkU4Mi7o_S0s0d8wI,45
apprise-1.7.6.dist-info/top_level.txt,sha256=JrCRn-_rXw5LMKXkIgMSE4E0t1Ks9TYrBH54Pflwjkk,8
apprise/Apprise.py,sha256=Stm2NhJprWRaMwQfTiIQG_nR1bLpHi_zcdwEcsCpa-A,32865
apprise/Apprise.pyi,sha256=_4TBKvT-QVj3s6PuTh3YX-BbQMeJTdBGdVpubLMY4_k,2203
apprise/AppriseAsset.py,sha256=jRW8Y1EcAvjVA9h_mINmsjO4DM3S0aDl6INIFVMcUCs,11647
apprise/AppriseAsset.pyi,sha256=NYLXXYbScgRkspP27XGpRRM_uliPu1OCdWdZBPPvLng,979
apprise/AppriseAttachment.py,sha256=vhrktSrp8GLr32aK4KqV6BX83IpI1lxZe-pGo1wiSFM,12540
apprise/AppriseAttachment.pyi,sha256=R9-0dVqWpeaFrVpcREwPhGy3qHWztG5jEjYIOsbE5dM,1145
apprise/AppriseConfig.py,sha256=wfuR6Mb3ZLHvjvqWdFp9lVmjjDRWs65unY9qa92RkCg,16909
apprise/AppriseConfig.pyi,sha256=_mUlCnncqAq8sL01WxQTgZjnb2ic9kZXvtqZmVl-fc8,1568
apprise/AppriseLocale.py,sha256=4uSr4Nj_rz6ISMMAfRVRk58wZVLKOofJgk2x0_E8NkQ,8994
apprise/AttachmentManager.py,sha256=EwlnjuKn3fv_pioWcmMCkyDTsO178t6vkEOD8AjAPsw,2053
apprise/ConfigurationManager.py,sha256=MUmGajxjgnr6FGN7xb3q0nD0VVgdTdvapBBR7CsI-rc,2058
apprise/NotificationManager.py,sha256=ZJgkiCgcJ7Bz_6bwQ47flrcxvLMbA4Vbw0HG_yTsGdE,2041
apprise/URLBase.py,sha256=xRP0-blocp9UudYh04Hb3fIEmTZWJaTv_tzjrqaB9fg,29423
apprise/URLBase.pyi,sha256=WLaRREH7FzZ5x3-qkDkupojWGFC4uFwJ1EDt02lVs8c,520
apprise/__init__.py,sha256=ArtvoarAMnBcSfXF7L_hzq5CUJ9TUnHopiC7xafCe3c,3368
apprise/assets/NotifyXML-1.0.xsd,sha256=292qQ_IUl5EWDhPyzm9UTT0C2rVvJkyGar8jiODkJs8,986
apprise/assets/NotifyXML-1.1.xsd,sha256=bjR3CGG4AEXoJjYkGCbDttKHSkPP1FlIWO02E7G59g4,1758
apprise/assets/themes/default/apprise-failure-128x128.ico,sha256=Mt0ptfHJaN3Wsv5UCNDn9_3lyEDHxVDv1JdaDEI_xCA,67646
apprise/assets/themes/default/apprise-failure-128x128.png,sha256=66ps8TDPxVH3g9PlObJqF-0x952CjnqQyN3zvpRcOT8,16135
apprise/assets/themes/default/apprise-failure-256x256.png,sha256=bQBsKKCsKfR9EqgYOZrcVcVa5y8qG58PN2mEqO5eNRI,41931
apprise/assets/themes/default/apprise-failure-32x32.png,sha256=vH0pZffIDCvkejpr3fJHGXW__8Yc3R_p0bacX6t6l18,2437
apprise/assets/themes/default/apprise-failure-72x72.png,sha256=EP5A8DHRDr9srgupFSwOoyQ308bNJ8aL192J_L4K-ec,7600
apprise/assets/themes/default/apprise-info-128x128.ico,sha256=F5_CirmXueRCRI5Z_Crf6TS6jVIXTJlRD83zw1oJ66g,67646
apprise/assets/themes/default/apprise-info-128x128.png,sha256=bBqRZAgQey-gkmJrnFhPbzjILSrljE59mRkgj3raMQo,16671
apprise/assets/themes/default/apprise-info-256x256.png,sha256=B5r_O4d9MHCmSWZwfbqQgZSp-ZetTdiBSwKcMTF1aFA,43331
apprise/assets/themes/default/apprise-info-32x32.png,sha256=lt3NZ95TzkiCNVNlurrB2fE2nriMa1wftl7nrNXmb6c,2485
apprise/assets/themes/default/apprise-info-72x72.png,sha256=kDnsZpqNUZGqs9t1ECUup7FOfXUIL-rupnQCYJp9So4,7875
apprise/assets/themes/default/apprise-logo.png,sha256=85ttALudKkLmiqilJT7mUQLUXRFmM1AK89rnwLm313s,160907
apprise/assets/themes/default/apprise-success-128x128.ico,sha256=uCopPwdQjxgfohKazHaDzYs9y4oiaOpL048PYC6WRlg,67646
apprise/assets/themes/default/apprise-success-128x128.png,sha256=nvDuU_QqhGlw6cMtdj7Mv-gPgqCEx-0DaaXn1KBLVYg,17446
apprise/assets/themes/default/apprise-success-256x256.png,sha256=vXfKuxY3n0eeXHKdb9hTxICxOEn7HjAQ4IZpX0HSLzc,48729
apprise/assets/themes/default/apprise-success-32x32.png,sha256=Jg9pFJh3YPI-LiPBebyJ7Z4Vt7BRecaE8AsRjQVIkME,2471
apprise/assets/themes/default/apprise-success-72x72.png,sha256=FQbgvIhqKOhEK0yvrhaSpai0R7hrkTt_-GaC2KUgCCk,7858
apprise/assets/themes/default/apprise-warning-128x128.ico,sha256=6XaQPOx0oWK_xbhr4Yhb7qNazCWwSs9lk2SYR2MHTrQ,67646
apprise/assets/themes/default/apprise-warning-128x128.png,sha256=pf5c4Ph7jWH7gf39dJoieSj8TzAsY3TXI-sGISGVIW4,16784
apprise/assets/themes/default/apprise-warning-256x256.png,sha256=SY-xlaiXaj420iEYKC2_fJxU-yj2SuaQg6xfPNi83bw,43708
apprise/assets/themes/default/apprise-warning-32x32.png,sha256=97R2ywNvcwczhBoWEIgajVtWjgT8fLs4FCCz4wu0dwc,2472
apprise/assets/themes/default/apprise-warning-72x72.png,sha256=L8moEInkO_OLxoOcuvN7rmrGZo64iJeH20o-24MQghE,7913
apprise/attachment/AttachBase.py,sha256=T3WreGrTsqqGplXJO36jm-N14X7ymSc9xt7XdTYuXVE,13656
apprise/attachment/AttachBase.pyi,sha256=w0XG_QKauiMLJ7eQ4S57IiLIURZHm_Snw7l6-ih9GP8,961
apprise/attachment/AttachFile.py,sha256=MbHY_av0GeM_AIBKV02Hq7SHiZ9eCr1yTfvDMUgi2I4,4765
apprise/attachment/AttachHTTP.py,sha256=_CMPp4QGLATfGO2-Nw57sxsQyed9z3ywgoB0vpK3KZk,13779
apprise/attachment/__init__.py,sha256=xabgXpvV05X-YRuqIt3uGYMXwYNXjHyF6Dwd8HfZCFE,1658
apprise/cli.py,sha256=h-pWSQPqQficH6J-OEp3MTGydWyt6vMYnDZvHCeAt4Y,20697
apprise/common.py,sha256=I6wfrndggCL7l7KAl7Cm4uwAX9n0l3SN4-BVvTE0L0M,5593
apprise/common.pyi,sha256=luF3QRiClDCk8Z23rI6FCGYsVmodOt_JYfYyzGogdNM,447
apprise/config/ConfigBase.py,sha256=d1efIuQFCJr66WgpudV2DWtxY3-tuZAyMAhHXBzJ8p0,53194
apprise/config/ConfigBase.pyi,sha256=cngfobwH6v2vxYbQrObDi5Z-t5wcquWF-wR0kBCr3Eg,54
apprise/config/ConfigFile.py,sha256=u_SDaN3OHMyaAq2X7k_T4_PRKkVsDwleqBz9YIN5lbA,6138
apprise/config/ConfigHTTP.py,sha256=Iy6Ji8_nX3xDjFgJGLrz4ftrMlMiyKiFGzYGJ7rMSMQ,9457
apprise/config/ConfigMemory.py,sha256=epEAgNy-eJVWoQaUOvjivMWxXTofy6wAQ-NbCqYmuyE,2829
apprise/config/__init__.py,sha256=lbsxrUpB1IYM2q7kjYhsXQGgPF-yZXJrKFE361tdIPY,1663
apprise/conversion.py,sha256=0VZ0eCZfksN-97Vl0TjVjwnCTgus3XTRioceSFnP-gc,6277
apprise/decorators/CustomNotifyPlugin.py,sha256=i4D-sgOsBWsxO5auWCN2bgXLLPuADaaLlJ1gUKLj2bU,7972
apprise/decorators/__init__.py,sha256=e_PDAm0kQNzwDPx-NJZLPfLMd2VAABvNZtxx_iDviRM,1487
apprise/decorators/notify.py,sha256=a2WupErNw1_SMAld7jPC273bskiChMpYy95BOog5A9w,5111
apprise/emojis.py,sha256=ONF0t8dY9f2XlEkLUG79-ybKVAj2GqbPj2-Be97vAoI,87738
apprise/i18n/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
apprise/i18n/en/LC_MESSAGES/apprise.mo,sha256=oUTuHREmLEYN07oqYqRMJ_kU71-o5o37NsF4RXlC5AU,3959
apprise/logger.py,sha256=131hqhed8cUj9x_mfXDEvwA2YbcYDFAYiWVK1HgxRVY,6921
apprise/manager.py,sha256=R9w8jxQRNy6Z_XDcobkt4JYbrC4jtj2OwRw9Zrib3CA,26857
apprise/plugins/NotifyAppriseAPI.py,sha256=ISBE0brD3eQdyw3XrGXd4Uc4kSYvIuI3SSUVCt-bkdo,16654
apprise/plugins/NotifyAprs.py,sha256=xdL_aIVgb4ggxRFeCdkZAbgHYZ8DWLw9pRpLZQ0rHoE,25523
apprise/plugins/NotifyBark.py,sha256=bsDvKooRy4k1Gg7tvBjv3DIx7-WZiV_mbTrkTwMtd9Q,15698
apprise/plugins/NotifyBase.py,sha256=G3xkF_a2BWqNSxsrnOW7NUgHjOqBCYC5zihCifWemo8,30360
apprise/plugins/NotifyBase.pyi,sha256=aKlZXRYUgG8lz_ZgGkYYJ_GKhuf18youTmMU-FlG7z8,21
apprise/plugins/NotifyBoxcar.py,sha256=vR00-WggHa1nHYWyb-f5P2V-G4f683fU_-GBlIeJvD0,12867
apprise/plugins/NotifyBulkSMS.py,sha256=stPWAFCfhBP617zYK9Dgk6pNJBN_WcyJtODzo0jR1QQ,16005
apprise/plugins/NotifyBulkVS.py,sha256=viLGeyUDiirRRM7CgRqqElHSLYFnMugDtWE6Ytjqfaw,13290
apprise/plugins/NotifyBurstSMS.py,sha256=cN2kRETKIK5LhwpQEA8C68LKv8KEUPmXYe-nTSegGls,15550
apprise/plugins/NotifyChantify.py,sha256=GJJOAtSnVoIfKbJF_W1DTu7WsvS_zHdjO4T1XTKT87g,6673
apprise/plugins/NotifyClickSend.py,sha256=UfOJqsas6WLjQskojuJE7I_-lrb5QrkMiBZv-po_Q9c,11229
apprise/plugins/NotifyD7Networks.py,sha256=4E6Fh0kQoDlMMwgZJDOXky7c7KrdMMvqprcfm29scWU,15043
apprise/plugins/NotifyDBus.py,sha256=1eVJHIL3XkFjDePMqfcll35Ie1vxggJ1iBsVFAIaF00,14379
apprise/plugins/NotifyDapnet.py,sha256=KuXjBU0ZrIYtoDei85NeLZ-IP810T4w5oFXH9sWiSh0,13624
apprise/plugins/NotifyDingTalk.py,sha256=NJyETgN6QjtRqtxQjfBLFVuFpURyWykRftm6WpQJVbY,12009
apprise/plugins/NotifyDiscord.py,sha256=M_qmTzB7NNL5_agjYDX38KBN1jRzDBp2EMSNwEF_9Tw,26072
apprise/plugins/NotifyEmail.py,sha256=Y_ZOrdK6hTUKHLvogKpV5VqD8byzDyDSvwIVmfdsC2g,39789
apprise/plugins/NotifyEmby.py,sha256=OMVO8XsVl_XCBYNNNQi8ni2lS4voLfU8Puk1xJOAvHs,24039
apprise/plugins/NotifyEnigma2.py,sha256=Hj0Q9YOeljSwbfiuMKLqXTVX_1g_mjNUGEts7wfrwno,11498
apprise/plugins/NotifyFCM/__init__.py,sha256=mBFtIgIJuLIFnMB5ndx5Makjs9orVMc2oLoD7LaVT48,21669
apprise/plugins/NotifyFCM/color.py,sha256=8iqDtadloQh2TMxkFmIFwenHqKp1pHHn1bwyWOzZ6TY,4592
apprise/plugins/NotifyFCM/common.py,sha256=978uBUoNdtopCtylipGiKQdsQ8FTONxkFBp7uJMZHc8,1718
apprise/plugins/NotifyFCM/oauth.py,sha256=Vvbd0-rd5BPIjAneG3rILU153JIzfSZ0kaDov6hm96M,11197
apprise/plugins/NotifyFCM/priority.py,sha256=0WuRW1y1HVnybgjlTeCZPHzt7j8SwWnC7faNcjioAOc,8163
apprise/plugins/NotifyFeishu.py,sha256=IpcABdLZJ1vcQdZHlmASVbNOiOCIrmgKFhz1hbdskY4,7266
apprise/plugins/NotifyFlock.py,sha256=0rUIa9nToGsO8BTUgixh8Z_qdVixJeH479UNYjcE4EM,12748
apprise/plugins/NotifyForm.py,sha256=38nL-2m1cf4gEQFQ4NpvA4j9i5_nNUgelReWFSjyV5U,17905
apprise/plugins/NotifyFreeMobile.py,sha256=XCkgZLc3KKGlx_9UdeoMJVcHpeQrOml9T93S-DGf4bs,6644
apprise/plugins/NotifyGnome.py,sha256=8MXTa8gZg1wTgNJfLlmq7_fl3WaYK-SX6VR91u308C4,9059
apprise/plugins/NotifyGoogleChat.py,sha256=lnoN17m6lZANaXcElDTP8lcuVWjIZEK8C6_iqJNAnw4,12622
apprise/plugins/NotifyGotify.py,sha256=DNlOIHyuYitO5use9oa_REPm2Fant7y9QSaatrZFNI0,10551
apprise/plugins/NotifyGrowl.py,sha256=M6ViUz967VhEHtXrE7lbCKF3aB4pIXNEzJLjjGAmvhM,14023
apprise/plugins/NotifyGuilded.py,sha256=eCMCoFFuE0XNY8HlLM21zoxgBNgqEKQ8dwYj8LihfRU,3641
apprise/plugins/NotifyHomeAssistant.py,sha256=zqWu7TtdXhTbGNuflC8WfydbHsCLiEBw4uBUcF7YZtw,10739
apprise/plugins/NotifyHttpSMS.py,sha256=pDEUHCCB18IhOgDcVK3_FFDJdAcrdTIfPzj0jNnZZBo,11136
apprise/plugins/NotifyIFTTT.py,sha256=oMvTQ0bEu2eJQgw9BwxAwTNOtbZ_ER-zleJvWpWTj7w,13425
apprise/plugins/NotifyJSON.py,sha256=70ctjmArGzuvM1gHNt1bCiQVWE7Fp9vd2nWhSXwFvw0,13851
apprise/plugins/NotifyJoin.py,sha256=B8FHp7cblZBkxTgfrka6mNnf6oQVBXVuGISgSau00z0,13581
apprise/plugins/NotifyKavenegar.py,sha256=F5xTUdebM1lK6yGFbZJQB9Zgw2LTI0angeA-3Nu-89w,12620
apprise/plugins/NotifyKumulos.py,sha256=eCEW2ZverZqETOLHVWMC4E8Ll6rEhhEWOSD73RD80SM,8214
apprise/plugins/NotifyLametric.py,sha256=h8vZoX-Ll5NBZRprBlxTO2H9w0lOiMxglGvUgJtK4_8,37534
apprise/plugins/NotifyLine.py,sha256=OVI0ozMJcq_-dI8dodVX52dzUzgENlAbOik-Kw4l-rI,10676
apprise/plugins/NotifyLunaSea.py,sha256=woN8XdkwAjhgxAXp7Zj4XsWLybNL80l4W3Dx5BvobZg,14459
apprise/plugins/NotifyMQTT.py,sha256=cnuG4f3bYYNPhEj9qDX8SLmnxLVT9G1b8J5w6-mQGKY,19545
apprise/plugins/NotifyMSG91.py,sha256=P7JPyT1xmucnaEeCZPf_6aJfe1gS_STYYwEM7hJ7QBw,12677
apprise/plugins/NotifyMSTeams.py,sha256=dFH575hoLL3zRddbBKfozlYjxvPJGbj3BKvfJSIkvD0,22976
apprise/plugins/NotifyMacOSX.py,sha256=y2fGpSZXomFiNwKbWImrXQUMVM4JR4uPCnsWpnxQrFA,8271
apprise/plugins/NotifyMailgun.py,sha256=FNS_QLOQWMo62yVO-mMZkpiXudUtSdbHOjfSrLC4oIo,25409
apprise/plugins/NotifyMastodon.py,sha256=2ovjQIOOITHH8lOinC8QCFCJN2QA8foIM2pjdknbblc,35277
apprise/plugins/NotifyMatrix.py,sha256=I8kdaZUZS-drew0JExBbChQVe7Ib4EwAjQd0xE30XT0,50049
apprise/plugins/NotifyMattermost.py,sha256=JgEc-wC-43FBMItezDJ62zv1Nc9ROFjDiwD_8bt8rgM,12722
apprise/plugins/NotifyMessageBird.py,sha256=EUPwhs1PHiPZpluIrLiNKQMUPcdlKnx1sdnllCtN_Ns,12248
apprise/plugins/NotifyMisskey.py,sha256=zYZkBKv0p3jJpm_HLDBugUgKeGb0qpLoPqy0ffwwxVg,9600
apprise/plugins/NotifyNextcloud.py,sha256=M3EyvUzBMHbTKU3gxW_7fPA6vmQUF5x8GTMZQ78sWCA,12759
apprise/plugins/NotifyNextcloudTalk.py,sha256=dLl_g7Knq5PVcadbzDuQsxbGHTZlC4r-pQC8wzYnmAo,11011
apprise/plugins/NotifyNotica.py,sha256=yHmk8HiNFjzoI4Gewo_nBRrx9liEmhT95k1d10wqhYg,12990
apprise/plugins/NotifyNotifiarr.py,sha256=ADwLJO9eenfLkNa09tXMGSBTM4c3zTY0SEePvyB8WYA,15857
apprise/plugins/NotifyNotifico.py,sha256=Qe9jMN_M3GL4XlYIWkAf-w_Hf65g9Hde4bVuytGhUW4,12035
apprise/plugins/NotifyNtfy.py,sha256=AtJt2zH35mMQTwRDxKia93NPy6-4rtixplP53zIYV2M,27979
apprise/plugins/NotifyOffice365.py,sha256=8TxsVsdbUghmNj0kceMlmoZzTOKQTgn3priI8JuRuHE,25190
apprise/plugins/NotifyOneSignal.py,sha256=gsw7ckW7xLiJDRUb7eJHNe_4bvdBXmt6_YsB1u_ghjw,18153
apprise/plugins/NotifyOpsgenie.py,sha256=zJWpknjoHq35Iv9w88ucR62odaeIN3nrGFPtYnhDdjA,20515
apprise/plugins/NotifyPagerDuty.py,sha256=lu6oNdygrs6UezYm6xgiQxQDeDz8EVUtfP-xsArRvyw,17874
apprise/plugins/NotifyPagerTree.py,sha256=mPl6ejdelNlWUWGVs46kZT0VV4uFZoeCdcv4VJ_f_XQ,13849
apprise/plugins/NotifyParsePlatform.py,sha256=6oFOTpu-HMhesaYXRBvu5oaESYlFrKBNYTHE-ItCBRk,10291
apprise/plugins/NotifyPopcornNotify.py,sha256=kRstzG0tWBdxSRfn2RN2J7FhvIj2qYWlwUyLxxZCbPc,10587
apprise/plugins/NotifyProwl.py,sha256=EGOdmiZq8CFbjxTtWWKLQEdYiSvr4czZfE_8aCMEokw,9782
apprise/plugins/NotifyPushBullet.py,sha256=JVd2GQH-DWmPaKjuGBpsE6DXNCcZEUDH7tA5zbM1qEU,15372
apprise/plugins/NotifyPushDeer.py,sha256=cG1UFG06PfzbmI1RxtrMqmfaHK_Ojk_W-QMEdtkEuUI,6922
apprise/plugins/NotifyPushMe.py,sha256=ioRzeXbd2X5miTd3h3m7AwCqkIIfbXNm4PjYk0OOXZ0,7134
apprise/plugins/NotifyPushSafer.py,sha256=hIcYHwUZapmC-VDvaO_UkDY9RSPTxHgF7m2FL-6JBZw,26756
apprise/plugins/NotifyPushed.py,sha256=NqLMXD9gvihXLfLUtCcMfz5oUAhPM7sKXECqKgD0v-U,12270
apprise/plugins/NotifyPushjet.py,sha256=8qWpIqM4dKWjO-BjOrRJXZYtvtJBt_mikdBWRxfibnE,8952
apprise/plugins/NotifyPushover.py,sha256=MJDquV4zl1cNrGZOC55hLlt6lOb6625WeUcgS5ceCbk,21213
apprise/plugins/NotifyPushy.py,sha256=mmWcnu905Fvc8ihYXvZ7lVYErGZH5Q-GbBNS20v5r48,12496
apprise/plugins/NotifyRSyslog.py,sha256=W42LT90X65-pNoU7KdhdX1PBcmsz9RyV376CDa_H3CI,11982
apprise/plugins/NotifyReddit.py,sha256=E78OSyDQfUalBEcg71sdMsNBOwdj7cVBnELrhrZEAXY,25785
apprise/plugins/NotifyRevolt.py,sha256=DRA9Xylwl6leVjVFuJcP4L1cG49CIBtnQdxh4BKnAZ4,14500
apprise/plugins/NotifyRocketChat.py,sha256=Cb_nasX0-G3FoPMYvNk55RJ-tHuXUCTLUn2wTSi4IcI,25738
apprise/plugins/NotifyRyver.py,sha256=yhHPMLGeJtcHwBKSPPk0OBfp59DgTvXio1R59JhrJu4,11823
apprise/plugins/NotifySES.py,sha256=wtRmpAZkS5mQma6sdiaPT6U1xcgoj77CB9mNFvSEAw8,33545
apprise/plugins/NotifySMSEagle.py,sha256=voFNqOewD9OC1eRctD0YdUB_ZSWsb06rjUwBfCcxPYA,24161
apprise/plugins/NotifySMSManager.py,sha256=DbVc35qLfYkNL7eq43_rPD6k-PELL9apf3S09S6qvDA,14125
apprise/plugins/NotifySMTP2Go.py,sha256=foQ7aMMmNc5Oree8YwrxZJgMnF6yVMFAfqShm_nLbx0,19711
apprise/plugins/NotifySNS.py,sha256=ZEBWf0ZJ9w_ftzUikKEvQWJ2fkxrUbrLhPmTRD2DvRQ,24159
apprise/plugins/NotifySendGrid.py,sha256=IBdYmZcthkvGCz1N_Fs8vDnImtHug6LpuKv1mWT_Cdo,16213
apprise/plugins/NotifyServerChan.py,sha256=WsrClO9f0xi-KpnLZGTUHV7PxeU3l1D875gvMaZRG_M,5779
apprise/plugins/NotifySignalAPI.py,sha256=OwJ7qjJ-ZJyS8GS-dBWAtgizHMnGegg76GuwFobyWkw,16733
apprise/plugins/NotifySimplePush.py,sha256=dUC6O8IGuUIAz5z6_H7A7jdv5Gj1plytNm5QyKnHAYg,10876
apprise/plugins/NotifySinch.py,sha256=tmHLwQa9lWHEI3EcRfigl4i7JU46A6gKAi_GbY0PrX4,16813
apprise/plugins/NotifySlack.py,sha256=3VdjruU5FPr3jT_s3axwRJKMcBYXP0lvJnyuKedIlcE,42521
apprise/plugins/NotifySparkPost.py,sha256=6dRTwnYU50Lvmp6AlwCyePe0TMbVEXaSwNeGkg__EYo,27878
apprise/plugins/NotifyStreamlabs.py,sha256=lx3N8T2ufUWFYIZ-kU_rOv50YyGWBqLSCKk7xim2_Io,16023
apprise/plugins/NotifySynology.py,sha256=_jTqfgWeOuSi_I8geMOraHBVFtDkvm9mempzymrmeAo,11105
apprise/plugins/NotifySyslog.py,sha256=J9Kain2bb-PDNiG5Ydb0q678cYjNE_NjZFqMG9oEXM0,10617
apprise/plugins/NotifyTechulusPush.py,sha256=m43_Qj1scPcgCRX5Dr2Ul7nxMbaiVxNzm_HRuNmfgoA,7253
apprise/plugins/NotifyTelegram.py,sha256=XE7PC9LRzcrfE2bpLKyor5lO_7B9LS4Xw1UlUmA4a2A,37187
apprise/plugins/NotifyThreema.py,sha256=C_C3j0fJWgeF2uB7ceJFXOdC6Lt0TFBInFMs5Xlg04M,11885
apprise/plugins/NotifyTwilio.py,sha256=WCo8eTI9OF1rtg3ueHHRDXt4Lp45eZ6h3IdTZVf5HM8,15976
apprise/plugins/NotifyTwist.py,sha256=nZA73CYVe-p0tkVMy5q3vFRyflLM4yjUo9LECvkUwgc,28841
apprise/plugins/NotifyTwitter.py,sha256=qML0jlBkLZMHrkKRxBpVUnBwAz8MWGYyI3cvwi-hrgM,30152
apprise/plugins/NotifyVoipms.py,sha256=msy_D32YhP8OP4_Mj_L3OYd4iablqQETN-DvilGZeVQ,12552
apprise/plugins/NotifyVonage.py,sha256=xmzZgobFaGA_whpQ5fDuG2poUrK9W4T77yP7dusHcSo,13431
apprise/plugins/NotifyWeComBot.py,sha256=5lkhXDgyJ1edzknemKsO1sJVv7miR9F_7xI40Ag7ICI,8789
apprise/plugins/NotifyWebexTeams.py,sha256=gbbRlHiPuOvUIZexE5m2QNd1dN_5_x0OdT5m6NSrcso,9164
apprise/plugins/NotifyWhatsApp.py,sha256=PtzW0ue3d2wZ8Pva_LG29jUcpRRP03TFxO5SME_8Juo,19924
apprise/plugins/NotifyWindows.py,sha256=QgWJfJF8AE6RWr-L81YYVZNWrnImK9Qr3B991HWanqU,8563
apprise/plugins/NotifyXBMC.py,sha256=5hDuOTP3Kwtp4NEMaokNjWyEKEkQcN_fSx-cUPJvhaU,12096
apprise/plugins/NotifyXML.py,sha256=WJnmdvXseuTRgioVMRqpR8a09cDfTpPTfuFlTnT_TfI,16973
apprise/plugins/NotifyZulip.py,sha256=M8cSL7nZvtBYyTX6045g34tyn2vyybltgD1CoI4Xa7A,13968
apprise/plugins/__init__.py,sha256=jTfLmW47kZC_Wf5eFFta2NoD2J-7_E7JaPrrVMIECkU,18725
apprise/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
apprise/utils.py,sha256=SjRU2tb1UsVnTCTXPUyXVz3WpRbDWwAHH-d3ll38EHY,53185

@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: apprise
Version: 1.7.6
Version: 1.8.0
Summary: Push Notifications that work with just about every platform!
Home-page: https://github.com/caronc/apprise
Author: Chris Caron

@ -0,0 +1,183 @@
../../bin/apprise,sha256=ZJ-e4qqxNLtdW_DAvpuPPX5iROIiQd8I6nvg7vtAv-g,233
apprise-1.8.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
apprise-1.8.0.dist-info/LICENSE,sha256=gt7qKBxRhVcdmXCYVtrWP6DtYjD0DzONet600dkU994,1343
apprise-1.8.0.dist-info/METADATA,sha256=if2D6aZrIVQZAe9BKWyqKoKH89ZGnYOTvXGRfqcSf_g,44823
apprise-1.8.0.dist-info/RECORD,,
apprise-1.8.0.dist-info/REQUESTED,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
apprise-1.8.0.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
apprise-1.8.0.dist-info/entry_points.txt,sha256=71YypBuNdjAKiaLsiMG40HEfLHxkU4Mi7o_S0s0d8wI,45
apprise-1.8.0.dist-info/top_level.txt,sha256=JrCRn-_rXw5LMKXkIgMSE4E0t1Ks9TYrBH54Pflwjkk,8
apprise/__init__.py,sha256=nBy2lkwvLxW1QTMEagOZZnM5AQWLM6CRUYt-Gr03X94,3388
apprise/apprise.py,sha256=JWSqg5pYJOydubQyaIjR9gIPhb2okcrGe2mQ_NhPNS0,32837
apprise/apprise.pyi,sha256=_4TBKvT-QVj3s6PuTh3YX-BbQMeJTdBGdVpubLMY4_k,2203
apprise/apprise_attachment.py,sha256=eYVnNWTWQzlzKPDOgMCzGvVtXXDL6noMwtRKwwvyL8Q,12528
apprise/apprise_attachment.pyi,sha256=R9-0dVqWpeaFrVpcREwPhGy3qHWztG5jEjYIOsbE5dM,1145
apprise/apprise_config.py,sha256=qlNtd-OkldrY9rE9vT67fVPHINx9fkkbwQinhbBjQ_I,16896
apprise/apprise_config.pyi,sha256=_mUlCnncqAq8sL01WxQTgZjnb2ic9kZXvtqZmVl-fc8,1568
apprise/asset.py,sha256=ICXIjCi12Xq8E-WIR4mrVC7KcpPRiJDlKG8cHqoCll0,11643
apprise/asset.pyi,sha256=NYLXXYbScgRkspP27XGpRRM_uliPu1OCdWdZBPPvLng,979
apprise/assets/NotifyXML-1.0.xsd,sha256=292qQ_IUl5EWDhPyzm9UTT0C2rVvJkyGar8jiODkJs8,986
apprise/assets/NotifyXML-1.1.xsd,sha256=bjR3CGG4AEXoJjYkGCbDttKHSkPP1FlIWO02E7G59g4,1758
apprise/assets/themes/default/apprise-failure-128x128.ico,sha256=Mt0ptfHJaN3Wsv5UCNDn9_3lyEDHxVDv1JdaDEI_xCA,67646
apprise/assets/themes/default/apprise-failure-128x128.png,sha256=66ps8TDPxVH3g9PlObJqF-0x952CjnqQyN3zvpRcOT8,16135
apprise/assets/themes/default/apprise-failure-256x256.png,sha256=bQBsKKCsKfR9EqgYOZrcVcVa5y8qG58PN2mEqO5eNRI,41931
apprise/assets/themes/default/apprise-failure-32x32.png,sha256=vH0pZffIDCvkejpr3fJHGXW__8Yc3R_p0bacX6t6l18,2437
apprise/assets/themes/default/apprise-failure-72x72.png,sha256=EP5A8DHRDr9srgupFSwOoyQ308bNJ8aL192J_L4K-ec,7600
apprise/assets/themes/default/apprise-info-128x128.ico,sha256=F5_CirmXueRCRI5Z_Crf6TS6jVIXTJlRD83zw1oJ66g,67646
apprise/assets/themes/default/apprise-info-128x128.png,sha256=bBqRZAgQey-gkmJrnFhPbzjILSrljE59mRkgj3raMQo,16671
apprise/assets/themes/default/apprise-info-256x256.png,sha256=B5r_O4d9MHCmSWZwfbqQgZSp-ZetTdiBSwKcMTF1aFA,43331
apprise/assets/themes/default/apprise-info-32x32.png,sha256=lt3NZ95TzkiCNVNlurrB2fE2nriMa1wftl7nrNXmb6c,2485
apprise/assets/themes/default/apprise-info-72x72.png,sha256=kDnsZpqNUZGqs9t1ECUup7FOfXUIL-rupnQCYJp9So4,7875
apprise/assets/themes/default/apprise-logo.png,sha256=85ttALudKkLmiqilJT7mUQLUXRFmM1AK89rnwLm313s,160907
apprise/assets/themes/default/apprise-success-128x128.ico,sha256=uCopPwdQjxgfohKazHaDzYs9y4oiaOpL048PYC6WRlg,67646
apprise/assets/themes/default/apprise-success-128x128.png,sha256=nvDuU_QqhGlw6cMtdj7Mv-gPgqCEx-0DaaXn1KBLVYg,17446
apprise/assets/themes/default/apprise-success-256x256.png,sha256=vXfKuxY3n0eeXHKdb9hTxICxOEn7HjAQ4IZpX0HSLzc,48729
apprise/assets/themes/default/apprise-success-32x32.png,sha256=Jg9pFJh3YPI-LiPBebyJ7Z4Vt7BRecaE8AsRjQVIkME,2471
apprise/assets/themes/default/apprise-success-72x72.png,sha256=FQbgvIhqKOhEK0yvrhaSpai0R7hrkTt_-GaC2KUgCCk,7858
apprise/assets/themes/default/apprise-warning-128x128.ico,sha256=6XaQPOx0oWK_xbhr4Yhb7qNazCWwSs9lk2SYR2MHTrQ,67646
apprise/assets/themes/default/apprise-warning-128x128.png,sha256=pf5c4Ph7jWH7gf39dJoieSj8TzAsY3TXI-sGISGVIW4,16784
apprise/assets/themes/default/apprise-warning-256x256.png,sha256=SY-xlaiXaj420iEYKC2_fJxU-yj2SuaQg6xfPNi83bw,43708
apprise/assets/themes/default/apprise-warning-32x32.png,sha256=97R2ywNvcwczhBoWEIgajVtWjgT8fLs4FCCz4wu0dwc,2472
apprise/assets/themes/default/apprise-warning-72x72.png,sha256=L8moEInkO_OLxoOcuvN7rmrGZo64iJeH20o-24MQghE,7913
apprise/attachment/__init__.py,sha256=9jSiGEbLllS-0Vbpgxo4MCpZfIJ-saezWWgQ1PofZ9I,1678
apprise/attachment/base.py,sha256=phcM6C281j2eoEhtoH5FY0m5s_JvWiEm1AK9z9gyi0w,13692
apprise/attachment/base.pyi,sha256=w0XG_QKauiMLJ7eQ4S57IiLIURZHm_Snw7l6-ih9GP8,961
apprise/attachment/file.py,sha256=d9gpsunNIot-6h6w-WQmwWgFiCv7YLqk42zJr4LLqE4,4752
apprise/attachment/http.py,sha256=C0L9zKmHi60wyzEZN-OJCF7LVoY-MMHYMqhXspFlLdU,13748
apprise/cli.py,sha256=h-pWSQPqQficH6J-OEp3MTGydWyt6vMYnDZvHCeAt4Y,20697
apprise/common.py,sha256=I6wfrndggCL7l7KAl7Cm4uwAX9n0l3SN4-BVvTE0L0M,5593
apprise/common.pyi,sha256=luF3QRiClDCk8Z23rI6FCGYsVmodOt_JYfYyzGogdNM,447
apprise/config/__init__.py,sha256=oDxdoqG2NEYu_bbpLsLaM3L9WKY3gNn5gjIwb2h3LU4,1679
apprise/config/base.py,sha256=iWgrBk4-wm_SHtNbe7dCQOYnbkI3oKWP_b60qwjGSoU,53173
apprise/config/base.pyi,sha256=cngfobwH6v2vxYbQrObDi5Z-t5wcquWF-wR0kBCr3Eg,54
apprise/config/file.py,sha256=MB_H2X5lJZS-XAOahkMb3IsD2rgVebFjiEF76goITEg,6125
apprise/config/http.py,sha256=CjQtv_OQJykMxD4ssiwbFI3P8CeQiPdYV_ZIiL_XqMw,9440
apprise/config/memory.py,sha256=8VICU-WLux8KnW6i9sf9fgmns90J-MfVYI3pvTiyTno,2816
apprise/conversion.py,sha256=fSn-pTE6-vNt9qVQCKib_NTMhZnCH88FoMt14x6co1M,6273
apprise/decorators/__init__.py,sha256=e_PDAm0kQNzwDPx-NJZLPfLMd2VAABvNZtxx_iDviRM,1487
apprise/decorators/base.py,sha256=KnRzhrTOxQxwm4KuJxfCfaYfX0MrFbqWTvXY1XuiNck,8019
apprise/decorators/notify.py,sha256=FzIa7m-G5KnVVa__rjyn990zt2lqE8sdHW-XY79lbAU,5097
apprise/emojis.py,sha256=ONF0t8dY9f2XlEkLUG79-ybKVAj2GqbPj2-Be97vAoI,87738
apprise/i18n/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
apprise/i18n/en/LC_MESSAGES/apprise.mo,sha256=w-KW6RXYYMr14raaIvJzbop8tXU4qrsz50zm8rcCo3U,3959
apprise/locale.py,sha256=4uSr4Nj_rz6ISMMAfRVRk58wZVLKOofJgk2x0_E8NkQ,8994
apprise/logger.py,sha256=131hqhed8cUj9x_mfXDEvwA2YbcYDFAYiWVK1HgxRVY,6921
apprise/manager.py,sha256=_LiMG1Upk6h6GcxOw3GjsPtVT8ZJLhLlQkC_xL_dm6A,27218
apprise/manager_attachment.py,sha256=EkrcKtKjbxTXXyDaKyiu4XSfDu9wKFSdJD7TOTpyOUc,2200
apprise/manager_config.py,sha256=sCIOlBTH13bQ1cuhQVpUq2vyKWBArA8YRyPnXIB1iWQ,2205
apprise/manager_plugins.py,sha256=Xbg5-xr-06zMIDoWviz-zKcbzusHj0iBBMchKPpUOkg,2211
apprise/plugins/__init__.py,sha256=Hm-vt-Xtxir5mgOdehqlGLhIlc45LA31zjqV42uRnB8,18701
apprise/plugins/apprise_api.py,sha256=D93eUOlEQ1xPZYdagnEtIxkSuzZ4b9XreuhntQW97F8,16638
apprise/plugins/aprs.py,sha256=fyzhdsESVwsqHMbfjnlRuGuAqAz2Pk_-MrmiMihs8qY,25506
apprise/plugins/bark.py,sha256=oSz7Nr7vxnXxqA5dRaO6ze2IljkgEQavUPs-MUUDSX4,15681
apprise/plugins/base.py,sha256=720L5OyMMLqlM3UdYSNMpA3m0rCudzGP3HwKgu73Ons,30350
apprise/plugins/base.pyi,sha256=aKlZXRYUgG8lz_ZgGkYYJ_GKhuf18youTmMU-FlG7z8,21
apprise/plugins/boxcar.py,sha256=8ImhsSsOK9o3eiYp4dZ6fO6p6AeI-jOPWoFJ8qvRAxY,12850
apprise/plugins/bulksms.py,sha256=XuP8X4dL1wWQU7TkLYWPWRAro7TymnF7PlF2ESe7o0o,15988
apprise/plugins/bulkvs.py,sha256=sLpiKbHs63Yu0UjMc9erW1VSgLceuu5wvPie5iyl03k,13273
apprise/plugins/burstsms.py,sha256=7YmuhElVvT-0FIxMFBILHjo6Fir0J4qHTuqj8KfWBaI,15533
apprise/plugins/chantify.py,sha256=hOvrmhH051Us28_kv0mKkuaJ2BN_8pSsslF8eMCgp-Q,6660
apprise/plugins/clicksend.py,sha256=kKUJgk9FcTcfXqcIV57uMz0VxBtSQqkpxocRkgn0-3Q,11408
apprise/plugins/custom_form.py,sha256=fMYwSQyEa_u8IEw5QSylDn-y32FnmymkL5ng-tGxDoc,17888
apprise/plugins/custom_json.py,sha256=UCXaegE1nD8UrKlFrSKQbxfbcrX1BHUvZwBZY6a_aJc,13834
apprise/plugins/custom_xml.py,sha256=lrPCRngPz8_oV2A8ZfiIY56BRQc1iv0PN0--2LOlxpA,16956
apprise/plugins/d7networks.py,sha256=2o_wDgoak_S0sUJJa7HPtu0PPKLVmIOrq1rV9llOnHY,15030
apprise/plugins/dapnet.py,sha256=fclGE69ggMejgpyvBpJqTwFNF3g2w7qpFySOMcc9vi0,13607
apprise/plugins/dbus.py,sha256=lvHLmOkJYJAr4TjrigdIgP5bBlQXHrNCDR0k80LNsks,14366
apprise/plugins/dingtalk.py,sha256=1twAGYUZzjhQepg2zhaR7u8QJuWvM5WymkbPQSUKBck,11992
apprise/plugins/discord.py,sha256=kdR09bKU80-AosBIrTkMSxoOkAUHMXKwSr1P3H-M_f4,26053
apprise/plugins/email.py,sha256=pVVWhEpT9Zi7qyUvpI2UxbjxkXYe6FoJj8E0NTw4P98,39912
apprise/plugins/emby.py,sha256=HWYxlgHE99yAPKii4IE1XQQ-B1HViklWOkefjmq6SW4,24022
apprise/plugins/enigma2.py,sha256=40Uo0m1JtLUcwRnfqKqdX_8ZR1-SvPfJ5470uijgdfw,11481
apprise/plugins/fcm/__init__.py,sha256=eTjX-ahPHrPddX0v_Ix77qEr2G4NQ7reClCMzX3Nxwk,21657
apprise/plugins/fcm/color.py,sha256=rQxVRL_CcRlgnNTQXkjB1Bfs0Xc933zOB1tURSdhi7Y,4585
apprise/plugins/fcm/common.py,sha256=978uBUoNdtopCtylipGiKQdsQ8FTONxkFBp7uJMZHc8,1718
apprise/plugins/fcm/oauth.py,sha256=Vvbd0-rd5BPIjAneG3rILU153JIzfSZ0kaDov6hm96M,11197
apprise/plugins/fcm/priority.py,sha256=0WuRW1y1HVnybgjlTeCZPHzt7j8SwWnC7faNcjioAOc,8163
apprise/plugins/feishu.py,sha256=buGBg1YlcwHjwUGzUfju4cdYbmEOFl3EHU_NzEBqtlM,7253
apprise/plugins/flock.py,sha256=_bhH-ub0LbuU7k2p1ZwUPZ-TbC3kpD48GKNtLebUpoM,12735
apprise/plugins/freemobile.py,sha256=NZf553UWkl1FVEVyWQKJN3ZD6opYSv3I-L6DRaKbiCw,6679
apprise/plugins/gnome.py,sha256=UYtaiMKxILhTdsxe4aeLaJwjV6Af-8VhjVR3W3CyPPk,9046
apprise/plugins/google_chat.py,sha256=f7F4gPxwwkmhDBlXMHzYoHRhPX3w8tyD7OimGBjmNxg,12609
apprise/plugins/gotify.py,sha256=ISzmuQ4-Wd46OlaxGSAZBbWDTq9mHBUYO0R-7tAX_zc,10538
apprise/plugins/growl.py,sha256=mlpN1QXGlEf2BA3BORnvkyT0oiTsWBev2y5gzpOm9r0,14006
apprise/plugins/guilded.py,sha256=lhE6gK7laQNYEubD9lBGRemFK-IHis_u2tNekbUoGgM,3707
apprise/plugins/home_assistant.py,sha256=Wstut0QaQL2dE66kH8MOqMANayhvGOq7CuxVz9O-T60,10722
apprise/plugins/httpsms.py,sha256=2TtIlAFa4cjXwpMyrjfieCFHgaZl4H_YT6IoPIMDOcg,11123
apprise/plugins/ifttt.py,sha256=ZHtu7pW9I0aHVEC4DshKi6XZCwqQ0A_XGLyFJujwdKY,13412
apprise/plugins/join.py,sha256=mRop7thH24kQmvIEvtnh0HT0VyBrUXm2sS-P69c0iFE,13568
apprise/plugins/kavenegar.py,sha256=1vdms7QBaLcTiLXeQGfprMU5rw9wgImRLtALIb78-ro,12607
apprise/plugins/kumulos.py,sha256=6M_way1Qi5bELm8Csay86AVtVhzmRyv5hfxGrFvyzN4,8201
apprise/plugins/lametric.py,sha256=JR0XjdxkEphT4VKvKfElNxpAoOpXZCb-40b2SJQP9XA,37521
apprise/plugins/line.py,sha256=-xONdu4LFkS3sGgZeEGiPGbBIvBEd20lCbyxKLhQwAg,10659
apprise/plugins/lunasea.py,sha256=WxJ-RIbFDiS1-5HjCs8XVdNv7nt2EHimsXGCDaK0sC0,14442
apprise/plugins/macosx.py,sha256=4vIXz1xlsq_xlEyeu_rEvzJQZYcWq7pVmSn5VjF_dCY,8258
apprise/plugins/mailgun.py,sha256=ad3jzdrbdgwWmOAAu4e_inLEAo-cii4z0OnIJQXoSIA,25396
apprise/plugins/mastodon.py,sha256=X8CBxnuWORLo9JEOLCJcSafFNVrcEd778R38doyNWUo,35254
apprise/plugins/matrix.py,sha256=zJPTLFqRT6mofXFVi421_poF0Qm7KaWSgNXTBKq3YoI,50032
apprise/plugins/mattermost.py,sha256=KfHfqt3LO4XuMsY-qNV-i_OAAamF-35RgjHzxuq2deM,12709
apprise/plugins/messagebird.py,sha256=3TJ_31Vc1liwQKKKwEiO_rP5e4jP4QkcU_wHyRGtf5Q,12235
apprise/plugins/misskey.py,sha256=E5UrDrVryb7zV2D_qJCPsCyvpynF4-22JqRVco6PcgM,9587
apprise/plugins/mqtt.py,sha256=3LcRhT44o2QoSH5rJs23xRbi2vob-po5FAPnnEU_cgs,19528
apprise/plugins/msg91.py,sha256=V3PwdCS5r-LbVHNNTFZGUHt7GPwQOHnQC0mx8G90wGQ,12664
apprise/plugins/msteams.py,sha256=4maXBIQFEVfH-IVzZW6t4jirsozmKwF4ySPP5h20cTQ,22964
apprise/plugins/nextcloud.py,sha256=iYmKGH-xZ4Kj3HvXA_krQody7LRqJKzMRu39Ivk1ve4,12742
apprise/plugins/nextcloudtalk.py,sha256=TTK8qhy0VPjG0N1yFUBJWTieV-1DqT9Jux9D5PRiYAE,10994
apprise/plugins/notica.py,sha256=MzryA8x-dSt-oRk9g3dlTTrb1ul7mnbRNajbiwTx1Mc,12973
apprise/plugins/notifiarr.py,sha256=ZI2mjXwKLWx7SXb6d3S-sk2JmCswJ23UTPj9jVNSN0U,15844
apprise/plugins/notifico.py,sha256=IKkiXU8HdbRnEWzkQKPFo1g-ZnT8AIwFYer7jF2Yjac,12022
apprise/plugins/ntfy.py,sha256=jOmPZETJByyNmYSzr-2F3k5jAXFVNldcd3wK-tQRpyE,27956
apprise/plugins/office365.py,sha256=bCg53GDruS7A3_PQNCjiSERhfub_FHTOVCsRwjgbjXU,25173
apprise/plugins/one_signal.py,sha256=0ljKuz6Wyn5K8Rxp3BT8aARzHWYff0q2TWA5f-ZLJSA,18140
apprise/plugins/opsgenie.py,sha256=wWUREzEn8FDQmmVGhmTlN7kxsYlzNj1tK3wA5t8UbCA,20502
apprise/plugins/pagerduty.py,sha256=1vQ2rfbDUKnM0XdkVMrvTnWIPK7lTxrm-Nslt3LW5Ng,17857
apprise/plugins/pagertree.py,sha256=uhZL2SxIJr0cguMGhJP_RIJxJZLd86uoAcMhHsBOKm8,13836
apprise/plugins/parseplatform.py,sha256=G99l6AnHZtaw11y7oBBVVvgdg7lSM8gWFm4tAWhJ8d4,10278
apprise/plugins/popcorn_notify.py,sha256=ppOqxPrZrOPa-TFicO3Lo_jgwOOPCNEXMgmEo10DAZA,10574
apprise/plugins/prowl.py,sha256=fYsv6s8xA6OC0yFajgLf3jgL6IwiaOTZaJKisW4eNyw,9769
apprise/plugins/pushbullet.py,sha256=g-7_Y0N4x-a8YE2gqDqW5OIi74YY7rja_jQ8WVKc4FI,15353
apprise/plugins/pushdeer.py,sha256=8StOcyK1jlx3pc_CnmFUSqdjfvuv0qa6bf--FHP2_KE,6909
apprise/plugins/pushed.py,sha256=pm3T7JGExjYeqVWQVN8J8JHkn1XBMfix_sdmr1ItXY8,12253
apprise/plugins/pushjet.py,sha256=Xk0hzx6l5bNHtGgL0M_znRY5JRPUJf4_PhleCyFbe0I,8935
apprise/plugins/pushme.py,sha256=EswSmup0uL3QmANeJPDhDYyyeBwSrTnqdjMlfvWFnFA,7121
apprise/plugins/pushover.py,sha256=I6u9C1SVAEVnsLUySFq5UyHi4cQQtew5za4r86aTK10,21194
apprise/plugins/pushsafer.py,sha256=aGQ1ibggAWGpcBwpD4oQQYMUcKVcV_xsTlc5_wdjssY,26743
apprise/plugins/pushy.py,sha256=Ai1tKhcus5IuwvhQgtaj--RMPahgtpleWrBbr_ZQJfM,12483
apprise/plugins/reddit.py,sha256=z54HpGeJxkyS_LH38nqPa6rqW8mrJqSEGTNOh4Cf-78,25768
apprise/plugins/revolt.py,sha256=kVrJvTb7mBFXFZd9GIVrX2jVIvaUc5D5via48nOXNSA,14487
apprise/plugins/rocketchat.py,sha256=oSaFzQ7XjOzjhPIPhdS7r_LGa1IJXV6VK_3xNH9Gq9M,25721
apprise/plugins/rsyslog.py,sha256=9NTg4sYNbbAzw_MnN51YKxVQpb2o6WZUMyKpRtgoupM,11969
apprise/plugins/ryver.py,sha256=OM_AG-oiRnNYIua-70Wp8lUpZzIkZ7erIiDE6Fd4Q6s,11810
apprise/plugins/sendgrid.py,sha256=PGSdbkhERhFSZZN2j7km6mdojdlo7sFxs28lmOeDpgQ,16200
apprise/plugins/serverchan.py,sha256=fcnuindQTPaKZ5gbS-nAxvL31YqkEF-vi4w8g_h7dKc,5766
apprise/plugins/ses.py,sha256=CF17VZOEZybwdgqqu00qSoombTP5z0M8P_XxPmyc2f4,33528
apprise/plugins/signal_api.py,sha256=PeCB_1YJc4lZwDdArTgzHP-Vhe9iwCNIYe4WVW_HgUo,16716
apprise/plugins/simplepush.py,sha256=bL0WiRUCp39ST9X_0FNAFJJ1BFtd1t5OD_JTRneUGFY,10859
apprise/plugins/sinch.py,sha256=0-z_cNIWMJu4kdTca-6B3raAIRV-PG1E7fUtbxUDECo,16796
apprise/plugins/slack.py,sha256=tLbJsr97Ddp8bq1ozSEp1ssLsh913uC0Y24Xm3TN4Bo,42508
apprise/plugins/smseagle.py,sha256=WbULwfwnUEkPw_z-2cVp2TzrupS7fkPfcQgq779nG8k,24144
apprise/plugins/smsmanager.py,sha256=aSSZcvpWjKEdDg-XPyD-9fTkaQ0FodvuuO7Hqg7N6Tk,14112
apprise/plugins/smtp2go.py,sha256=D3C4rWGCJ-oqaZH8JgoMEV_3BYHCCHMd6M7cG0piIvA,19698
apprise/plugins/sns.py,sha256=dA58nElGwKKnVAr--rh1deIa9BNPbZElK6cb5G1o3g8,24142
apprise/plugins/sparkpost.py,sha256=ZR4866e1DefqOuuu3z_vBhS8C5YX0sj1G9WEhdWFMEk,27865
apprise/plugins/streamlabs.py,sha256=Pyrz2xY2rDo8rnTgu4L5t2u1EPrZWVcIP37k8pE2SaE,16010
apprise/plugins/synology.py,sha256=-g-Cesx8g-nG10shjUAnYtyLpMoGfUNDcTIGfi2UXDE,11088
apprise/plugins/syslog.py,sha256=sNKh0iSNc3ARuMIO13uwRirMHzW2VxxTRwyZ-0UYL60,10604
apprise/plugins/techuluspush.py,sha256=HV1m72pRsC3IfVN66zWK9joslDJsKRKYD6_uRfqjnHk,7240
apprise/plugins/telegram.py,sha256=zsmCUJU-5INyJ-RDUYIHUEXpwnwShOISWc4Xf7Epanw,37168
apprise/plugins/threema.py,sha256=aWvFfN5Ve0DZCDX7qJVlY8INT_C-AWh-jnYnPTd7Ufs,11868
apprise/plugins/twilio.py,sha256=0iYa2ug_2_Rbz4N_lGVihtSSxxFaK2f7Sdr9oK_Wg18,15959
apprise/plugins/twist.py,sha256=hLqabH_STcZiAwRCgFHO7n5qYx7eZgoDw4xT5Zl_y6Q,28824
apprise/plugins/twitter.py,sha256=ZTHLuZYowQ6qSw9ujsRB5oNp9F9PyutU-iAKAUOkmT8,30129
apprise/plugins/voipms.py,sha256=NVbrsY7fJG0MbF6eId--0wo9cRC2kehhg8L0sASQs2w,12539
apprise/plugins/vonage.py,sha256=PRFMdjn0ARqOEhL8kXySz8pi9vsApl2fh9mZyLVySgo,13414
apprise/plugins/webexteams.py,sha256=DErDmHhvnHfsAyp4L3mF6vSfq0WabL1lbbl-jDUKYTw,9151
apprise/plugins/wecombot.py,sha256=o5CO0IyHN7wAXhf7es08QiPCmUl8shZCgN_nyJxycVA,8776
apprise/plugins/whatsapp.py,sha256=9KObQEvUOtOclnudKhNj7qRrJ0uii7dhfxgwzuMHKxY,19911
apprise/plugins/windows.py,sha256=88bDJQBnuuA0u7_xoTC-1Ppxt4tz39UMZseRY3EX_FE,8550
apprise/plugins/xbmc.py,sha256=2ssX2AItDUy5FJFDY9r_JI4u7qc0CLGvG-hW0KtgWag,12079
apprise/plugins/zulip.py,sha256=PJMB8RmV_ddP5waNAQ0Z29cpIut1WFY31DLFeg8-Nao,13955
apprise/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
apprise/url.py,sha256=QEoqmWzapzXPwBXe85SdJaPWq7B4gcv4QCeJtndN4_E,29455
apprise/url.pyi,sha256=WLaRREH7FzZ5x3-qkDkupojWGFC4uFwJ1EDt02lVs8c,520
apprise/utils.py,sha256=Sy0pVslC8FDKh5RY8o6eVB-sPHFxBXFTdbhKSVf4UDM,53461

@ -33,18 +33,18 @@ from itertools import chain
from . import common
from .conversion import convert_between
from .utils import is_exclusive_match
from .NotificationManager import NotificationManager
from .manager_plugins import NotificationManager
from .utils import parse_list
from .utils import parse_urls
from .utils import cwe312_url
from .emojis import apply_emojis
from .logger import logger
from .AppriseAsset import AppriseAsset
from .AppriseConfig import AppriseConfig
from .AppriseAttachment import AppriseAttachment
from .AppriseLocale import AppriseLocale
from .config.ConfigBase import ConfigBase
from .plugins.NotifyBase import NotifyBase
from .asset import AppriseAsset
from .apprise_config import AppriseConfig
from .apprise_attachment import AppriseAttachment
from .locale import AppriseLocale
from .config.base import ConfigBase
from .plugins.base import NotifyBase
from . import plugins
from . import __version__

@ -27,7 +27,7 @@
# POSSIBILITY OF SUCH DAMAGE.
__title__ = 'Apprise'
__version__ = '1.7.6'
__version__ = '1.8.0'
__author__ = 'Chris Caron'
__license__ = 'BSD'
__copywrite__ = 'Copyright (C) 2024 Chris Caron <lead2gold@gmail.com>'
@ -49,16 +49,17 @@ from .common import CONTENT_INCLUDE_MODES
from .common import ContentLocation
from .common import CONTENT_LOCATIONS
from .URLBase import URLBase
from .URLBase import PrivacyMode
from .plugins.NotifyBase import NotifyBase
from .config.ConfigBase import ConfigBase
from .attachment.AttachBase import AttachBase
from .url import URLBase
from .url import PrivacyMode
from .plugins.base import NotifyBase
from .config.base import ConfigBase
from .attachment.base import AttachBase
from .Apprise import Apprise
from .AppriseAsset import AppriseAsset
from .AppriseConfig import AppriseConfig
from .AppriseAttachment import AppriseAttachment
from .apprise import Apprise
from .locale import AppriseLocale
from .asset import AppriseAsset
from .apprise_config import AppriseConfig
from .apprise_attachment import AppriseAttachment
from . import decorators
@ -73,7 +74,7 @@ logging.getLogger(__name__).addHandler(logging.NullHandler())
__all__ = [
# Core
'Apprise', 'AppriseAsset', 'AppriseConfig', 'AppriseAttachment', 'URLBase',
'NotifyBase', 'ConfigBase', 'AttachBase',
'NotifyBase', 'ConfigBase', 'AttachBase', 'AppriseLocale',
# Reference
'NotifyType', 'NotifyImageSize', 'NotifyFormat', 'OverflowMode',

@ -27,9 +27,9 @@
# POSSIBILITY OF SUCH DAMAGE.
from . import URLBase
from .attachment.AttachBase import AttachBase
from .AppriseAsset import AppriseAsset
from .AttachmentManager import AttachmentManager
from .attachment.base import AttachBase
from .asset import AppriseAsset
from .manager_attachment import AttachmentManager
from .logger import logger
from .common import ContentLocation
from .common import CONTENT_LOCATIONS

@ -28,9 +28,9 @@
from . import ConfigBase
from . import CONFIG_FORMATS
from .ConfigurationManager import ConfigurationManager
from .manager_config import ConfigurationManager
from . import URLBase
from .AppriseAsset import AppriseAsset
from .asset import AppriseAsset
from . import common
from .utils import GET_SCHEMA_RE
from .utils import parse_list

@ -33,7 +33,7 @@ from os.path import dirname
from os.path import isfile
from os.path import abspath
from .common import NotifyType
from .NotificationManager import NotificationManager
from .manager_plugins import NotificationManager
# Grant access to our Notification Manager Singleton

@ -27,8 +27,8 @@
# POSSIBILITY OF SUCH DAMAGE.
# Used for testing
from .AttachBase import AttachBase
from ..AttachmentManager import AttachmentManager
from .base import AttachBase
from ..manager_attachment import AttachmentManager
# Initalize our Attachment Manager Singleton
A_MGR = AttachmentManager()
@ -36,4 +36,5 @@ A_MGR = AttachmentManager()
__all__ = [
# Reference
'AttachBase',
'AttachmentManager',
]

@ -29,10 +29,10 @@
import os
import time
import mimetypes
from ..URLBase import URLBase
from ..url import URLBase
from ..utils import parse_bool
from ..common import ContentLocation
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class AttachBase(URLBase):
@ -315,7 +315,7 @@ class AttachBase(URLBase):
"download() is implimented by the child class.")
@staticmethod
def parse_url(url, verify_host=True, mimetype_db=None):
def parse_url(url, verify_host=True, mimetype_db=None, sanitize=True):
"""Parses the URL and returns it broken apart into a dictionary.
This is very specific and customized for Apprise.
@ -333,7 +333,8 @@ class AttachBase(URLBase):
successful, otherwise None is returned.
"""
results = URLBase.parse_url(url, verify_host=verify_host)
results = URLBase.parse_url(
url, verify_host=verify_host, sanitize=sanitize)
if not results:
# We're done; we failed to parse our url

@ -28,9 +28,9 @@
import re
import os
from .AttachBase import AttachBase
from .base import AttachBase
from ..common import ContentLocation
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class AttachFile(AttachBase):

@ -31,10 +31,10 @@ import os
import requests
import threading
from tempfile import NamedTemporaryFile
from .AttachBase import AttachBase
from .base import AttachBase
from ..common import ContentLocation
from ..URLBase import PrivacyMode
from ..AppriseLocale import gettext_lazy as _
from ..url import PrivacyMode
from ..locale import gettext_lazy as _
class AttachHTTP(AttachBase):
@ -296,8 +296,7 @@ class AttachHTTP(AttachBase):
"""
Tidy memory if open
"""
with self._lock:
self.invalidate()
self.invalidate()
def url(self, privacy=False, *args, **kwargs):
"""
@ -363,8 +362,7 @@ class AttachHTTP(AttachBase):
us to re-instantiate this object.
"""
results = AttachBase.parse_url(url)
results = AttachBase.parse_url(url, sanitize=False)
if not results:
# We're done early as we couldn't load the results
return results

@ -27,8 +27,8 @@
# POSSIBILITY OF SUCH DAMAGE.
# Used for testing
from .ConfigBase import ConfigBase
from ..ConfigurationManager import ConfigurationManager
from .base import ConfigBase
from ..manager_config import ConfigurationManager
# Initalize our Config Manager Singleton
C_MGR = ConfigurationManager()
@ -36,4 +36,5 @@ C_MGR = ConfigurationManager()
__all__ = [
# Reference
'ConfigBase',
'ConfigurationManager',
]

@ -33,15 +33,15 @@ import time
from .. import plugins
from .. import common
from ..AppriseAsset import AppriseAsset
from ..URLBase import URLBase
from ..ConfigurationManager import ConfigurationManager
from ..asset import AppriseAsset
from ..url import URLBase
from ..utils import GET_SCHEMA_RE
from ..utils import parse_list
from ..utils import parse_bool
from ..utils import parse_urls
from ..utils import cwe312_url
from ..NotificationManager import NotificationManager
from ..manager_config import ConfigurationManager
from ..manager_plugins import NotificationManager
# Test whether token is valid or not
VALID_TOKEN = re.compile(

@ -28,10 +28,10 @@
import re
import os
from .ConfigBase import ConfigBase
from .base import ConfigBase
from ..common import ConfigFormat
from ..common import ContentIncludeMode
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class ConfigFile(ConfigBase):

@ -28,11 +28,11 @@
import re
import requests
from .ConfigBase import ConfigBase
from .base import ConfigBase
from ..common import ConfigFormat
from ..common import ContentIncludeMode
from ..URLBase import PrivacyMode
from ..AppriseLocale import gettext_lazy as _
from ..url import PrivacyMode
from ..locale import gettext_lazy as _
# Support YAML formats
# text/yaml

@ -26,8 +26,8 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
from .ConfigBase import ConfigBase
from ..AppriseLocale import gettext_lazy as _
from .base import ConfigBase
from ..locale import gettext_lazy as _
class ConfigMemory(ConfigBase):

@ -29,7 +29,7 @@
import re
from markdown import markdown
from .common import NotifyFormat
from .URLBase import URLBase
from .url import URLBase
from html.parser import HTMLParser

@ -27,8 +27,8 @@
# POSSIBILITY OF SUCH DAMAGE.USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
from ..plugins.NotifyBase import NotifyBase
from ..NotificationManager import NotificationManager
from ..plugins.base import NotifyBase
from ..manager_plugins import NotificationManager
from ..utils import URL_DETAILS_RE
from ..utils import parse_url
from ..utils import url_assembly
@ -55,6 +55,9 @@ class CustomNotifyPlugin(NotifyBase):
# should be treated differently.
category = 'custom'
# Support Attachments
attachment_support = True
# Define object templates
templates = (
'{schema}://',

@ -26,7 +26,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
from .CustomNotifyPlugin import CustomNotifyPlugin
from .base import CustomNotifyPlugin
def notify(on, name=None):

@ -61,6 +61,9 @@ class PluginManager(metaclass=Singleton):
# The module path to scan
module_path = join(abspath(dirname(__file__)), _id)
# For filtering our result when scanning a module
module_filter_re = re.compile(r'^(?P<name>((?!_)[A-Za-z0-9]+))$')
# thread safe loading
_lock = threading.Lock()
@ -177,7 +180,7 @@ class PluginManager(metaclass=Singleton):
# The .py extension is optional as we support loading directories
# too
module_re = re.compile(
r'^(?P<name>' + self.fname_prefix + r'[a-z0-9]+)(\.py)?$',
r'^(?P<name>(?!base|_)[a-z0-9_]+)(\.py)?$',
re.I)
t_start = time.time()
@ -188,10 +191,6 @@ class PluginManager(metaclass=Singleton):
# keep going
continue
elif match.group('name') == f'{self.fname_prefix}Base':
# keep going
continue
# Store our notification/plugin name:
module_name = match.group('name')
module_pyname = '{}.{}'.format(module_name_prefix, module_name)
@ -216,7 +215,47 @@ class PluginManager(metaclass=Singleton):
# logging found in import_module and not needed here
continue
if not hasattr(module, module_name):
module_class = None
for m_class in [obj for obj in dir(module)
if self.module_filter_re.match(obj)]:
# Get our plugin
plugin = getattr(module, m_class)
if not hasattr(plugin, 'app_id'):
# Filter out non-notification modules
logger.trace(
"(%s) import failed; no app_id defined in %s",
self.name, m_class, os.path.join(module_path, f))
continue
# Add our plugin name to our module map
self._module_map[module_name] = {
'plugin': set([plugin]),
'module': module,
'path': '{}.{}'.format(
module_name_prefix, module_name),
'native': True,
}
fn = getattr(plugin, 'schemas', None)
schemas = set([]) if not callable(fn) else fn(plugin)
# map our schema to our plugin
for schema in schemas:
if schema in self._schema_map:
logger.error(
"{} schema ({}) mismatch detected - {} to {}"
.format(self.name, schema, self._schema_map,
plugin))
continue
# Assign plugin
self._schema_map[schema] = plugin
# Store our class
module_class = m_class
break
if not module_class:
# Not a library we can load as it doesn't follow the simple
# rule that the class must bear the same name as the
# notification file itself.
@ -226,38 +265,6 @@ class PluginManager(metaclass=Singleton):
self.name, module_name, os.path.join(module_path, f))
continue
# Get our plugin
plugin = getattr(module, module_name)
if not hasattr(plugin, 'app_id'):
# Filter out non-notification modules
logger.trace(
"(%s) import failed; no app_id defined in %s",
self.name, module_name, os.path.join(module_path, f))
continue
# Add our plugin name to our module map
self._module_map[module_name] = {
'plugin': set([plugin]),
'module': module,
'path': '{}.{}'.format(module_name_prefix, module_name),
'native': True,
}
fn = getattr(plugin, 'schemas', None)
schemas = set([]) if not callable(fn) else fn(plugin)
# map our schema to our plugin
for schema in schemas:
if schema in self._schema_map:
logger.error(
"{} schema ({}) mismatch detected - {} to {}"
.format(self.name, schema, self._schema_map,
plugin))
continue
# Assign plugin
self._schema_map[schema] = plugin
logger.trace(
'{} {} loaded in {:.6f}s'.format(
self.name, module_name, (time.time() - tl_start)))

@ -26,6 +26,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
import re
from os.path import dirname
from os.path import abspath
from os.path import join
@ -52,3 +53,7 @@ class AttachmentManager(PluginManager):
# The module path to scan
module_path = join(abspath(dirname(__file__)), _id)
# For filtering our result set
module_filter_re = re.compile(
r'^(?P<name>' + fname_prefix + r'(?!Base)[A-Za-z0-9]+)$')

@ -26,6 +26,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
import re
from os.path import dirname
from os.path import abspath
from os.path import join
@ -52,3 +53,7 @@ class ConfigurationManager(PluginManager):
# The module path to scan
module_path = join(abspath(dirname(__file__)), _id)
# For filtering our result set
module_filter_re = re.compile(
r'^(?P<name>' + fname_prefix + r'(?!Base)[A-Za-z0-9]+)$')

@ -26,6 +26,7 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
import re
from os.path import dirname
from os.path import abspath
from os.path import join
@ -52,3 +53,8 @@ class NotificationManager(PluginManager):
# The module path to scan
module_path = join(abspath(dirname(__file__)), _id)
# For filtering our result set
module_filter_re = re.compile(
r'^(?P<name>' + fname_prefix +
r'(?!Base|ImageSize|Type)[A-Za-z0-9]+)$')

@ -30,7 +30,7 @@ import os
import copy
# Used for testing
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NOTIFY_IMAGE_SIZES
@ -40,9 +40,9 @@ from ..utils import parse_list
from ..utils import cwe312_url
from ..utils import GET_SCHEMA_RE
from ..logger import logger
from ..AppriseLocale import gettext_lazy as _
from ..AppriseLocale import LazyTranslation
from ..NotificationManager import NotificationManager
from ..locale import gettext_lazy as _
from ..locale import LazyTranslation
from ..manager_plugins import NotificationManager
# Grant access to our Notification Manager Singleton

@ -31,12 +31,12 @@ import requests
from json import dumps
import base64
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import parse_list
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class AppriseAPIMethod:
@ -123,7 +123,7 @@ class NotifyAppriseAPI(NotifyBase):
'type': 'string',
'required': True,
'private': True,
'regex': (r'^[A-Z0-9_-]{1,32}$', 'i'),
'regex': (r'^[A-Z0-9_-]{1,128}$', 'i'),
},
})

@ -70,9 +70,9 @@
import socket
import sys
from itertools import chain
from .NotifyBase import NotifyBase
from ..AppriseLocale import gettext_lazy as _
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..locale import gettext_lazy as _
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import is_call_sign
from ..utils import parse_call_sign

@ -32,13 +32,13 @@
import requests
import json
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_list
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Sounds generated off of: https://github.com/Finb/Bark/tree/master/Sounds

@ -30,7 +30,7 @@ import asyncio
import re
from functools import partial
from ..URLBase import URLBase
from ..url import URLBase
from ..common import NotifyType
from ..utils import parse_bool
from ..common import NOTIFY_TYPES
@ -38,8 +38,8 @@ from ..common import NotifyFormat
from ..common import NOTIFY_FORMATS
from ..common import OverflowMode
from ..common import OVERFLOW_MODES
from ..AppriseLocale import gettext_lazy as _
from ..AppriseAttachment import AppriseAttachment
from ..locale import gettext_lazy as _
from ..apprise_attachment import AppriseAttachment
class NotifyBase(URLBase):

@ -35,14 +35,14 @@ from hashlib import sha1
from itertools import chain
from urllib.parse import urlparse
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..utils import parse_bool
from ..utils import parse_list
from ..utils import validate_regex
from ..common import NotifyType
from ..common import NotifyImageSize
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Default to sending to all devices if nothing is specified
DEFAULT_TAG = '@all'

@ -36,13 +36,13 @@ import re
import requests
import json
from itertools import chain
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
IS_GROUP_RE = re.compile(

@ -35,13 +35,13 @@
# Messaging/post_messageSend
import requests
import json
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyBulkVS(NotifyBase):

@ -33,14 +33,14 @@
#
import requests
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class BurstSMSCountryCode:

@ -35,10 +35,10 @@
import requests
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyChantify(NotifyBase):

@ -41,15 +41,14 @@
#
import requests
from json import dumps
from base64 import b64encode
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Extend HTTP Error Messages
CLICKSEND_HTTP_ERROR_MAP = {
@ -89,7 +88,7 @@ class NotifyClickSend(NotifyBase):
# Define object templates
templates = (
'{schema}://{user}:{password}@{targets}',
'{schema}://{user}:{apikey}@{targets}',
)
# Define our template tokens
@ -99,11 +98,12 @@ class NotifyClickSend(NotifyBase):
'type': 'string',
'required': True,
},
'password': {
'name': _('Password'),
'apikey': {
'name': _('API Key'),
'type': 'string',
'private': True,
'required': True,
'map_to': 'password',
},
'target_phone': {
'name': _('Target Phone No'),
@ -124,6 +124,9 @@ class NotifyClickSend(NotifyBase):
'to': {
'alias_of': 'targets',
},
'key': {
'alias_of': 'apikey',
},
'batch': {
'name': _('Batch Mode'),
'type': 'bool',
@ -174,9 +177,6 @@ class NotifyClickSend(NotifyBase):
headers = {
'User-Agent': self.app_id,
'Content-Type': 'application/json; charset=utf-8',
'Authorization': 'Basic {}'.format(
b64encode('{}:{}'.format(
self.user, self.password).encode('utf-8'))),
}
# error tracking (used for function return)
@ -208,6 +208,7 @@ class NotifyClickSend(NotifyBase):
r = requests.post(
self.notify_url,
data=dumps(payload),
auth=(self.user, self.password),
headers=headers,
verify=self.verify_certificate,
timeout=self.request_timeout,
@ -322,6 +323,12 @@ class NotifyClickSend(NotifyBase):
results['batch'] = \
parse_bool(results['qsd'].get('batch', False))
# API Key
if 'key' in results['qsd'] and len(results['qsd']['key']):
# Extract the API Key from an argument
results['password'] = \
NotifyClickSend.unquote(results['qsd']['key'])
# Support the 'to' variable so that we can support rooms this way too
# The 'to' makes it easier to use yaml configuration
if 'to' in results['qsd'] and len(results['qsd']['to']):

@ -29,11 +29,11 @@
import re
import requests
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyImageSize
from ..common import NotifyType
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class FORMPayloadField:

@ -30,11 +30,11 @@ import requests
import base64
from json import dumps
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyImageSize
from ..common import NotifyType
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class JSONPayloadField:

@ -30,11 +30,11 @@ import re
import requests
import base64
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyImageSize
from ..common import NotifyType
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class XMLPayloadField:

@ -39,13 +39,13 @@ import requests
from json import dumps
from json import loads
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import validate_regex
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Extend HTTP Error Messages
D7NETWORKS_HTTP_ERROR_MAP = {

@ -51,9 +51,9 @@ from json import dumps
import requests
from requests.auth import HTTPBasicAuth
from .NotifyBase import NotifyBase
from ..AppriseLocale import gettext_lazy as _
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..locale import gettext_lazy as _
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import is_call_sign
from ..utils import parse_call_sign

@ -27,11 +27,11 @@
# POSSIBILITY OF SUCH DAMAGE.
import sys
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Default our global support flag
NOTIFY_DBUS_SUPPORT_ENABLED = False

@ -34,13 +34,13 @@ import base64
import requests
from json import dumps
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyFormat
from ..common import NotifyType
from ..utils import parse_list
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Register at https://dingtalk.com
# - Download their PC based software as it is the only way you can create

@ -50,14 +50,14 @@ from datetime import timedelta
from datetime import datetime
from datetime import timezone
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyFormat
from ..common import NotifyType
from ..utils import parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..attachment.AttachBase import AttachBase
from ..locale import gettext_lazy as _
from ..attachment.base import AttachBase
# Used to detect user/role IDs

@ -41,12 +41,12 @@ from socket import error as SocketError
from datetime import datetime
from datetime import timezone
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyFormat, NotifyType
from ..conversion import convert_between
from ..utils import is_email, parse_emails, is_hostname
from ..AppriseLocale import gettext_lazy as _
from ..utils import is_ipaddr, is_email, parse_emails, is_hostname
from ..locale import gettext_lazy as _
from ..logger import logger
# Globally Default encoding mode set to Quoted Printable.
@ -1053,8 +1053,12 @@ class NotifyEmail(NotifyBase):
# Prepare our target lists
results['targets'] = []
if not is_hostname(results['host'], ipv4=False, ipv6=False,
underscore=False):
if is_ipaddr(results['host']):
# Silently move on and do not disrupt any configuration
pass
elif not is_hostname(results['host'], ipv4=False, ipv6=False,
underscore=False):
if is_email(NotifyEmail.unquote(results['host'])):
# Don't lose defined email addresses

@ -34,12 +34,12 @@ import hashlib
from json import dumps
from json import loads
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..utils import parse_bool
from ..common import NotifyType
from .. import __version__ as VERSION
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyEmby(NotifyBase):

@ -37,10 +37,10 @@
import requests
from json import loads
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class Enigma2MessageType:

@ -50,15 +50,15 @@
# You will need this in order to send an apprise messag
import requests
from json import dumps
from ..NotifyBase import NotifyBase
from ..base import NotifyBase
from ...common import NotifyType
from ...utils import validate_regex
from ...utils import parse_list
from ...utils import parse_bool
from ...utils import dict_full_update
from ...common import NotifyImageSize
from ...AppriseAttachment import AppriseAttachment
from ...AppriseLocale import gettext_lazy as _
from ...apprise_attachment import AppriseAttachment
from ...locale import gettext_lazy as _
from .common import (FCMMode, FCM_MODES)
from .priority import (FCM_PRIORITIES, FCMPriorityManager)
from .color import FCMColorManager

@ -36,7 +36,7 @@
import re
from ...utils import parse_bool
from ...common import NotifyType
from ...AppriseAsset import AppriseAsset
from ...asset import AppriseAsset
class FCMColorManager:

@ -36,10 +36,10 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyFeishu(NotifyBase):

@ -44,14 +44,14 @@ import re
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..common import NotifyFormat
from ..common import NotifyImageSize
from ..utils import parse_list
from ..utils import parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Extend HTTP Error Messages

@ -36,9 +36,9 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyFreeMobile(NotifyBase):
@ -126,6 +126,7 @@ class NotifyFreeMobile(NotifyBase):
# prepare our headers
headers = {
'User-Agent': self.app_id,
'Content-Type': 'application/json',
}
# Prepare our payload

@ -26,11 +26,11 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Default our global support flag
NOTIFY_GNOME_SUPPORT_ENABLED = False

@ -58,11 +58,11 @@ import re
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyFormat
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyGoogleChat(NotifyBase):

@ -34,10 +34,10 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType, NotifyFormat
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Priorities

@ -26,12 +26,12 @@
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Default our global support flag
NOTIFY_GROWL_SUPPORT_ENABLED = False

@ -45,10 +45,11 @@
#
import re
from .NotifyDiscord import NotifyDiscord
# Import namespace so the class won't conflict with the actual Notify object
from . import discord
class NotifyGuilded(NotifyDiscord):
class NotifyGuilded(discord.NotifyDiscord):
"""
A wrapper to Guilded Notifications

@ -34,11 +34,11 @@ from json import dumps
from uuid import uuid4
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyHomeAssistant(NotifyBase):

@ -31,12 +31,12 @@
# https://httpsms.com
import requests
import json
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyHttpSMS(NotifyBase):

@ -44,11 +44,11 @@ import re
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import parse_list
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyIFTTT(NotifyBase):

@ -39,13 +39,13 @@
import re
import requests
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_list
from ..utils import parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Extend HTTP Error Messages
JOIN_HTTP_ERROR_MAP = {

@ -38,12 +38,12 @@
import requests
from json import loads
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Extend HTTP Error Messages
# Based on https://kavenegar.com/rest.html

@ -39,10 +39,10 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Extend HTTP Error Messages
KUMULOS_HTTP_ERROR_MAP = {

@ -90,10 +90,10 @@
import re
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
from ..utils import is_hostname
from ..utils import is_ipaddr

@ -33,14 +33,14 @@ import requests
import re
from json import dumps
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..common import NotifyImageSize
from ..utils import validate_regex
from ..utils import parse_list
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Used to break path apart into list of streams

@ -33,15 +33,15 @@ import re
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..common import NotifyImageSize
from ..utils import parse_list
from ..utils import is_hostname
from ..utils import is_ipaddr
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..URLBase import PrivacyMode
from ..locale import gettext_lazy as _
from ..url import PrivacyMode
class LunaSeaMode:

@ -30,11 +30,11 @@ import platform
import subprocess
import os
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Default our global support flag
NOTIFY_MACOSX_SUPPORT_ENABLED = False

@ -56,7 +56,7 @@
#
import requests
from email.utils import formataddr
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..common import NotifyFormat
from ..utils import parse_emails
@ -64,7 +64,7 @@ from ..utils import parse_bool
from ..utils import is_email
from ..utils import validate_regex
from ..logger import logger
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Provide some known codes Mailgun uses and what they translate to:
# Based on https://documentation.mailgun.com/en/latest/api-intro.html#errors

@ -33,16 +33,16 @@ from json import dumps, loads
from datetime import datetime
from datetime import timezone
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyImageSize
from ..common import NotifyFormat
from ..common import NotifyType
from ..utils import parse_list
from ..utils import parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..attachment.AttachBase import AttachBase
from ..locale import gettext_lazy as _
from ..attachment.base import AttachBase
# Accept:
# - @username

@ -37,8 +37,8 @@ from json import dumps
from json import loads
from time import time
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..common import NotifyImageSize
from ..common import NotifyFormat
@ -46,7 +46,7 @@ from ..utils import parse_bool
from ..utils import parse_list
from ..utils import is_hostname
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Define default path
MATRIX_V1_WEBHOOK_PATH = '/api/v1/matrix/hook'

@ -39,13 +39,13 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyType
from ..utils import parse_bool
from ..utils import parse_list
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Some Reference Locations:
# - https://docs.mattermost.com/developer/webhooks-incoming.html

@ -34,12 +34,12 @@
import requests
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyMessageBird(NotifyBase):

@ -47,10 +47,10 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class MisskeyVisibility:

@ -38,12 +38,12 @@ import re
from time import sleep
from datetime import datetime
from os.path import isfile
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import parse_list
from ..utils import parse_bool
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
# Default our global support flag
NOTIFY_MQTT_SUPPORT_ENABLED = False

@ -38,12 +38,12 @@
import re
import requests
from json import dumps
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import is_phone_no
from ..utils import parse_phone_no, parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class MSG91PayloadField:

@ -81,7 +81,7 @@ import requests
import json
from json.decoder import JSONDecodeError
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyImageSize
from ..common import NotifyType
from ..common import NotifyFormat
@ -89,8 +89,8 @@ from ..utils import parse_bool
from ..utils import validate_regex
from ..utils import apply_template
from ..utils import TemplateType
from ..AppriseAttachment import AppriseAttachment
from ..AppriseLocale import gettext_lazy as _
from ..apprise_attachment import AppriseAttachment
from ..locale import gettext_lazy as _
class NotifyMSTeams(NotifyBase):

@ -28,11 +28,11 @@
import requests
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import parse_list
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyNextcloud(NotifyBase):

@ -29,11 +29,11 @@
import requests
from json import dumps
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import parse_list
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyNextcloudTalk(NotifyBase):

@ -43,11 +43,11 @@
import re
import requests
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyType
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NoticaMode:

@ -31,9 +31,9 @@ import requests
from json import dumps
from itertools import chain
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
from ..common import NotifyImageSize
from ..utils import parse_list, parse_bool
from ..utils import validate_regex

@ -44,11 +44,11 @@
import re
import requests
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyType
from ..utils import parse_bool
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotificoFormat:

@ -41,18 +41,18 @@ from json import loads
from json import dumps
from os.path import basename
from .NotifyBase import NotifyBase
from .base import NotifyBase
from ..common import NotifyFormat
from ..common import NotifyType
from ..common import NotifyImageSize
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
from ..utils import parse_list
from ..utils import parse_bool
from ..utils import is_hostname
from ..utils import is_ipaddr
from ..utils import validate_regex
from ..URLBase import PrivacyMode
from ..attachment.AttachBase import AttachBase
from ..url import PrivacyMode
from ..attachment.base import AttachBase
class NtfyMode:

@ -64,14 +64,14 @@ from datetime import datetime
from datetime import timedelta
from json import loads
from json import dumps
from .NotifyBase import NotifyBase
from ..URLBase import PrivacyMode
from .base import NotifyBase
from ..url import PrivacyMode
from ..common import NotifyFormat
from ..common import NotifyType
from ..utils import is_email
from ..utils import parse_emails
from ..utils import validate_regex
from ..AppriseLocale import gettext_lazy as _
from ..locale import gettext_lazy as _
class NotifyOffice365(NotifyBase):

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save