פיתוח אתר כמו צ'אט רולט PDF הדפסה דוא
דירוג משתמש: / 0
גרועהכי טוב 
טכנולוגיה - טכנולוגיה כללי
השיעור נכתב על ידי : אלעד כהן   
רביעי, 11 אוגוסט 2010 02:08
פירוט ארכיטקטורת אתר צ'אט רולט ואת ושימוש בשרות Stratus של Adobe על מנת שגולשים יוכלו לתקשר אחד עם השני ישירות (P2P) ללא שימוש בשרת עם אפליקציה לדוגמא וקוד-מקור.

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

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


אפשרות זו (תקשורת ישירה בין שני מחשבים) קיימת החל מגירסא 10 של נגן הפלאש ונקראת בשם Stratus.

Stratus מאפשר תקשורת חד כיוונית בין שני מחשבים. מחשב אחד משדר נתונים (וידאו / אודיו / צ'אט) ומחשב אחר מאזין לנתונים.
במידה ושני המשתמשים צריכים לשלוח ולקבל נתונים (כמו במקרה של צ'אט רולט, בו כל גולש שולח את הקלט מהמצלמה והמיקרופון שלו ויכול לכתוב בצ'אט),
כל אחד משני המשתמשים, פותח ערוץ תקשורת בו הוא משדר נתונים ובנוסף מאזין לערוץ התקשורת של האחר.

ידע מקדים רצוי
שימוש במחלקות: NetConnection, NetStream, Microphone, Camera
הסבר בקצרה:
NetConnection – נועד ליצור חיבור עם מחשב מרוחק
NetStream – נועד לשלוח ולקבל נתונים על גבי NetConnection
Microphone – מאפשר גישה למיקרופונים שמחוברים למחשב, אפשרות לקביעה את איכות הקלט מהמיקרופון ולשלוח את הקלט על גבי NetStream (ככל שהאיכות גבוהה יותר כך תעבורת הנתונים גדולה יותר)
Camera – מאפשר גישה למצלמות שמחוברות למחשב, אפשרות לקבוע את איכות הקלט ולשלוח נתונים על גבי NetStream (ככל שהאיכות גבוהה יותר כך תעבורת הנתונים גדולה יותר)

שידור באמצעות Stratus
כדי להתחיל לשדר נתונים (וידאו / אודיו / צ'אט) , מתכנת פלאש צריך להירשם באתר של Adobe ולקבל Developer Key, כדי להתחיל לשדר צריך ליצור מופע של המחלקה NetConnection, יצירת אירוע ל-NetStatusEvent.NET_STATUS וקריאה ל-connect עם הארגומנט שקיבלת כאשר נרשמת באתר של Adobe.
לאחר מכן, בתוך האירוע שיצרת, כאשר e.info.code (שם הארגומנט של האירוע הוא e) שווה ל-NetConnection.Connect.Success, הפעולה הראשונה היא יצירת מופע של המחלקה NetStream, בארגומנט הראשון צריך להגדיר את המופע של NetConnection ובארגומנט השני להגדיר: NetStream.DIRECT_CONNECTIONS
הפעולה השנייה היא קבלת המחרוזת שנמצאת בתוך MyNetConnection.nearID (כאשר שם המופע של המחלקה NetConnection הוא MyNetConnection), את המחרוזת הזאת צריך לשלוח לכל מי שרוצה להאזין לשידור, כי רק באמצעותה אפשר להתחבר לשידור.

השידור של אפליקציית וידאו ואודיו מבוצע ע"י:
MyStream.attachCamera(Camera.getCamera());
MyStream.attachAudio(Microphone.getMicrophone());
MyStream.publish("MyName");

MyName יכול להיות כל מחרוזת, כדי להאזין לשידור יהיה צריך לכתוב את אותה המחרוזת בדיוק.
MyStream הוא שם המופע של המחלקה NetStream שיצרת מקודם.

האזנה לשידור שמבוצע באמצעות Stratus
כדי להתחבר לשידור מסויים צריך לקבל את ה-nearID של השידור, אפשר לקבל אותו בדרכים שונות, לדוגמא ע"י שימוש ב-Web Service.
שליחת מחרוזת זו (nearID) היא מעבר לסקופ של מאמר זה, כדי לא להרחיק לכת מההסבר על הצורה בה צ'אט רולט עובד.
לאחר שמחרוזת ה-nearID ידועה אפשר להאזין לשידור ע"י יצירת מופע של המחלקה NetConnection, בדיוק כמו שבוצע בעת השידור (הגדרת אירוע סטטוס וקריאה למתודה connect עם ארגומנט מסויים שהתקבל בעת הרישום באתר המפתחים של Adobe), בתוך אירוע הסטטוס, כאשר e.info.code (שם הארגומנט של האירוע הוא e) שווה ל-NetConnection.Connect.Success, צריך ליצור מופע של המחלקה NetStream, כאשר הארגומנט הראשון הוא המופע של NetConnection והארגומנט השני הוא ה-nearID של המשדר.
לאחר מכן, קריאה ל:

PartnerStream.play("MyName"); כאשר PartnerStream הוא שם המופע של המחלקה NetStream.

ארכיטקטורת אתר צ'אט רולט
אפליקציית הפלאש שולחת לשרת את ה-nearID של כל גולש חדש שמתחבר לאתר.
לאחר מכן כאשר הגולש לוחץ על כפתור "חפש משתמש אחר לשיחה" (בשם כזה או אחר) נשלח חיווי לשרת שהגולש רוצה לשוחח עם משתמש חדש, השרת מחפש משתמש אחר, אקראי ופנוי. לאחר שמשתמש אחר נמצא השרת שולח לכל אחד משני המשתמשים את ה-nearID של השני וכך הם יכולים ליצור קשר באמצעות Stratus.

אפליקצייה לדוגמא
http://www.gamedevstudio.co.il/ChatP2P

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


המאמר נכתב ע"י אלעד כהן - מתכנת פלאש בחברת GAME DEV LTD (גיימדב בע"מ) העוסקת בפיתוח אפליקציות לפייסבוק, פיתוח אפליקציות לאייפון ופיתוח משחקי מחשב.

עוד מכותב זה
עוד מאמרים מכותב זה
טכנולוגיה כללי
בדיקת אבטחת מידע במספר משחקים באתר נענע המשחקים, המשחקים שנבדקו הם: ראש בקיר, נקמת המחוננים ומבחן IQ. בכל אחד מהמשחקים מוסבר איך להגיע...
טכנולוגיה כללי
משחקים ואפליקציות בטכנולוגיות פלאש קלים להעתקה מכיוון שהמבנה בו נשמרים הנתונים ידוע לכל, מאמר זה יפרט מספר טכניקות להגנה מפני העתקה של...
טכנולוגיה כללי
אפליקציות AIR הן אפליקציות שנכתבו בפלאש, פלקס או Html ומותקנות על המחשב (כמו אפליקציות רגילות), אפליקציות AIR פועלות על גבי AIR Runtime, דבר המאפשר...
טכנולוגיה כללי
התקפת DDoS (Distributed Denial of Service) הינה התקפה המבוצעת ע"י מספר גדול של גורמים (לדוגמא: מחשבים שונים באינטרנט) על גורם מסויים אחד (לדוגמא: אתר...
טכנולוגיה כללי
כשמפתחים אפליקציית פלאש אפשר להוסיף את האפשרות שכל פעולה שהמשתמש מבצע באפליקציה תישלח למחשב אחר ובמחשב האחר הפעולה שהמשתמש ביצע תוצג…
עוד בנושא
מאמרים קשורים
קידום אתרים
יש הרבה שאלות לגבי קידום אורגני לאתר שנבנה על וויקס. בין השאלות הנפוצות: האם אתרי וויקס ניתנים לקידום בגוגל? האם וויקס פחות מתאים לקידום...
כללי1
  היי אנחנו עושות שיחות וידאו חמות ומצלמות אירוטיות ומוכרות סרטונים פרטיים שלנו בוואצפ: נטלי 052-3286919 מרינה 050-3484450 מאיה 050-7291168 ...
דרושים, משרות, קבלה לעבודה
הכישורים הנלמדים על ידי מתכנת במהלך הכשרתו עשויים להיות הכישורים החשובים ביותר בעולם כרגע, בעיקר בעולם הטכנולוגיה שהוא כנראה התחום...
נדל\"ן ושיפוצים
שיפוץ מבנים שיקום בטונים, שיקום אתר יד קנדי במסגרת שיקום מבנים- שיקום בטון באתר יד קנדי   איטום גגות עם גומי פוליאוריתן דנברסיל 1...
כללי1
עולם הדייטינג של היום מבלבל את מי שרק נכנס אליו וגם את מי שמאוד מנוסה בו. הקידמה והטכנולוגיה לא השאירה את העולם הזה מאחור, ולא הרבה זמן...
מאמרים אחרונים
מאמרים אחרונים
קידום אתרים
יש הרבה שאלות לגבי קידום אורגני לאתר שנבנה על וויקס. בין השאלות הנפוצות: האם אתרי וויקס ניתנים לקידום בגוגל? האם וויקס פחות מתאים לקידום...
בריאות ורפואה כללי
הגעתם לגיל הזהב, ועכשיו יש לכם זמן להנות מזמן פנוי לעצמכם, מגידול הנכדים בכיף ובאהבה, ומטיולים עם החברים הגמלאים שלכם. גיל הזהב אמנם יכול...
חוקים וחוזים
תמיד הצלחתם לקבל החלטות ביחד, אבל לאחרונה משהו מתחיל להשתבש? שמים לב שאתם והשותפים העסקיים שלכם כבר לא מתנהלים באותה צורה טובה כמו...
בריאות ורפואה כללי
טיפול דיאדי איך בונים ביטחון עצמי לילדים? אילו סוגי טיפולים מתאימים להורים – ואילו מתאימים לילדים? ואיך יודעים לאיזה מטפל כדאי לפנות?...
הקמת חברה עסק חדש
מיתוג - מסרים וקבוצות צבעים - ראו איזה קבוצה מקבוצות הצבעים הכי תתאים למותג שלכם: כולנו כבר מכירים ויודעים בדיוק מה משדר לנו האדום, ומה...
 

risom

התחברות לאתר






התחבר באמצעות:

STU2

מאמרים - כל הזכויות שמורות לפרסום אתרים באינטרנט מבית אקטיביטק בע"מ קידום אתרים