ฉันสร้างสคริปต์หลามง่ายที่ทำงานใกล้เคียงกับแจ้ง-ส่ง --replaces-id
แต่มีการสนับสนุน
notify-send.py
เว็บ: https://github.com/phuhl/notify-send.py
สคริปต์ python สำหรับส่งการแจ้งเตือนทางเดสก์ท็อปจากเชลล์
เกี่ยวกับ
Libnotify เป็นส่วนหนึ่งของสคริปต์มากมายในโลก Linux มันใช้คุณสมบัติที่ระบุจำนวนมากของข้อกำหนดการแจ้งเตือนของเดสก์ท็อปและทำให้สามารถเข้าถึงเชลล์สคริปต์ได้ มันไม่ได้replaces-id
แต่อนุญาตให้มีการเปลี่ยนการแจ้งเตือนที่มีอยู่ด้วย นี่เป็นข้อผิดพลาดที่รู้จักกันมาตั้งแต่ปี 2008 และมีการแก้ไขตั้งแต่ปี 2012 แพทช์ยังไม่ได้อัปสตรีมแม้ว่า (2018)
สคริปต์ไพ ธ อนนี้ใช้แพคเกจinform2และแสดงการทำงานกับเชลล์
ความแตกต่างระหว่าง alert-send.py และ alert-send
- ในการ
notify-send.py -h
แสดงความช่วยเหลือแทนที่จะเป็นพารามิเตอร์สำหรับคำแนะนำ --hint
คำแนะนำสำหรับการใช้งาน
- ใน
notify-send.py -r ID
และnotify-send.py --replaces-id ID
มีอยู่ เพื่อแทนที่การแจ้งเตือนnotify-send.py
ด้วย ID ที่ถูกส่งคืนโดยการแจ้งเตือนที่จะถูกแทนที่
notify-send.py
ส่งคืน ID ของการแจ้งเตือนที่สร้างขึ้นใหม่
notify-send.py --replaces-process NAME
ที่มีอยู่ การแจ้งเตือนทั้งหมดที่สร้างขึ้นด้วย NAME เดียวกันจะแทนที่การแจ้งเตือนทุกรายการก่อนหน้าด้วย NAME เดียวกัน ถ้าเรียกว่ามีพารามิเตอร์นี้อาจบล็อกที่ดีที่สุดที่จะเรียกว่ามีต่อท้ายnotify-send.py
&
การติดตั้ง
ต้องการ python3
git clone https://github.com/phuhl/notify-send.py
cd notify-send.py
sudo pip install notify2
sudo python setup.py install
การใช้
$ notify-send.py -h
usage: notify-send.py [-h] [-u LEVEL] [-t TIME] [-a APP_NAME]
[-i ICON[,ICON...]] [-c TYPE[,TYPE...]]
[--hint TYPE:NAME:VALUE] [-r ID]
[--replaces-process NAME]
SUMMERY [BODY]
positional arguments:
SUMMERY
BODY
optional arguments:
-h, --help show this help message and exit
-u LEVEL, --urgency LEVEL
Specifies the urgency level (low, normal, critical).
-t TIME, --expire-time TIME
Specifies the timeout in milliseconds at which to
expire the notification.
-a APP_NAME, --app-name APP_NAME
Specifies the app name for the icon
-i ICON[,ICON...], --icon ICON[,ICON...]
Specifies an icon filename or stock icon to display.
-c TYPE[,TYPE...], --category TYPE[,TYPE...]
Specifies the notification category.
--hint TYPE:NAME:VALUE
Specifies basic extra data to pass. Valid typesare
int, double, string and byte.
-r ID, --replaces-id ID
Specifies the id of the notification that should be
replaced.
--replaces-process NAME
Specifies the name of a process that should take care
of replacing notifications for this process.
แจ้ง - ส่ง [.py] ในฐานะผู้ใช้รูท
เพื่อที่จะแสดงการแจ้งเตือนแม้ว่า libnotify หรือ
notify-send.py
ถูกใช้จากผู้ใช้รูททั้งสองสคริปต์นี้มีประโยชน์
#!/bin/bash
username=<your username here>
if [ "$(id -u)" != "1000" ] ; then
sudo -u $username DISPLAY=:0 DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus notify-send.sh "$@"
else
notify-send.sh "$@"
fi
ด้วย notify-send.sh
เช่นนี้
#!/bin/bash
notify-send.py "$@" &
ดูสิ่งนี้ด้วย
ดูการแจ้งเตือนภูตของฉันที่ได้รับแรงบันดาลใจจากDunstแต่ด้วยการปรับปรุงหลายประการรวมถึงความเป็นไปได้ของพื้นหลังโปร่งใสและศูนย์การแจ้งเตือนที่เก็บการแจ้งเตือน