צפייה מרחוק בזמן-אמת במשתמשי אפליקציית פלאש | Publisher
מאמרים ותוכן איכותי להפצה חופשית ברשת

שלום, אורח

זכור אותי

שחזור סיסמא

קטגוריות


צפייה מרחוק בזמן-אמת במשתמשי אפליקציית פלאש

פורסם בתאריך 08/15/2010 ע"י אלעד כהן בקטגוריה תכנ ות ושפות מחשב | צפיות: 1260 | התחבר לדירוג המאמר

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

כשמפתחים אפליקציית פלאש (ע"י העסקת מתכ× ת פלאש) אפשר להוסיף את האפשרות שכל פעולה שהמשתמש מבצע באפליקציה תישלח למחשב אחר ובמחשב האחר הפעולה שהמשתמש ביצע תוצג. אפשר לבצע זאת בשתי דרכים שו× ות:
האפשרות הראשו× ה היא לכתוב קוד שהוא ספיציפי לאפליקציה, לדוגמא כשהמשתמש מבצע פעולה מסויימת באפליקציה כמו לפתוח חלון חדש, תישלח למחשב אחר הודעה שהמשתמש פתח חלון חדש ואז המחשב האחר יוכל להציג את החלון החדש ש× פתח.
האפשרות הש× ייה (שמוסברת במאמר זה) היא לבצע את פעולת הצפייה מרחוק ללא שום שי× וי בקוד של האפליקציה המקורית, ככ שיהיה אפשר לצפות מרחוק בכל אפליקציה, גם אם אין את קוד המקור שלה.

האפשרות הש× ייה מיושמת ע"י הכ× ה של ש× י קבצי פלאש חדשים:
הקובץ הראשון AppLoader.swf יטען את האפליקציה בה א× ח× ו רוצים לצפות (ע"י שימוש במחלקה Loader).
והקובץ הש× י Viewer.swf (בו ישתמש הצופה) ישמש לצפייה מרחוק של האפליקציה, ש× י הקבצים האלו ייצרו חיבור בי× הם ויעבירו × תו× ים לגבי פעילות הגולש באפליקציה.

לשם הדוגמא (קישור להורדה מופיע בסוף המאמר) השתמשתי ב-Stratus שמאפשר תקשורת ישירה בין ש× י מחשבים ללא שימוש בשרת, אפשר לממש את צורת התקשורת בכל דרכ אחרת כל עוד × יתן לשלוח × תו× ים בין ש× י הקבצים.

הסבר על הקובץ AppLoader.swf
קובץ זה מקבל שלושה פרמטרים ב-Flash Vars:
ConnectionString – זוהי מחרוזת ייחודית של המחשב הצופה, לפי מחרוזת זו Stratus יודע לאיזה מחשב-צופה להתחבר.
SwfUrl – × תיב קובץ ה-swf של האפליקציה המקורית
SendScreenshotDelay – פרק הזמן במילי-ש× יות בין כל שליחה של × תו× ים למחשב הצופה

AppLoader.swf מבצע חיבור באמצעות ConnectionString למחשב הצופה, טוען את האפליקציה המקורית ש× מצאת בכתובת SwfUrl, אחת לפרק הזמן שמוגדר ב-SendScreenshotDelay שולח צילום מסכ של האפליקציה למחשב הצופה ובכל תזוזה של העכבר, מיקומו × שלח למחשב הצופה.
צילום המצב ה× וכחי של האפליקציה מבוצע ע"י שימוש ב: BitmapDataInstance.draw(this);

הסבר על הקובץ Viewer.swf
בעת ההפעלה של הקובץ, מופיעה מחרוזת בחלק העליון, מחרוזת זו היא ה-ConnectionString שצריכ להגדיר ב-Flash Vars של AppLoader.swf (בכל הפעלה של הקובץ, המחרוזת שתופיע תהיה שו× ה)

אפליקציית הדוגמא × ועדה רק להדגים ש× יתן לבצע צפייה מרחוק בזמן-אמת במשתמשים ללא שי× וי קוד המקור של האפליקציה, אפשר להוסיף לה עוד מגוון אפשרויות, כמו:
א. התחלת שיחת אודיו ווידאו ע"י הצופה
ב. הצגה של כל המשתמשים ובחירה באיזה צופה רוצים לצפות
ג. שליחת הפיקסלים שבוצע בהם שי× וי בלבד, ככ יהיה אפשר להפחית את ערכ ה-SendScreenshotDelay

קישור לקוד המקור
http://www.gamedevstudio.co.il/RemoteView/code.rar

אודות אלעד כהן

אלעד כהן

התחבר לשליחת תגובה

לא פורסמו עדיין תגובות למאמר זה

RSS | הנחיות כתיבה | שאלות נפוצות | מאמרים מובילים | מאמרים אחרונים | הכותבים המובילים | צור קשר