דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תוכנה
  3. ניטור שימוש במחשב

ניטור שימוש במחשב

מתוזמן נעוץ נעול הועבר תוכנה
10 פוסטים 5 כותבים 601 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ח מנותק
    ח מנותק
    חוקר
    כתב ב נערך לאחרונה על ידי
    #1

    ישנו משרד ובו מחשב עם 2 משתמשים.
    בחלק מהיום המחשב משמש את א, ובחצי השני של היום המחשב משמש את ב' ביוזר נפרד.
    יוזר ב' רוצה לדעת ניטור על יוזר א' -בהסכמתו- מתי הוא נמצא במשרד, כדי שאם יוזר א' יצא מוקדם מהמשרד או לא הגיע היום יוכל יוזר ב' לדעת זאת בקלות ויוכל להגיע מוקדם יותר למשרד.
    האם יש דרך בקלות לנטר זאת באמצעות תוכנה על המחשב, ניטור הרשת או משהו אחר שניתן יהיה לדעת שבXX הדקות האחרונות לא היה המחשב בשימוש?
    תודה

    M O 2 תגובות תגובה אחרונה
    1
    • M מנותק
      M מנותק
      mekev
      השיב לחוקר ב נערך לאחרונה על ידי mekev
      #2

      @חוקר
      אתגרת לגמרי

      הכיוון שלי הוא להשתמש במשאבים הקיימים

      1. להגדיר מצב שינה למחשב אחרי X זמן
      2. ליצור במתזמן המשימות אירוע לפי טריגר
        טריגר - system
        אירוע - Kernel-Power
        מזהה: 42 כניסה למצב שינה, 1 יציאה ממצב שינה
      3. ישנה אפשרות לשלוח מייל ישירות ממתזמן המשימות על הסטטוס כניסה/יציאה
        (או ליצור תוכנית קטנה עצמונית שתרוץ ותשלח מייל )

      [נ.ב.ג. אני בדקתי אצלי, ע"י יצירת קובץ טקסט מקומי של התאריך והשעה]

      תגובה 1 תגובה אחרונה
      4
      • O מנותק
        O מנותק
        one1010
        השיב לחוקר ב נערך לאחרונה על ידי one1010
        #3

        @חוקר יש דרך יחסית פשוטה... אם מותקן על המחשב ANYDESK ניתן לראות האם המחשב פעיל או לא פעיל...

        בנוסף, לפי מה שכתב @mekev שניתן לשלוח מייל ממתזמן המשימות, אז אולי לא נדרש כל הסיבוך אלא רק להגדיר מייל ואם המחשב כבוי המייל לא יישלח. ייתכן שזאת הייתה כוונתו ולא הבנתי... [אאל"ט אחרי שליחת התגובה שלי @mekev ערך את התשובה שלו לפי מספור ואז זה באמת נראה כתשובה עצמאית...]

        תגובה 1 תגובה אחרונה
        1
        • ח מנותק
          ח מנותק
          חוקר
          כתב ב נערך לאחרונה על ידי
          #4

          עברתי לכיוון אחר לגמרי.
          לפני שבוע קניתי ערכת לימוד של ESP32 וגיליתי שיש שם חיישן תאורה.
          בעזרת GPT כתבתי קוד כדלהלן,
          הרעיון הוא אני מחבר מיקרו בקר לוויפי, ואליו מחובר רגש המחזיר את ההתנגדות לאור האם כרגע דלוק אור בחדר או לא, בנוסף פתחתי שם שרת שמאזין לבקשות HTTP ומחזיר בתגובה את הסטטוס הנוכחי וממתי זה כך, בנוסף אעשה בעזה"י הפניית פורט לבקר וככה אוכל לבדוק כאשר אני רוצה לצאת למשרד האם עדיין האור דלוק שם..
          המכשיר מוכן וכעת נותר לחכות להתקין ולבדוק (היכן להתקין ולוודא שרמת הבדיקה נכונה בצהריים כשהאור לא דלוק וכו').

          import machine
          import time
          import network
          import socket
          import _thread
          import ntptime
          
          # הגדרת חיבור ל-WiFi
          ssid = 'ssid'
          password = 'password'
          
          led = machine.Pin(2, machine.Pin.OUT)
          
          # פונקציה לסנכרון הזמן עם שרת NTP
          def sync_time():
              try:
                  print('Syncing time with NTP...')
                  ntptime.settime()
                  print('Time synchronized')
              except:
                  print('Failed to sync time')
          
          # פונקציה להמרת הזמן ל-UTC+2/UTC+3
          def local_time(offset=2):
              tm = time.time() + offset * 3600
              return tm
          
          # התחברות ל-WiFi
          led.value(1)
          time.sleep(1)
          led.value(0)
          sta_if = network.WLAN(network.STA_IF)
          sta_if.active(True)
          sta_if.connect(ssid, password)
          
          while not sta_if.isconnected():
              led.value(1)
              time.sleep(0.5)
              led.value(0)
              time.sleep(0.5)
          
          print('Connection successful')
          print(sta_if.ifconfig())
          
          # סנכרון הזמן עם שרת NTP
          sync_time()
          
          # הגדרת החיישן על פין דיגיטלי מתאים
          photoresistor_pin = machine.Pin(19, machine.Pin.IN)
          
          # משתנים לשמירת תאריך השינוי הקודם והמצב הנוכחי
          last_change_time = None
          last_light_status = None
          
          # פונקציה לבדיקה אם האור דלוק
          def is_light_on():
              return photoresistor_pin.value() == 0
          
          # פונקציה לדגימה ושמירת הזמן
          def sample_light():
              global last_change_time, last_light_status
              current_light_status = is_light_on()
              if current_light_status != last_light_status:
                  last_change_time = local_time(offset=3)
                  last_light_status = current_light_status
                  print(last_change_time, current_light_status)
          
          # דגימת מצב האור בכל דקה
          def sampling_loop():
              while True:
                  sample_light()
                  time.sleep(1)
          
          # הפעלת דגימת האור בלולאה נפרדת
          _thread.start_new_thread(sampling_loop, ())
          
          # קוד לשרת HTTP
          def web_page():
              if last_change_time is not None:
                  last_change = time.localtime(last_change_time)  # שים לב לאזור זמן UTC+3
                  last_change_str = '{:04d}-{:02d}-{:02d} {:02d}:{:02d}:{:02d}'.format(
                      last_change[0], last_change[1], last_change[2], last_change[3], last_change[4], last_change[5]
                  )
              else:
                  last_change_str = 'Never'
          
              current_status = "דולק" if last_light_status else "כבוי"
              change_str = "הדלקה" if last_light_status else "כיבוי"
              time_diff_minutes = int((local_time(offset=3) - last_change_time) / 60)
              time_diff_str = f"לפני {time_diff_minutes} דקות"
              html = f"""
              <html lang="he">
              <head> <title>מצב תאורה</title> </head>
              <body dir="RTL">
                  <h1>מצב תאורה נוכחי: {current_status}</h1>
                  <h2>תאריך {change_str} אחרון: {last_change_str} {time_diff_str} </h2>
              </body>
              </html>
              """
              return html
          
          def start_web_server():
              addr = socket.getaddrinfo('0.0.0.0', 80)[0][-1]
          
              s = socket.socket()
              s.bind(addr)
              s.listen(1)
          
              print('Listening on', addr)
          
              while True:
                  conn, addr = s.accept()
                  print('Client connected from', addr)
                  cl_file = conn.makefile('rwb', 0)
                  while True:
                      line = cl_file.readline()
                      if not line or line == b'\r\n':
                          break
                  response = web_page()
                  conn.send('HTTP/1.1 200 OK\r\n')
                  conn.send('Content-Type: text/html; charset=utf-8\r\n')
                  conn.send('Connection: close\r\n\r\n')
                  conn.sendall(response)
                  conn.close()
          
          start_web_server()
          
          
          
          תגובה 1 תגובה אחרונה
          4
          • ח מנותק
            ח מנותק
            חוקר
            כתב ב נערך לאחרונה על ידי
            #5

            בשלב זה נראה שהרעיון אמור להצליח
            התקנתי וסידרתי הפניית פורטים (חשוב לציין שיש להגדיר למכשיר IP סטטי ברשת הפנימית, אני שכחתי, וכנראה בגלל זה הפסיק לעבוד בשלב מסויים כשהשתמשו במשרד עם מכשיר אחר שקיבל את ה IP או מה, לא ברור לי מה קרה, אעקוב)
            8e1074d8-d21d-4c1c-81ab-abab3264aa98-image.png

            M תגובה 1 תגובה אחרונה
            4
            • M מנותק
              M מנותק
              mekev
              השיב לחוקר ב נערך לאחרונה על ידי mekev
              #6

              @חוקר
              מחכה כבר לפתק שיהיה תלוי על הדלת
              'נא לזכור לכבות את האור לפני היציאה'...

              ח תגובה 1 תגובה אחרונה
              3
              • WheneverW מנותק
                WheneverW מנותק
                Whenever
                כתב ב נערך לאחרונה על ידי
                #7

                @חוקר ממש מגניב!
                כל הכבוד על הרעיון ועל הביצוע!

                תגובה 1 תגובה אחרונה
                1
                • Aharon 0A מנותק
                  Aharon 0A מנותק
                  Aharon 0
                  כתב ב נערך לאחרונה על ידי
                  #8

                  לא יותר פשוט להוסיף חיישן נוכחות ?

                  O תגובה 1 תגובה אחרונה
                  0
                  • O מנותק
                    O מנותק
                    one1010
                    השיב לAharon 0 ב נערך לאחרונה על ידי
                    #9

                    @Aharon-0 כתב בניטור שימוש במחשב:

                    לא יותר פשוט להוסיף חיישן נוכחות ?

                    אם כבר איזה מתזמן משימות במחשב...

                    תגובה 1 תגובה אחרונה
                    0
                    • ח מנותק
                      ח מנותק
                      חוקר
                      השיב לmekev ב נערך לאחרונה על ידי
                      #10

                      @mekev כתב בניטור שימוש במחשב:

                      @חוקר
                      מחכה כבר לפתק שיהיה תלוי על הדלת
                      'נא לזכור לכבות את האור לפני היציאה'...

                      לא יודע להגיד אם מדובר ב"גלאיצינערס" אבל ששכחו לנעול את המשתמש שלהם במחשב כבר קרה, לכבות את החשמל עוד לא קרה..

                      @Aharon-0 כתב בניטור שימוש במחשב:

                      לא יותר פשוט להוסיף חיישן נוכחות ?

                      הנקודה היא שזה לא נפק"מ דחוף לכל יום, אלא רק לנוחיות, שביום שמסתדר לי לצאת יותר מוקדם וייתכן שהוא יצא מהמשרד מוקדם. ואני לא רוצה להתקשר לשאול כי זה סתם ייתן תחושה של "היי למה אתה מתעכב היום". לכן הדרך הכי טובה שאני יכול לבדוק לעצמי בלי שזה יהיה עול עבור האחרים.

                      תגובה 1 תגובה אחרונה
                      2

                      בא תתחבר לדף היומי!
                      • התחברות

                      • אין לך חשבון עדיין? הרשמה

                      • התחברו או הירשמו כדי לחפש.
                      • פוסט ראשון
                        פוסט אחרון
                      0
                      • דף הבית
                      • קטגוריות
                      • פוסטים אחרונים
                      • משתמשים
                      • חיפוש
                      • חוקי הפורום