mirror of
https://github.com/9001/copyparty.git
synced 2025-08-17 09:02:15 -06:00
hook/notify: add android support
This commit is contained in:
parent
aecae552a4
commit
5f54d534e3
|
@ -6,8 +6,8 @@ these programs either take zero arguments, or a filepath (the affected file), or
|
||||||
|
|
||||||
|
|
||||||
# after upload
|
# after upload
|
||||||
* [notify.py](notify.py) shows a desktop notification
|
* [notify.py](notify.py) shows a desktop notification ([example](https://user-images.githubusercontent.com/241032/215335767-9c91ed24-d36e-4b6b-9766-fb95d12d163f.png))
|
||||||
* [discord-announce.py](discord-announce.py) announces new uploads on discord using webhooks
|
* [discord-announce.py](discord-announce.py) announces new uploads on discord using webhooks ([example](https://user-images.githubusercontent.com/241032/215304439-1c1cb3c8-ec6f-4c17-9f27-81f969b1811a.png))
|
||||||
* [reject-mimetype.py](reject-mimetype.py) rejects uploads unless the mimetype is acceptable
|
* [reject-mimetype.py](reject-mimetype.py) rejects uploads unless the mimetype is acceptable
|
||||||
|
|
||||||
|
|
||||||
|
|
30
bin/hooks/notify.py
Normal file → Executable file
30
bin/hooks/notify.py
Normal file → Executable file
|
@ -1,20 +1,24 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
|
|
||||||
|
import os
|
||||||
import sys
|
import sys
|
||||||
|
import subprocess as sp
|
||||||
from plyer import notification
|
from plyer import notification
|
||||||
|
|
||||||
|
|
||||||
_ = r"""
|
_ = r"""
|
||||||
show os notification on upload; works on windows, linux, macos
|
show os notification on upload; works on windows, linux, macos, android
|
||||||
|
|
||||||
depdencies:
|
depdencies:
|
||||||
python3 -m pip install --user -U plyer
|
windows: python3 -m pip install --user -U plyer
|
||||||
|
linux: python3 -m pip install --user -U plyer
|
||||||
|
macos: python3 -m pip install --user -U plyer pyobjus
|
||||||
|
android: just termux and termux-api
|
||||||
|
|
||||||
example usage as global config:
|
example usages; either as global config (all volumes) or as volflag:
|
||||||
--xau f,bin/hooks/notify.py
|
--xau f,bin/hooks/notify.py
|
||||||
|
|
||||||
example usage as a volflag (per-volume config):
|
|
||||||
-v srv/inc:inc:c,xau=f,bin/hooks/notify.py
|
-v srv/inc:inc:c,xau=f,bin/hooks/notify.py
|
||||||
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
parameters explained,
|
parameters explained,
|
||||||
xau = execute after upload
|
xau = execute after upload
|
||||||
|
@ -23,7 +27,21 @@ parameters explained,
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
notification.notify(title="new file uploaded", message=sys.argv[1], timeout=10)
|
dp, fn = os.path.split(sys.argv[1])
|
||||||
|
msg = "🏷️ {}\n📁 {}".format(fn, dp)
|
||||||
|
title = "File received"
|
||||||
|
|
||||||
|
if "com.termux" in sys.executable:
|
||||||
|
sp.run(["termux-notification", "-t", title, "-c", msg])
|
||||||
|
return
|
||||||
|
|
||||||
|
icon = "emblem-documents-symbolic" if sys.platform == "linux" else ""
|
||||||
|
notification.notify(
|
||||||
|
title=title,
|
||||||
|
message=msg,
|
||||||
|
app_icon=icon,
|
||||||
|
timeout=10,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
|
|
Loading…
Reference in a new issue