gpg::NearbyConnections

#include <nearby_connections.h>

ממשק API שמשמש ליצירת חיבורים ולתקשורת בין אפליקציות באותה רשת מקומית.

סיכום

בונים והורסים

NearbyConnections()
~NearbyConnections()

תפקידים ציבוריים

AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, IMessageListener *listener)
void
מאשר בקשת התחברות.
AcceptConnectionRequest(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, MessageListenerHelper helper)
void
מאשר בקשת התחברות.
Disconnect(const std::string & remote_endpoint_id)
void
מתנתק מנקודת הקצה המרוחקת עם המזהה שצוין.
RejectConnectionRequest(const std::string & remote_endpoint_id)
void
דחיית בקשת התחברות.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, IMessageListener *listener)
void
בקשות שיהיה חיבור עם נקודת קצה מרוחקת.
SendConnectionRequest(const std::string & name, const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload, ConnectionResponseCallback callback, MessageListenerHelper helper)
void
בקשת חיבור לנקודת קצה מרוחקת.
SendReliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
שולח הודעה אמינה לנקודת הקצה המרוחקת עם המזהה שצוין.
SendReliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
שליחת הודעה מהימנה לנקודות הקצה המרוחקות עם המזהים שצוינו.
SendUnreliableMessage(const std::string & remote_endpoint_id, const std::vector< uint8_t > & payload)
void
נשלחת הודעה לא מהימנה לנקודת הקצה המרוחקת עם המזהה שצוין.
SendUnreliableMessage(const std::vector< std::string > & remote_endpoint_ids, const std::vector< uint8_t > & payload)
void
נשלחת הודעה לא מהימנה לנקודות הקצה המרוחקות עם המזהים שצוינו.
StartAdvertising(const std::string & name, const std::vector< AppIdentifier > & app_identifiers, Duration duration, StartAdvertisingCallback start_advertising_callback, ConnectionRequestCallback request_callback)
void
מתחיל לפרסם נקודת קצה עבור אפליקציה מקומית.
StartDiscovery(const std::string & service_id, Duration duration, IEndpointDiscoveryListener *listener)
void
מוצא נקודות קצה מרוחקות עם מזהה השירות שצוין, ומפעיל את ה-listener שוב ושוב כשהאפליקציה מוצאת נקודות קצה ומאבדת אותן.
StartDiscovery(const std::string & service_id, Duration duration, EndpointDiscoveryListenerHelper helper)
void
חיפוש נקודות קצה מרוחקות עם מזהה השירות שצוין.
Stop()
void
התנתקות מכל נקודות הקצה המרוחקות, ומפסיקה את תהליך הפרסום או הגילוי של הנתונים שמתבצעים.
StopAdvertising()
void
הפרסום של נקודת הקצה המקומית ייפסק.
StopDiscovery(const std::string & service_id)
void
מפסיק למצוא נקודות קצה מרוחקות עבור מזהה שירות שצוין קודם לכן.

מחלקות

gpg::NearbyConnections::Builder

מחלקת Builder שמשמשת לבניית אובייקטים של NearbyConnections.

תפקידים ציבוריים

AcceptConnectionRequest

void AcceptConnectionRequest(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  IMessageListener *listener
)

מאשר בקשת התחברות.

לאחר מכן, האפליקציה תוכל לשלוח הודעות לנקודת הקצה שצוינה ולקבל אותן ממנה. אפשר לעשות זאת באמצעות listener עד שהאפליקציה תנותק מנקודת הקצה השנייה. הערך remote_endpoint_id חייב להיות זהה למזהה של נקודת הקצה המרוחקת שביקשה את החיבור. המזהה ConnectionRequestCallback מספק. ל-payload יש אפשרות להחזיק הודעה כדי לשלוח אותה יחד עם תגובת החיבור. listener מציין מאזינים שיקבלו התראה על אירועים בחיבור הזה.

AcceptConnectionRequest

void AcceptConnectionRequest(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  MessageListenerHelper helper
)

מאשר בקשת התחברות.

הפונקציה הזו שונה רק מ-AcceptConnectionRequest בכך שהיא משתמשת ב-MessageListenerHelper, במקום ב-IMessageListener.

ניתוק

void Disconnect(
  const std::string & remote_endpoint_id
)

מתנתק מנקודת הקצה המרוחקת עם המזהה שצוין.

NearbyConnections

 NearbyConnections()

RejectConnectionRequest

void RejectConnectionRequest(
  const std::string & remote_endpoint_id
)

דחיית בקשת התחברות.

הערך remote_endpoint_id חייב להיות זהה למזהה של נקודת הקצה המרוחקת שביקשה את החיבור. המזהה ConnectionRequestCallback מספק.

SendConnectionRequest

void SendConnectionRequest(
  const std::string & name,
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  ConnectionResponseCallback callback,
  IMessageListener *listener
)

בקשות שיהיה חיבור עם נקודת קצה מרוחקת.

name הוא השם שהאפליקציה יכולה להציג למשתמשים במכשיר השני כדי לזהות את נקודת הקצה הזו. אם תציינו מחרוזת ריקה, המערכת תשתמש בשם המכשיר. remote_endpoint_id הוא המזהה של נקודת הקצה המרוחקת שאליה האפליקציה הזו שולחת בקשת התחברות. ל-payload יש אפשרות להחזיק הודעה מותאמת אישית כדי לשלוח אותה יחד עם בקשת ההתחברות. לחלופין, במקום מטען ייעודי (payload), האפליקציה יכולה להעביר וקטור בייטים ריק. הפונקציה הזו מפעילה את הקריאה החוזרת (callback) שצוינה בתגובה לבקשה. אם הפעולה תצליח, תופיע התגובה 'החיבור התקבל' או 'החיבור נדחה'. אחרת, תתקבל הודעת כשל. אם החיבור מאושר, האפליקציה יכולה לשלוח הודעות לנקודת הקצה המרוחקת, והאפליקציה מפעילה את המאזין שצוין עם קבלת ההודעה או הניתוק מנקודת הקצה המרוחקת.

SendConnectionRequest

void SendConnectionRequest(
  const std::string & name,
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload,
  ConnectionResponseCallback callback,
  MessageListenerHelper helper
)

בקשת חיבור לנקודת קצה מרוחקת.

שונה מ-SendConnectionRequest רק בכך שהוא משתמש ב-MessageListenerHelper במקום ב-IMessageListener.

SendReliableMessage

void SendReliableMessage(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload
)

שולח הודעה אמינה לנקודת הקצה המרוחקת עם המזהה שצוין.

SendReliableMessage

void SendReliableMessage(
  const std::vector< std::string > & remote_endpoint_ids,
  const std::vector< uint8_t > & payload
)

שליחת הודעה מהימנה לנקודות הקצה המרוחקות עם המזהים שצוינו.

SendUnreliableMessage

void SendUnreliableMessage(
  const std::string & remote_endpoint_id,
  const std::vector< uint8_t > & payload
)

נשלחת הודעה לא מהימנה לנקודת הקצה המרוחקת עם המזהה שצוין.

SendUnreliableMessage

void SendUnreliableMessage(
  const std::vector< std::string > & remote_endpoint_ids,
  const std::vector< uint8_t > & payload
)

נשלחת הודעה לא מהימנה לנקודות הקצה המרוחקות עם המזהים שצוינו.

StartAdvertising

void StartAdvertising(
  const std::string & name,
  const std::vector< AppIdentifier > & app_identifiers,
  Duration duration,
  StartAdvertisingCallback start_advertising_callback,
  ConnectionRequestCallback request_callback
)

מתחיל לפרסם נקודת קצה עבור אפליקציה מקומית.

name יכול להיות השם שהאפליקציה מציגה למשתמשים כדי לזהות את נקודת הקצה. אם תציינו מחרוזת ריקה, המערכת תשתמש בשם המכשיר. אם צוין, app_identifiers מציין איך להתקין או להפעיל את האפליקציה הזו בפלטפורמות שונות. duration מציין את משך הזמן (באלפיות שנייה) שבו המודעה תפעל, אלא אם האפליקציה מפעילה StopAdvertising() או Stop() לפני שמשך הזמן יפוג. אם הערך של duration שווה ל-gpg::Duration::zero(), הפרסום ימשיך ללא הגבלת זמן עד שהאפליקציה תפעיל את האפליקציה StopAdvertising(). הפונקציה הזו מפעילה את start_advertising_callback כשהפרסום מתחיל או נכשל. הקריאה החוזרת (callback) הזו מקבלת את הפרטים של נקודת הקצה לגבי הצלחה או קוד שגיאה במקרה של כישלון. הפונקציה הזו מפעילה את request_callback כשנקודת קצה (endpoint) מרוחקת מבקשת חיבור לנקודת הקצה של האפליקציה. הפונקציה הזו ממשיכה לפרסם את הנוכחות של נקודת הקצה הזו עד שהאפליקציה מפעילה את StopAdvertising או עד שיחלוף משך הזמן הזה. אם כבר מפורסמת נקודת קצה, הקריאה הזו תיכשל.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  IEndpointDiscoveryListener *listener
)

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

הפעולה הזו תימשך עד שהאפליקציה תפעיל את StopDiscovery עם מזהה השירות שצוין. service_id צריך להתאים לערך שאפליקציות מספקות בפרסום באמצעות StartAdvertising. duration מציין את משך הזמן המקסימלי (באלפיות שנייה) להפעלת הגילוי (הוא עשוי להפסיק לפעול מוקדם יותר אם האפליקציה מפעילה את StopDiscovery()). אם הערך של Duration שווה ל-gpg::Duration::zero(), הגילוי ימשיך ללא הגבלת זמן עד שהאפליקציה תפעיל את StopDiscovery() או את Stop(). אם כבר רשום מאזין לחיפוש נקודות קצה (endpoint) עבור מזהה השירות שצוין, הקריאה הזו תיכשל.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  EndpointDiscoveryListenerHelper helper
)

חיפוש נקודות קצה מרוחקות עם מזהה השירות שצוין.

הפונקציה הזו שונה מ-StartDiscovery רק בכך שהיא משתמשת ב-EndpointDiscoveryListenerHelper במקום ב-IEndpointDiscoveryListener.

עצירה

void Stop()

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

ניקוי המצב הפנימי.

StopAdvertising

void StopAdvertising()

הפרסום של נקודת הקצה המקומית ייפסק.

אם עושים זאת, החיבורים הקיימים לא נמחקים.

StopDiscovery

void StopDiscovery(
  const std::string & service_id
)

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

~חיבורים בקרבת מקום

 ~NearbyConnections()