স্থগিত মোড থেকে অ্যালার্ম ঘড়ি


9

আমি চাই যে আমার ল্যাপটপটি সকাল থেকে সাসপেন্ড করা মোড থেকে জাগ্রত হয় এবং আমার এমপি 3 ফাইলটি ব্যবহার করে ঘুম থেকে ওঠার জন্য আমাকে সতর্ক করে দেয়। আমি এটা কিভাবে করব?

আমি অ্যাপস্লিপ চেষ্টা করেছি, তবে এটি কাজ করে না কারণ আমার পিসিতে BIOS- এ "সাসপেন্ড টু র্যাম" বৈশিষ্ট্য নেই। আমি কি করতে পারি? ধন্যবাদ!

উত্তর:


13

1. বেসিক অ্যালার্ম ক্লক ফাংশন

সাসপেন্ড মোডে প্রবেশ করা হচ্ছে

এই সমাধানের জন্য, আপনাকে নীচের স্ক্রিপ্টটি চালিয়ে স্থগিত মোড প্রবেশ করতে হবে। এটি কম্পিউটারটিকে সাসপেন্ড মোডে নিয়ে যায় এবং আপনাকে (স্ক্রিপ্টে) দ্বারা নির্ধারিত (ঘড়ি) সময়ে আপনাকে জাগিয়ে তোলে। তোমার গান বাজছে

অবশ্যই আপনি এটি ব্যবহার করতে সরাসরি স্ক্রিপ্টটি চালাতে পারেন, তবে এটি সেট করা কী কী সংমিশ্রনের মাধ্যমে এটিকে উপলব্ধ করা আরও সুবিধাজনক System Settings > Keyboard > Shortcuts > Custom Shortcuts

সেট আপ করুন

  • একটি ফাঁকা ফাইলে নীচে স্ক্রিপ্টটি আটকান, জাগ্রত করার (ঘড়ির) সময় সেট করুন (1-24 ঘন্টা, 1-60 মিনিটের মধ্যে), আপনার জাগ্রত গানের পথ নির্ধারণ করুন এবং এটি সংরক্ষণ করুন wakeup.py

    #!/usr/bin/env python3
    
    import datetime
    import subprocess
    
    ###############################################
    # set wakeuptime and location of the mp3:
    hour = 7
    minutes = 15
    command = "rhythmbox /path/to/wakeupsong.mp3"
    ###############################################
    
    currtime = str(datetime.datetime.now().time()).split(":")[:2]
    minutes_set = hour*60 + minutes
    minutes_curr = int(currtime[0])*60 + int(currtime[1])
    if minutes_curr < minutes_set:
        minutes_togo = minutes_set - minutes_curr
    else:
        minutes_togo = minutes_set + 1440-minutes_curr
    interval = minutes_togo*60
    
    run = "rtcwake -m disk -s "+str(interval)+" && "+"sleep 20 &&"+command
    subprocess.call(['/bin/bash', '-c', run])
  • স্ক্রিপ্ট কার্যকর করতে

  • স্ক্রিপ্টটি চালানোর জন্য একটি কী সংমিশ্রণ সেট করুন; খুলুন System Preferences > Keyboard > Shortcuts > Custom Shortcuts, কমান্ড যুক্ত করুন

    sudo /path/to/wakeup.py (sudo = assuming you do the next step below)
    

    এবং একটি কী সমন্বয় চয়ন করুন

  • স্ক্রিপ্টটির জন্য প্রশাসকের সুযোগ-সুবিধা দরকার। পাসওয়ার্ডটি প্রবেশ না করেই এটি চালাতে, sudoers ফাইলটি খুলুন:

    sudo visudo
    

    ফাইলটির একেবারে নীচে লাইনটি যুক্ত করুন:

    [your_username] ALL=NOPASSWD: [/path/to/wakeup.py]
    

    নোট করুন যে sudoers ফাইল একটি প্রয়োজনীয় ফাইল; ফাইলের ত্রুটিগুলি সম্ভবত গুরুতর সমস্যাগুলির দিকে পরিচালিত করে , তাই সাবধান!

বিশেষ দ্রষ্টব্য

  • ঘুম থেকে ওঠার পরে, অ্যালার্ম শুরু হওয়ার আগে কম্পিউটারটি 20 সেকেন্ডের জন্য অলস।
  • আপনি sudoers ফাইল সম্পাদনা করতে না চান, আপনি ইনস্টল করতে হবে gksu: sudo apt-get install gksu। সেক্ষেত্রে স্ক্রিপ্টটি চালানোর আদেশটি হ'ল gksu /path/to/wakeup.pyএবং প্রতিবার এটি চালানোর সময় আপনাকে আপনার পাসওয়ার্ডের জন্য অনুরোধ জানানো হবে।

এখন আপনি আপনার কী সংমিশ্রণ সহ সাসপেন্ড মোডে প্রবেশ করতে পারেন এবং আপনার জাগ্রত গানের মাধ্যমে আপনি জাগ্রত হয়ে উঠবেন।

(কোনও) কী বা মাউস হিট হলে স্টপ ফাংশন সহ ২.০ বর্ধিত সংস্করণ

এই এবং "বেসিক" সংস্করণের মধ্যে পার্থক্য হ'ল এই একের মধ্যে যখন কোনও কীস্ট্রোক বা মাউস চলাচল ধরা পড়ে তখন কম্পিউটারে রিথম্বক্স থামানোর চেয়ে আরও সুবিধাজনক হয় (এবং যখন আপনি জেগেছিলেন তখনই) অ্যালার্মটি স্বয়ংক্রিয়ভাবে প্রস্থান করে that সময়ের একটি নির্ধারিত সময়।

সেটআপটি মূল সংস্করণের মতো প্রায় একই, তবে xprintidleকীস্ট্রোক- বা মাউস আন্দোলনের ইভেন্টগুলি সনাক্ত করতে ইনস্টল করা দরকার:

sudo apt-get install xprintidle

এই পান্ডুলিপি:

#!/usr/bin/env python3

import subprocess
import time
import datetime
from threading import Thread

#-------------------------- edit settings below -------------------------------
max_wakeupduration = 1              # max time the song will play (minutes)
wakeup_hour = 7                     # wake up hour (0-24)
wakeup_minute = 15                  # wake up minute
wakeup_song = "/path/to/song.mp3"   # path to wake up song
#------------------------------------------------------------------------------

def stop_wakeup():
    time1 = int(time.time()); time2 = time1
    last_idle = 0
    playtime = max_wakeupduration*60
    while time2 - time1 < playtime:
        get_idle = subprocess.Popen(["xprintidle"], stdout=subprocess.PIPE)
        curr_idle = int(get_idle.communicate()[0].decode("utf-8"))
        if curr_idle < last_idle:
            break
        else:
            last_idle = curr_idle
            time.sleep(1)
            time2 = int(time.time())
    subprocess.Popen(["pkill", "rhythmbox"])

def calculate_time():
    currtime = str(datetime.datetime.now().time()).split(":")[:2]
    minutes_set = wakeup_hour*60 + wakeup_minute
    minutes_curr = int(currtime[0])*60 + int(currtime[1])
    if minutes_curr < minutes_set:
        minutes_togo = minutes_set - minutes_curr
    else:
        minutes_togo = minutes_set + 1440-minutes_curr
    return minutes_togo*60

def go_asleep():
    sleeptime = calculate_time()   
    run = "rtcwake -m disk -s "+str(sleeptime)+" && "+"sleep 20"
    subprocess.call(['/bin/bash', '-c', run])
    combined_actions()

def play_song():
    command = "rhythmbox "+wakeup_song
    subprocess.Popen(['/bin/bash', '-c', command])

def combined_actions():
    Thread(target = play_song).start()
    Thread(target = stop_wakeup).start()

go_asleep()

ব্যাখ্যা

rtcwake

উভয় স্ক্রিপ্ট এখানে rtcwakeকমান্ডের চারপাশে লেখা হয়েছে । কমান্ডটি কম্পিউটারকে স্থগিত করার জন্য এবং নির্ধারিত সময়ের পরে জাগ্রত করার জন্য ব্যবহার করা যেতে পারে (এবং wakeচ্ছিকভাবে জাগরণের পরে একটি কমান্ড চালানো)। -m diskবিকল্প ব্যবহার করা হয়, যেহেতু ওপি তার কম্পিউটার সমর্থন করে না BIOS- এ বৈশিষ্ট্যটি "র্যাম থেকে সাসপেন্ড" উল্লেখ করেছে। এছাড়াও দেখুন man rtcwake

স্টপ ফাংশন

স্টপ ফাংশন এমন একটি ফাংশন দ্বারা কাজ করে যা গানটি চলাকালীন প্রতি সেকেন্ডে অলস সময় পরিমাপ করে এবং শেষ অলস সময়টিকে স্মরণ করে। যদি শেষ অলস সময়টি বর্তমানের চেয়ে বেশি হয় তবে এর অর্থ একটি কী-স্ট্রোক বা মাউস ইভেন্ট হয়েছে এবং রিদম্বক্সকে হত্যা করা হয়েছে।


আমি নবুড়ির সুপারো ফাইলটি স্পর্শ না করার পরামর্শ দেব।
রেগারবয়

@ বিকাশকারীদের তাদের ব্যবহারিকভাবে প্রয়োজন, তবে একটি সতর্কতা দেওয়া উচিত। আমি বাড়ি (বর্তমানে মোবাইলে) পেলে সম্পাদনা করব।
জ্যাকব Vlijm

@ বিকাশকারী এবং সম্পন্ন হয়েছে ....
জ্যাকব ভিলিজ

1
এটা করা উচিত নয় sudo visudo /etc/sudoers?
সর্বজনীনভাবে

@ ভরদ্বাজরাজু না, চেষ্টা করুন :) vi কেবল সম্পাদক is
জ্যাকব Vlijm

2

যদি আপনি আপনার ল্যাপটপটি কেবল দ্বারা ইন্টারনেটের সাথে সংযুক্ত থাকতে পারেন তবে আপনি এটিতে একটি "ম্যাজিক প্যাকেট" প্রেরণ করতে অন্য কম্পিউটার বা স্মার্টফোন ব্যবহার করার চেষ্টা করতে পারেন এবং এটি জাগ্রত করতে পারেন।

"ওয়েক অন ল্যান" (ডাব্লুএলওএল) এর জন্য দেখুন।


না, এটি কেবলমাত্র ওয়াইফাই।
চেলিওস

1

জ্যাকব এর অজগর স্ক্রিপ্টটি চালাতে আমার সমস্যা হয়েছিল, তাই আমি এটিকে নতুন করে লিখেছি । কেবল এটি ডাউনলোড করুন, এটিকে সম্পাদনযোগ্য করে তুলুন এবং তদনুসারে পরিবর্তনশীল সম্পাদনা করুন।

কয়েকটি জিনিস: অ্যালার্ম সময় সেট করে date -d। এর কয়েকটি উদাহরণ man date:

  • "রবি, 29 ফেব্রুয়ারী 2004 16:21:42 -0800"
  • "2004-02-29 16:21:42"
  • "পরবর্তী বৃহস্পতিবার"

ঘুম থেকে ওঠার পরে আমি vlc -Lএকটি লুপে কিছু সংগীত খেলি। যদি আপনার পথটি একটি ফোল্ডার হয় তবে এটি এতে ফাইলগুলি চালানোর চেষ্টা করবে। এটা যা আমি করি.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.