উবুন্টুতে খুব শীতল নোটিফিকেশন সিস্টেম রয়েছে। উবুন্টু প্রকাশিত বিজ্ঞপ্তিগুলি প্রকাশিত করার কোনও উপায় আছে কি?
অথবা বিজ্ঞপ্তিগুলিতে পাঠ্যটি লিঙ্ক করা সম্ভব espeak?
উবুন্টুতে খুব শীতল নোটিফিকেশন সিস্টেম রয়েছে। উবুন্টু প্রকাশিত বিজ্ঞপ্তিগুলি প্রকাশিত করার কোনও উপায় আছে কি?
অথবা বিজ্ঞপ্তিগুলিতে পাঠ্যটি লিঙ্ক করা সম্ভব espeak?
উত্তর:
এই প্রশ্নটি উত্তর হিসাবে সত্যই আকর্ষণীয়।
dbus-monitorযখন নির্বাহ করা হয় তখন সিগন্যালের জন্য অপেক্ষা করে এবং কখন এটি আসে এবং এটি সম্পর্কে যথাযথ তথ্য দেয়। একইভাবে এটি বিজ্ঞপ্তি সম্পর্কিত তথ্য পেতে কার্যকর করা যেতে পারে । মৃত্যুদন্ড কার্যকর করা হলে:
dbus-monitor "interface='org.freedesktop.Notifications'" | grep --line-buffered "member=Notify\|string"
এটি বিজ্ঞপ্তিগুলির জন্য অপেক্ষা করবে এবং কোনও বিজ্ঞপ্তি এলে বিজ্ঞপ্তিগুলির তথ্য দেয়।
উদাহরণস্বরূপ যখন শব্দ বৃদ্ধি / হ্রাস বা কোনও গানের ট্র্যাক পরিবর্তন করা হয় বা অন্য কোনও এটি বার্তা দেয়। আমি ম্যানুয়ালি notify-send অন্য কোনও টার্মিনালে কমান্ড ব্যবহার করে একটি ডেস্কটপ বিজ্ঞপ্তি তৈরি করছি :
notify-send "Hello How are you?"
তারপরে প্রথম টার্মিনালে যে dbus-monitorকমান্ডটি কার্যকর করা হচ্ছে তা বার্তা দেয়:
saurav@saurav-P4I45Gx-PE:~$ dbus-monitor "interface='org.freedesktop.Notifications'" | grep --line-buffered "member=Notify\|string"
string ":1.473"
method call sender=:1.474 -> dest=:1.475 serial=7 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
string "notify-send"
string ""
string "Hello How Are You?"
string ""
string "urgency"
এখন উপরের আউটপুট সহজেই espeakবার্তা পড়তে পাস করা যেতে পারে । উদাহরণ স্বরূপ,
উপরের dbus-monitorকমান্ডটি নিম্নলিখিতটির সাথে প্রতিস্থাপন করা বিজ্ঞপ্তি বার্তাটি পড়বে:
পরীক্ষা করুন, এটি কীভাবে কাজ করে:
টার্মিনালে এই কমান্ডটি কার্যকর করুন এবং এটি চালিয়ে যান:
dbus-monitor "interface='org.freedesktop.Notifications'" | grep --line-buffered "string" | grep --line-buffered -e method -e ":" -e '""' -e urgency -e notify -v | grep --line-buffered '.*(?=string)|(?<=string).*' -oPi | grep --line-buffered -v '^\s*$' | xargs -I '{}' espeak {}
আমি জানি এটি খুব দীর্ঘ হয়ে গেছে, তবে এটি ছোট করার আর কোনও উপায় নেই কারণ প্রকৃত বিজ্ঞপ্তির ফিল্টারিংটি এটি দীর্ঘ করেছে।
তারপরে কোনওভাবে ডেস্কটপ বিজ্ঞপ্তিটি চালান যা আমি উপরে বর্ণিতভাবে ব্যবহার করেছি notify-sendবা অন্য কোনও জিনিস। আমি ব্যবহার করছি notify-send। সুতরাং অন্যান্য টার্মিনালে নিম্নলিখিত কমান্ড কার্যকর করা:
notify-send "Hello! I am Saurav Kumar."
কমান্ডটি কার্যকর করার সাথে সাথে এটি বিজ্ঞপ্তিটি (পড়ুন) বলবে।
যদিও এটি আমার 4-5 ঘন্টা খেয়েছে, তবে আমি এখন এটি কাজ করে খুশি।
আপনি নিজের কমান্ডটি নিজের মতো করে তৈরি করতে এবংsaynoti প্রতিবার পড়ার বিজ্ঞপ্তি চাইলে এটি কার্যকর করতে পারেন। এই পদক্ষেপগুলি অনুসরণ করে আপনি এটি করতে পারেন:
প্রথমে প্রকৃত কমান্ড একটি ফাইল হিসাবে সংরক্ষণ করুন saynoti। আপনি যে কোনও ফাইলের নাম ব্যবহার করতে পারেন যা আপনার আসল কমান্ডের নাম হয়ে যাবে।
তারপরে ফাইলটিকে এক্সিকিউটেবল করে তুলুন এবং এটিকে সরান বা এতে অনুলিপি করুন /bin:
chmod +x saynoti
sudo cp saynoti /bin
স্পিকিং নোটিফিকেশন শুরু করার জন্য আপনি এখনই নতুন কমান্ডটি কার্যকর করতে পারেন :
saynoti
চলমান প্রক্রিয়াটি হত্যার জন্য আপনি এই আদেশটি কার্যকর করতে পারেন:
pkill dbus-monitor
বা শুধু প্রেস Ctrl+ + Cটার্মিন্যালে যেখানে saynotiচলছে।
এছাড়াও আপনি চালাতে পারেন saynotiপ্রত্যেক সময় আপনার সিস্টেমে এটি একটি করে আরম্ভ করা হয় স্টার্ট আপ আবেদন ।
আমি এই প্রশ্নের জন্য আপনাকে ধন্যবাদ বলতে চাই। এই প্রশ্নের কারণে আমি অনেক কিছু শিখেছি। :)
আপনার যদি কোনও সমস্যা হয় বা আরও কিছু পরিবর্তন / পরিবর্তন প্রয়োজন হয় তবে উত্তর দিন। আমি নিশ্চিত আপনি চূড়ান্ত কার্যকরী সংস্করণ পেয়ে খুশি হবেন।
dbus-monitor
আমার ইমেল ঠিকানাগুলিতে "অতিরিক্ত সমস্যা নিয়ে আমার সমস্যা হয়েছিল তাই আমি এটিকে উপরের কোড লাইনে যুক্ত করেছি যেহেতু এসপাইকটির কোনও" পড়ার দরকার নেই;)
| সেড 's / \ "// জি' |
=>
| গ্রেপ - লাইন-বাফার্ড -v '^ \ এস * $' | সেড 's / \ "// জি' | xargs -I '{}' এসপাইক {
সিওএল কাজ। নিজেই টুইট-বিজ্ঞপ্তি-পাঠানো লাইব টুইট করার চেয়ে 4 "হ্যালো! আমি সৌরভ কুমার am"
আপডেট: অবিচলিত কাজ করে না। আমি ব্যবহার করব | টি-এ $ ফাইল |