gpg::NearbyConnections

#include <nearby_connections.h>

يشير ذلك المصطلح إلى واجهة برمجة تطبيقات تُستخدَم لإنشاء الاتصالات والتواصل بين التطبيقات على الشبكة المحلية نفسها.

ملخّص

الدلالة والهياكل

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
يعثر على نقاط النهاية البعيدة باستخدام معرّف الخدمة المحدّد، ويستدعي المستمع بشكل متكرّر عند عثور التطبيق على نقاط النهاية ويفقدها.
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" الاحتفاظ برسالة مخصّصة لإرسالها مع طلب الربط. بدلاً من حمولة البيانات، يمكن لتطبيقك تمرير متجه بايت فارغ. تستدعي هذه الدالة معاودة الاتصال المحددة استجابةً للطلب. إذا كانت العملية ناجحة، فإنها ستنتج استجابة "تم قبول الاتصال" أو "تم رفض الاتصال". وإلا، ستنشئ رسالة إخفاق. في حال وجود اتصال مقبول، يمكن للتطبيق إرسال رسائل إلى نقطة النهاية البعيدة، ويستدعي التطبيق المستمع المحدد عند استلام رسالة أو قطع الاتصال بنقطة النهاية البعيدة.

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 عند بدء عرض الإعلانات أو تعذُّر إكمالها. تتلقّى معاودة الاتصال هذه معلومات نقطة النهاية عند النجاح أو رمز خطأ عند تعذُّر إتمام الإعلان. تستدعي هذه الدالة request_callback عندما تطلب نقطة نهاية بعيدة الاتصال بنقطة نهاية التطبيق. تستمر هذه الدالة في الإعلان عن توفُّر نقطة النهاية هذه إلى أن يستدعي التطبيق StopAdvertising، أو تنقضي المدة. إذا سبق الإعلان عن نقطة نهاية، سيتعذّر إتمام هذا الطلب.

StartDiscovery

void StartDiscovery(
  const std::string & service_id,
  Duration duration,
  IEndpointDiscoveryListener *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()