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), האפליקציה יכולה להעביר וקטור בייט ריק. הפונקציה הזו מפעילה את הקריאה החוזרת שצוינה בתגובה לבקשה. אם הפעולה מצליחה, ייווצר הכיתוב 'החיבור אושר' או 'החיבור נדחה' תשובה. אחרת, היא תיצור הודעה על כשל. במקרה של חיבור קביל, האפליקציה יכולה לשלוח הודעות לנקודת הקצה המרוחקת, והאפליקציה תפעיל את המאזינים שצוין בעת קבלת הודעה או התנתקות מנקודת הקצה המרוחקת.

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 כשהפרסום מתחיל או נכשל. הקריאה החוזרת הזו מקבלת מידע על נקודת הקצה (endpoint) לגבי הצלחה או קוד שגיאה במקרה של כשל. הפונקציה הזו מפעילה את 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(). אם כבר יש האזנה שנרשם למציאת נקודות קצה למזהה השירות שצוין, הקריאה הזו תיכשל.

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

 ~NearbyConnections()