דילוג לתוכן

מחשבים וטכנולוגיה

7.2k נושאים 79.0k פוסטים

קטגוריות משנה


  • 3k נושאים
    33k פוסטים
    ש

    @אפרים22 הגרסה העדכנית כבר הייתה מותקנת, התקנתי שוב, ושום כלום.

  • 1k נושאים
    15k פוסטים
    יעקב2י

    @shraga יש לי אחד בבית והכל מעולה
    רק שאיני בטוח שזה יעזור לך
    זה מיועד למקומות ללא קליטה וזה מביא את הקליטה מבחוץ
    השאלה שלי היא מה קורה אם אתה יוצא מחוץ למבנה עם קליטה מלאה האם אתה מגיע למהירות אחרת
    כי אם לא אז אין הבדל
    אם זה כן משתנה משמעותית אבדוק לך לעניין האינטרנט מה שווה מגביר הקליטה שלי כי אני משתמש בו לשיחות טלפון ויש לי קווי באינטרנט

  • 707 נושאים
    8k פוסטים
    מדמ

    תלוי איזה מוצר, אני הצלחתי לעשות כפי שכתבתי.

  • 576 נושאים
    6k פוסטים
    מדמ

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

  • 45 נושאים
    96 פוסטים
    MusiCodeM

    להתקין מערכת הפעלה, זה משהו שלוקח זמן.

    ואם נניח, בדיוק אתם רק רוצים לנסות משהו, משהו שאפשר לעשות רק בלינוקס (אה, ואין לכם Mac…), הזמן שלוקח להתקין את מערכת ההפעלה, הוא ממש מכשול.

    ואם משהו השתבש, וצריך להתקין שוב?
    לפעמים זה פשוט מייאש…

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

    ב-Windows10, יש אפשרות ליצור מערכת הפעלה ווירטואלית בשנייה, לנסות שם מה שרוצים, למחוק, ולהתחיל מכונה חדשה (למי שמתעניין: ארגז החול של Windows)

    ובלינוקס?
    האמת, שאני לא יודע מה בלינוקס. אני לא מבין בזה מספיק.

    -- אז מה אתה מבזבז את זמננו?

    נכון, רק מה שבאתי לספר, זה שב-Windows10, אפשר ליצור מכונה ווירטואלית (סוג של) עם לינוקס בשניות באמצעות wsl2, ו-
    לאפס אותה להיות כמו לפני ההתקנה, בפקודה אחת!

    מתקינים, מריצים ומנסים מה שרוצים, ואחר כך מוחקים ומתחילים מחדש תוך שניות.

    איך עושים את זה:
    תנאי מוקדם הוא, Windows 10 לפחות 1903 פרו.

    מתקינים את אפליקצית אובונטו מכאן, ומחכים לסיום ההורדה.
    212683a2-6c18-43c6-962f-f4724fa5a0aa-image.png

    פותחים את שורת הפקודה, וכותבים:

    ubuntu

    זהו.
    מערכת אובונטו כעת מתקינה את עצמה.

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

    אחרי שסיימנו להרוס שם, ואנחנו רוצים גרסה נקייה של אובונטו, יש לכתוב את הפקודה הבאה:

    wsl --unregister ubuntu

    Windows ימחק את המערכת המותקנת.
    קבצי ההתקנה עצמם לא נמחקו, ואנחנו יכולים להתקין את אובונטו שוב!

    איך?
    שום דבר, רק לפתוח את אובונטו, עם הפקודה

    ubuntu

    זהו.

    עכשיו שוב אובונטו מותקן, יש להמתין, להקיש שם משתמש וסיסמא, וכו'.

    אסכם: מה העוצמה כאן?
    שהתקנו מערכת בשניות, לא כמו מכונה רגילה הדורשת התקנה, ובפקודה אחת (שתיים למעשה) קיבלנו אותה בחזרה חדשה ונקייה!

    בהצלחה.
    שרשור תגובות

  • 2k נושאים
    17k פוסטים
    telekesherT

    קיבלנו הרבה פניות בנושא חיבור למערכות חיצוניות. גיבשנו רעיון ראשוני למודול API ונשמח לשמוע אם הכיוון עונה על הצרכים שלכם!

    המודל מבוסס על מערך של פועולות עם הגדרה לאיזה פעולה לעבור בסיום או ע"פ הקשה
    ניתן להגדיר פעולות בשני דרכים:

    הגדרה ראשונית: מערך פעולות בסיסי שמוגדר בשלוחה מראש באתר (בעיקרון עם json אבל אפשר גם עם UI יותר ידודתי) הרחבה דינמית: השרת יכול להוסיף פעולות חדשות בזמן ריצה

    בהגדרה הראשונית צריך להגדיר מה הפעולה הראשונה שיבצע (עדיף לכאורה מאשר שיבחר באופן אוטומטי את הפעולה הראשונה במערך)

    היתרונות המשמעותיים:

    השרת לא צריך להגדיר את כל הפעולות מראש, אלא יכול להוסיף פעולות בהתאם לתשובות המשתמש והתקדמות השיחה כל פעולת curl יכולה לתקשר עם שרת שונה, מה שמאפשר אינטגרציה עם מערכות מרובות בזרימת שיחה אחת המערכת שומרת משתנים באופן מקומי ומשתמשת בהם לפי הצורך, ללא צורך בתקשורת מול השרת בכל שלב סוגי פעולות בסיסיות play_and_get_digits: השמעת הודעה וקבלת קלט playback: השמעת הודעה curl: שליחת בקשה ל-API hangup: ניתוק השיחה

    בהמשך כנראה נוסיף פעולות כמו הקלטה או העברה למודל API אחר וכדו'

    מבנה הפעולות

    כל פעולה במערך מוגדרת עם:

    { "uuid": "שם_ייחודי", "type": "סוג_הפעולה", "next_action": "הפעולה_הבאה", // או "conditional_map": { "תנאי": "פעולה_הבאה" } }

    בפעולת curl יש מפתח מיוחד:

    { "type": "curl", "curl_command": "...", "next_action_on_error": "הפעולה_במקרה_שגיאה" } משתנים דינמיים שמירת משתנים: "save_variable": "שם_המשתנה" שימוש במשתנים: {{שם_המשתנה}} משתנה מובנה: {{user}} - מזהה שיחה ייחודי דוגמה מלאה: אימות PIN

    הנה דוגמה מקיפה שמדגימה את כל היכולות. בוא נעקוב אחר המשתמש בתהליך:

    תחילת השיחה:

    המערכת משמיעה: "ברוכים הבאים למערכת האימות. אנא הקישו קוד PIN בן 3 ספרות" המשתמש מקיש את הקוד, נניח 123 אם המשתמש לא מקיש כלום או מקיש קוד לא תקין, המערכת תעבור להשמעת הודעת שגיאה

    בדיקת הקוד:

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

    אישור הקוד:

    אם הקוד תקין, המערכת משמיעה: "הקשתם את המספר..." ואז משמיעה כל ספרה בנפרד: "אחת... שתיים... שלוש..." לאחר מכן: "לאישור הקישו 1, להקשה מחודשת הקישו 2" המשתמש בוחר: אם מקיש 1 - ממשיך לאישור סופי, אם מקיש 2 - חוזר להקשת הקוד מחדש

    סיום מוצלח:

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

    טיפול בשגיאות:

    אם הקוד שגוי, המשתמש ישמע: "הקוד שהקשתם שגוי" וחוזר להתחלה אם אין קלט או יש שגיאה, המשתמש ישמע הודעת שגיאה מתאימה

    הנה ההגדרה הראשונית שתוגדר בממשק שמממש את התהליך הזה:

    { "first_action": "get_pin", "actions": [ { "uuid": "get_pin", "type": "play_and_get_digits", "audio_files": ["enter_pin.wav"], "min_digits": 3, "max_digits": 3, "tries": 3, "timeout": 5000, "terminator_key": "#", "regex_pattern": "\\d+", "save_variable": "pin", "conditional_map": { "no_input": "fail", "default": "verify_pin" } }, { "uuid": "verify_pin", "type": "curl", "curl_command": "https://server1.dev/verify?pin={{pin}}", "next_action_on_error": "fail" } ] } דוגמאות לתשובות שרת תשובה תקינה - הוספת פעולות חדשות: { "next_action": "play_pin", "new_actions": [ { "uuid": "play_pin", "type": "playback", "audio_files": [ "you_entered.wav", "digits/1.wav", "digits/2.wav", "digits/3.wav" ], "next_action": "get_confirmation" }, { "uuid": "get_confirmation", "type": "play_and_get_digits", "audio_files": ["confirm.wav"], "min_digits": 1, "max_digits": 1, "tries": 3, "timeout": 5000, "terminator_key": "#", "regex_pattern": "[12]", "conditional_map": { "1": "confirm_pin", "2": "get_pin", "no_input": "fail" } } ] } תשובת שגיאה - חזרה למצב קודם: { "next_action": "invalid_pin", "new_actions": [ { "uuid": "invalid_pin", "type": "playback", "audio_files": ["invalid_pin.wav"], "next_action": "get_pin" } ] }

    נשמח לשמוע מכם:

    האם המבנה ברור ומספק? האם חסרים שדות או יכולות טכניות? האם יש לכם הצעות לשיפור המודל? האם הדוגמאות מספיק ברורות? האם נראה לכם שעבודה בצורה כזאת נוחה בפיתוח מערכות מורכבות?
בא תתחבר לדף היומי!