ביטול העברה ב- RoomOS
list-menuמשוב?
עדכנו את מנוע ה- JavaScript שלנו לשימוש ב- QuickJS, המשמש כזמן ריצה מודרני ומעודכן של JavaScript למערכות משובצות. כחלק מהמהלך הזה, אנו מתכננים כעת להסיר את התמיכה בטרנספילציה של JavaScript בפלטפורמה שלנו.

שינויים בקוד JavaScript בפקודות מאקרו של RoomOS

עדכנו את המכונות המריצות את הפקודות המאקרו ב- RoomOS, וכתוצאה מעדכונים אלה כמה מוסכמות ופונקציות JavaScript לא יהיו זמינות עוד לפקודות המאקרו. בפרט, פונקציות הקשורות ל- CommonJS אינן זמינות עוד. כמה דוגמאות נפוצות לקוד הזקוק לשכתב הן:

  1. require(), כולל:
    • require('xapi')- צריך לשכתב ל- EC importMAScript הסטנדרטי. למשל, const xapi = require('xapi')השתנה ל import xapi from 'xapi'
    • require.main
  2. module, כולל:
    • module.exports- צריך לשכתב ל- ECMAScript הסטנדרטי export
    • module.name- צריך להיות מוחלף עם _main_module_name()

איך זה מופעל ומכבה?

שינויים אלה נכנסים לתוקף לאחר xConfiguration Macros EvaluateTranspiledהמעבר מ- Trueאל False. הגדרה זו קיימת במשך זמן רב והשינוי מתבצע על ידי שינוי ערך ברירת המחדל במהדורות חדשות מ- Trueל- False.

אם פקודות מאקרו מתפרקות בשינוי זה, הגדרה מפורשת של Toggle back (xConfiguration Macros EvaluateTranspiled: True) היא תיקון לטווח קצר כדי לגרום להם לעבוד כמו קודם. עם זאת, שים לב שמדובר בפתרון זמני בלבד: מתג זה ייעלם לאחר תקופת מעבר.

באופן דומה, בגרסאות RoomOS ישנות יותר ניתן לבדוק שינוי זה מבלי לשדרג על ידי הגדרת המתג ל False.

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

מתי השינויים הללו ייכנסו לתוקף?

ערך ברירת המחדל של המת EvaluateTranspiledג שונה לתחילת FalseRoomOS מאי 2025 (11.28), מה שאומר שהתקנים יעברו כברירת מחדל בעת השדרוג. באותה גרסה שלב ההעברה בעת שמירת פקודות מאקרו באמצעות XAPI כבוי כברירת מחדל. אם נדרשת העברה באמצעות XAPI, יש להגדיר במפורש את אפשרות הפקודה transpile ל- true.

החל מ - RoomOS יולי 2025 (11.30) תוצג אבחון כאשר המתג מוגדר. True זה עדיין יעבוד כמו קודם.

בהמשך, המתג יוסר לחלוטין והמכשיר יתנהג כאילו הוגדר False. אנו שואפים להוציא את השינוי הזה ב- RoomOS בנובמבר 2026 (27.0).

כל לקוחות שלמרות מיטב מאמצינו לנסות להודיע וליידע על השינויים, רואים את הפקודות המאקרו שלהם נכשלות כאשר השינויים קיימים לצמיתות ב- RoomOS עשויים עדיין להשתמש בעדכון התוכנה המתעכב (עד) של 6 חודשים המסופק דרך Control Hub למכשירים הרשומים בענן כדי לעכב את השינוי.

למה זה הכרחי? פרטים טכניים

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

מתג מנוע JavaScript נשלט על ידי שינוי xConfiguration Macros QuickJSEngine: Offל- On. שינוי זה הופץ ב- RoomOS בדצמבר 2023 (11.11), ואנחנו מתכננים להסיר את מתג התצורה הזה באותו ציר זמן כמו. EvaluateTranspiled

אנו מבצעים שינויים אלה כדי להבטיח ש-RoomOS יבצע את הביצועים המקסימליים, וכי אנו יכולים לעזור לך להגדיל את הפריסה של הרחבות JavaScript בצורה יעילה ומאובטחת.

קרא עוד על פקודות מאקרו באתר room os.cisco.com.

האם המאמר הועיל לך?
האם המאמר הועיל לך?