nl:: Weave:: WeaveMessageLayer
#include <src/lib/core/WeaveMessageLayer.h>
คำจำกัดความของคลาส WeaveMessageLayer ซึ่งจัดการการสื่อสารกับโหนด Weave อื่นๆ
สรุป
โดยใช้หนึ่งในปลายทาง InetLayer หลายรายการเพื่อสร้างช่องทางการสื่อสารกับโหนด Weave อื่นๆ
ผู้ผลิตและผู้ทำลาย |
|
---|---|
WeaveMessageLayer(void)
เครื่องมือสร้างเลเยอร์ Weave Message
|
ประเภทสาธารณะ |
|
---|---|
AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
|
Typedefvoid(*
ฟังก์ชันนี้เป็น Callback เลเยอร์ที่สูงขึ้นสำหรับการรายงานข้อผิดพลาดระหว่างการจัดการการเชื่อมต่อ TCP ที่เข้ามาใหม่ |
CallbackRemovedFunct)(void *listenerState)
|
Typedefvoid(*
มีการเรียกใช้ฟังก์ชันนี้เพื่อนำ Callback ออก |
ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
|
Typedefvoid(*
ฟังก์ชันนี้เป็น Callback ของเลเยอร์ที่สูงขึ้นสำหรับการจัดการการเชื่อมต่อ TCP ที่เข้ามาใหม่ |
MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
|
Typedefvoid(*
ฟังก์ชันนี้เป็น Callback ของแอปพลิเคชันสำหรับการรายงานการเปลี่ยนแปลงกิจกรรมเลเยอร์ข้อความ |
MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
Typedefvoid(*
ฟังก์ชันนี้คือ Callback ของเลเยอร์ที่สูงกว่าซึ่งเรียกใช้เมื่อได้รับข้อความ Weave ผ่าน UDP |
ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
|
Typedefvoid(*
ฟังก์ชันนี้คือ Callback ของเลเยอร์ที่สูงขึ้นซึ่งถูกเรียกใช้เมื่อพบข้อผิดพลาด |
State{
|
enum สถานะของ WeaveMessageLayer |
TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
|
Typedefvoid(*
ฟังก์ชันนี้คือ Callback ของเลเยอร์ที่สูงกว่าซึ่งเรียกใช้เมื่อได้รับแพ็กเกต Tunneled ผ่านอุโมงค์ UDP ในเครื่อง |
แอตทริบิวต์สาธารณะ |
|
---|---|
AppState
|
void *
ตัวชี้ไปยังออบเจ็กต์สถานะเฉพาะแอปพลิเคชัน
|
ExchangeMgr
|
[READ ONLY] ออบเจ็กต์ WeaveExchangeManager ที่เชื่อมโยง
|
FabricState
|
[READ ONLY] ออบเจ็กต์ WeaveFabricState ที่เกี่ยวข้อง
|
IncomingConIdleTimeout
|
uint32_t
การหมดเวลาเมื่อไม่มีการใช้งานเริ่มต้น (เป็นมิลลิวินาที) สำหรับการเชื่อมต่อขาเข้า
|
Inet
|
InetLayer *
[READ ONLY] ออบเจ็กต์ InetLayer ที่เกี่ยวข้อง
|
IsListening
|
bool
[อ่านอย่างเดียว] True หากฟังการเชื่อมต่อ/ข้อความขาเข้า และเป็น false หากรับข้อมูลเป็น "เท็จ"
|
OnAcceptError
|
|
OnConnectionReceived
|
|
OnMessageReceived
|
|
OnReceiveError
|
|
OnUDPTunneledMessageReceived
|
|
SecurityMgr
|
[READ ONLY] ออบเจ็กต์ WeaveSecurityManager ที่เชื่อมโยง
|
State
|
uint8_t
[READ ONLY] สถานะของออบเจ็กต์ WeaveMessageLayer
|
SystemLayer
|
|
mDropMessage
|
bool
ภายในและสำหรับการแก้ไขข้อบกพร่องเท่านั้น เมื่อตั้งค่าแล้ว WeaveMessageLayer จะส่งข้อความและแสดงผลอีกครั้ง
|
ฟังก์ชันสาธารณะ |
|
---|---|
ClearUnsecuredConnectionListener(ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved)
|
|
CloseEndpoints(void)
|
ปิดปลายทาง TCP และ UDP ที่เปิดอยู่ทั้งหมด
|
CreateTunnel(WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS)
|
สร้าง WeaveConnectionTunnel โดยเชื่อมโยง WeaveConnections ที่ระบุ 2 รายการเข้าด้วยกัน
|
DecodeHeader(PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart)
|
ถอดรหัสส่วนหัวของเลเยอร์ข้อความ Weave จากข้อความ Weave ที่ได้รับ
|
EncodeMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve)
|
เข้ารหัสส่วนหัว WeaveMessageLayer ลงใน PacketBuffer
|
EncodeMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
เข้ารหัสส่วนหัวของเลเยอร์ Weave Message ลงใน PacketBuffer
|
EphemeralUDPPortEnabled(void) const
|
bool
ตรวจสอบว่าควรส่งการแลกเปลี่ยน Weave UDP ที่เริ่มต้นในท้องถิ่นจากพอร์ตแหล่งที่มา UDP ชั่วคราวหรือไม่
|
GetConnectionPoolStats(nl::Weave::System::Stats::count_t & aOutInUse) const
|
void
ดูจำนวน WeaveConnections ที่ใช้งานและขนาดของพูล
|
IPv4ListenEnabled(void) const
|
bool
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับการสื่อสารขาเข้าผ่าน IPv4 หรือไม่
|
IPv6ListenEnabled(void) const
|
bool
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับการสื่อสารขาเข้าผ่าน IPv4 หรือไม่
|
Init(InitContext *context)
|
เริ่มต้นออบเจ็กต์เลเยอร์ Weave Message
|
IsBoundToLocalIPv4Address(void) const
|
bool
ตรวจสอบว่า WeaveMessageLayer เชื่อมโยงกับที่อยู่ IPv4 ในเครื่องหรือไม่
|
IsBoundToLocalIPv6Address(void) const
|
bool
ตรวจสอบว่า WeaveMessageLayer เชื่อมโยงกับที่อยู่ IPv6 ในเครื่องหรือไม่
|
IsMessageLayerActive(void)
|
bool
|
NewConnection(void)
|
สร้างออบเจ็กต์ WeaveConnection ใหม่จากพูล
|
NewConnectionTunnel(void)
|
สร้างออบเจ็กต์ WeaveConnectionTunnel ใหม่จากพูล
|
ReEncodeMessage(PacketBuffer *buf)
|
|
RefreshEndpoints(void)
|
รีเฟรชปลายทาง InetLayer ตามสถานะปัจจุบันของอินเทอร์เฟซเครือข่ายของระบบ
|
ResendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
|
ResendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
|
ResendMessage(const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
|
ResendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
|
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave โดยใช้ปลายทาง UDP ของ Inetlayer ที่สำคัญหลังจากการเข้ารหัส
|
SendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave โดยใช้ปลายทาง UDP ของ Inetlayer ที่สำคัญหลังจากการเข้ารหัส
|
SendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ส่งข้อความ Weave โดยใช้ปลายทาง UDP ของ Inetlayer ที่สำคัญหลังจากการเข้ารหัส
|
SendUDPTunneledMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
ฟังก์ชันเพื่อส่งแพ็กเกต Tunneled ผ่านอุโมงค์ UDP ในเครื่อง
|
SetSignalMessageLayerActivityChanged(MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler)
|
void
ตั้งค่าเครื่องจัดการแอปพลิเคชันที่จะเรียกใช้ทุกครั้งที่กิจกรรมของเลเยอร์ข้อความมีการเปลี่ยนแปลง
|
SetTCPListenEnabled(bool val)
|
void
เปิดหรือปิดใช้การฟังการเชื่อมต่อ TCP ขาเข้าใน WeaveMessageLayer
|
SetUDPListenEnabled(bool val)
|
void
เปิดหรือปิดใช้การฟังข้อความ UDP ขาเข้าใน WeaveMessageLayer
|
SetUnsecuredConnectionListener(ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState)
|
|
Shutdown(void)
|
|
TCPListenEnabled(void) const
|
bool
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับการเชื่อมต่อ TCP ขาเข้าหรือไม่
|
UDPListenEnabled(void) const
|
bool
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับข้อความ UDP ขาเข้าหรือไม่
|
UnsecuredListenEnabled(void) const
|
bool
เปิดหรือปิดใช้การเริ่มการแลกเปลี่ยน Weave UDP จากพอร์ตต้นทาง UDP ชั่วคราว
|
ฟังก์ชันสาธารณะแบบคงที่ |
|
---|---|
GetMaxWeavePayloadSize(const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU)
|
uint32_t
รับขนาดเพย์โหลด Weave สูงสุดสำหรับการกำหนดค่าข้อความและ PacketBuffer ที่ระบุ
|
GetPeerDescription(char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con)
|
void
สร้างสตริงที่อธิบายโหนดเพียร์และข้อมูลการเชื่อมต่อที่อยู่ / การเชื่อมต่อที่เกี่ยวข้อง
|
GetPeerDescription(char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo)
|
void
สร้างสตริงที่อธิบายโหนดเพียร์ตามข้อมูลที่เชื่อมโยงกับข้อความที่ได้รับจากเพียร์
|
ชั้นเรียน |
|
---|---|
nl:: |
คำจำกัดความของคลาส InitContext |
ประเภทสาธารณะ
AcceptErrorFunct
void(* AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
ฟังก์ชันนี้เป็น Callback เลเยอร์ที่สูงขึ้นสำหรับการรายงานข้อผิดพลาดระหว่างการจัดการการเชื่อมต่อ TCP ที่เข้ามาใหม่
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
CallbackRemovedFunct
void(* CallbackRemovedFunct)(void *listenerState)
มีการเรียกใช้ฟังก์ชันนี้เพื่อนำ Callback ออก
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
ConnectionReceiveFunct
void(* ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
ฟังก์ชันนี้เป็น Callback ของเลเยอร์ที่สูงขึ้นสำหรับการจัดการการเชื่อมต่อ TCP ที่เข้ามาใหม่
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
MessageLayerActivityChangeHandlerFunct
void(* MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
ฟังก์ชันนี้เป็น Callback ของแอปพลิเคชันสำหรับการรายงานการเปลี่ยนแปลงกิจกรรมเลเยอร์ข้อความ
ระบบจะถือว่าเลเยอร์ข้อความทำงานอยู่หากมีคำขอซิงค์ข้อมูลโต้แย้งข้อความที่รอดำเนินการอย่างน้อย 1 รายการหรือ Open Exchange
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
ฟังก์ชันนี้คือ Callback ของเลเยอร์ที่สูงกว่าซึ่งเรียกใช้เมื่อได้รับข้อความ Weave ผ่าน UDP
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
ReceiveErrorFunct
void(* ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
ฟังก์ชันนี้คือ Callback ของเลเยอร์ที่สูงขึ้นซึ่งถูกเรียกใช้เมื่อพบข้อผิดพลาด
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
รัฐ
State
สถานะของ WeaveMessageLayer
พร็อพเพอร์ตี้ | |
---|---|
kState_Initialized
|
ระบุเมื่อ WeaveMessageLayer เริ่มต้น |
kState_Initializing
|
ระบุเมื่อ WeaveMessageLayer อยู่ระหว่างการเริ่มต้น |
kState_NotInitialized
|
ระบุเมื่อยังไม่ได้เริ่มต้น WeaveMessageLayer |
TunneledMsgReceiveFunct
void(* TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
ฟังก์ชันนี้คือ Callback ของเลเยอร์ที่สูงกว่าซึ่งเรียกใช้เมื่อได้รับแพ็กเกต Tunneled ผ่านอุโมงค์ UDP ในเครื่อง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
แอตทริบิวต์สาธารณะ
AppState
void * AppState
ตัวชี้ไปยังออบเจ็กต์สถานะเฉพาะแอปพลิเคชัน
ExchangeMgr
WeaveExchangeManager * ExchangeMgr
[READ ONLY] ออบเจ็กต์ WeaveExchangeManager ที่เชื่อมโยง
IncomingConIdleTimeout
uint32_t IncomingConIdleTimeout
ระยะหมดเวลาเมื่อไม่มีการใช้งานเริ่มต้น (เป็นมิลลิวินาที) สำหรับการเชื่อมต่อขาเข้า
Inet
InetLayer * Inet
[READ ONLY] ออบเจ็กต์ InetLayer ที่เกี่ยวข้อง
IsListening
bool IsListening
[อ่านอย่างเดียว] True หากฟังการเชื่อมต่อ/ข้อความขาเข้า และเป็น false หากรับข้อมูลเป็น "เท็จ"
OnAcceptError
AcceptErrorFunct OnAcceptError
OnConnectionReceived
ConnectionReceiveFunct OnConnectionReceived
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnReceiveError
ReceiveErrorFunct OnReceiveError
OnUDPTunneledMessageReceived
TunneledMsgReceiveFunct OnUDPTunneledMessageReceived
SecurityMgr
WeaveSecurityManager * SecurityMgr
[READ ONLY] ออบเจ็กต์ WeaveSecurityManager ที่เชื่อมโยง
SystemLayer
System::Layer * SystemLayer
mDropMessage
bool mDropMessage
ภายในและสำหรับการแก้ไขข้อบกพร่องเท่านั้น เมื่อตั้งค่าแล้ว WeaveMessageLayer จะส่งข้อความและแสดงผลอีกครั้ง
ฟังก์ชันสาธารณะ
ClearUnsecuredConnectionListener
WEAVE_ERROR ClearUnsecuredConnectionListener( ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved )
CloseEndpoints
WEAVE_ERROR CloseEndpoints( void )
ปิดปลายทาง TCP และ UDP ที่เปิดอยู่ทั้งหมด
จากนั้นล้มเลิก WeaveConnections ใดๆ ที่เปิดไว้ และปิดออบเจ็กต์ WeaveConnectionTunnel ทั้งหมดที่เปิดอยู่
ดูเพิ่มเติมที่Shutdown()
CreateTunnel
WEAVE_ERROR CreateTunnel( WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS )
สร้าง WeaveConnectionTunnel โดยเชื่อมโยง WeaveConnections ที่ระบุ 2 รายการเข้าด้วยกัน
เมื่อสร้างเสร็จสมบูรณ์ TCPEndPoints ที่สอดคล้องกับออบเจ็กต์ WeaveConnection จะส่งผ่านไปยัง WeaveConnectionTunnel มิฉะนั้น WeaveConnections จะปิด
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
ผลลัพธ์ |
|
DecodeHeader
WEAVE_ERROR DecodeHeader( PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart )
ถอดรหัสส่วนหัวของเลเยอร์ข้อความ Weave จากข้อความ Weave ที่ได้รับ
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
ผลลัพธ์ |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve )
เข้ารหัสส่วนหัว WeaveMessageLayer ลงใน PacketBuffer
รายละเอียด | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||
ผลลัพธ์ |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload )
เข้ารหัสส่วนหัวของเลเยอร์ Weave Message ลงใน PacketBuffer
รายละเอียด | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||||||
ผลลัพธ์ |
|
EphemeralUDPPortEnabled
bool EphemeralUDPPortEnabled( void ) const
ตรวจสอบว่าควรส่งการแลกเปลี่ยน Weave UDP ที่เริ่มต้นในท้องถิ่นจากพอร์ตแหล่งที่มา UDP ชั่วคราวหรือไม่
GetConnectionPoolStats
void GetConnectionPoolStats( nl::Weave::System::Stats::count_t & aOutInUse ) const
ดูจำนวน WeaveConnections ที่ใช้งานและขนาดของพูล
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
IPv4ListenEnabled
bool IPv4ListenEnabled( void ) const
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับการสื่อสารขาเข้าผ่าน IPv4 หรือไม่
IPv6ListenEnabled
bool IPv6ListenEnabled( void ) const
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับการสื่อสารขาเข้าผ่าน IPv4 หรือไม่
Init
WEAVE_ERROR Init( InitContext *context )
เริ่มต้นออบเจ็กต์เลเยอร์ Weave Message
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
ผลลัพธ์ |
|
IsBoundToLocalIPv4Address
bool IsBoundToLocalIPv4Address( void ) const
ตรวจสอบว่า WeaveMessageLayer เชื่อมโยงกับที่อยู่ IPv4 ในเครื่องหรือไม่
IsBoundToLocalIPv6Address
bool IsBoundToLocalIPv6Address( void ) const
ตรวจสอบว่า WeaveMessageLayer เชื่อมโยงกับที่อยู่ IPv6 ในเครื่องหรือไม่
IsMessageLayerActive
bool IsMessageLayerActive( void )
NewConnection
WeaveConnection * NewConnection( void )
สร้างออบเจ็กต์ WeaveConnection ใหม่จากพูล
รายละเอียด | |
---|---|
การคืนสินค้า |
ตัวชี้ไปยังออบเจ็กต์ WeaveConnection ที่สร้างขึ้นใหม่ หากสำเร็จ มิฉะนั้นจะเป็น NULL
|
NewConnectionTunnel
WeaveConnectionTunnel * NewConnectionTunnel( void )
สร้างออบเจ็กต์ WeaveConnectionTunnel ใหม่จากพูล
รายละเอียด | |
---|---|
การคืนสินค้า |
ตัวชี้ไปยังออบเจ็กต์ WeaveConnectionTunnel ที่สร้างขึ้นใหม่ หากสำเร็จ มิฉะนั้นจะเป็น NULL
|
ReEncodeMessage
WEAVE_ERROR ReEncodeMessage( PacketBuffer *buf )
RefreshEndpoints
WEAVE_ERROR RefreshEndpoints( void )
รีเฟรชปลายทาง InetLayer ตามสถานะปัจจุบันของอินเทอร์เฟซเครือข่ายของระบบ
รายละเอียด | |||||
---|---|---|---|---|---|
ผลลัพธ์ |
|
ResendMessage
WEAVE_ERROR ResendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
ผลลัพธ์ |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
ผลลัพธ์ |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
รายละเอียด | |||||||||
---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||
ผลลัพธ์ |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave ที่เข้ารหัสอีกครั้งโดยใช้ปลายทาง UDP ของ Inetlayer ที่เกี่ยวข้อง
หมายเหตุ: - หากไม่ได้ระบุที่อยู่ปลายทาง ให้พยายามระบุที่อยู่จากตัวระบุโหนดในส่วนหัวของข้อความ ล้มเหลวหากการดำเนินการนี้ไม่สามารถทำได้ -หากที่อยู่ปลายทางเป็นที่อยู่ผ้าสำหรับ Fabric และผู้โทรไม่ได้ระบุรหัสโหนดปลายทาง ให้ดึงข้อมูลจากที่อยู่ปลายทาง
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
ผลลัพธ์ |
|
SendMessage
WEAVE_ERROR SendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave โดยใช้ปลายทาง UDP ของ Inetlayer ที่สำคัญหลังจากการเข้ารหัส
รายละเอียด | |||||
---|---|---|---|---|---|
พารามิเตอร์ |
|
||||
ผลลัพธ์ |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave โดยใช้ปลายทาง UDP ของ Inetlayer ที่สำคัญหลังจากการเข้ารหัส
หมายเหตุ: - พอร์ตปลายทางที่ใช้คือ WEAVE_PORT - หากไม่มีการระบุที่อยู่ปลายทาง ให้พยายามค้นหาจากตัวระบุโหนดในส่วนหัวของข้อความ ล้มเหลวหากการดำเนินการนี้ไม่สามารถทำได้
-หากที่อยู่ปลายทางเป็นที่อยู่ผ้าสำหรับ Fabric และผู้โทรไม่ได้ระบุรหัสโหนดปลายทาง ให้ดึงข้อมูลจากที่อยู่ปลายทาง
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
ผลลัพธ์ |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ส่งข้อความ Weave โดยใช้ปลายทาง UDP ของ Inetlayer ที่สำคัญหลังจากการเข้ารหัส
หมายเหตุ: - หากไม่ได้ระบุที่อยู่ปลายทาง ให้พยายามระบุที่อยู่จากตัวระบุโหนดในส่วนหัวของข้อความ ล้มเหลวหากการดำเนินการนี้ไม่สามารถทำได้ -หากที่อยู่ปลายทางเป็นที่อยู่ผ้าสำหรับ Fabric และผู้โทรไม่ได้ระบุรหัสโหนดปลายทาง ให้ดึงข้อมูลจากที่อยู่ปลายทาง
รายละเอียด | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||||||
ผลลัพธ์ |
|
SendUDPTunneledMessage
WEAVE_ERROR SendUDPTunneledMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
ฟังก์ชันเพื่อส่งแพ็กเกต Tunneled ผ่านอุโมงค์ UDP ในเครื่อง
ส่งข้อความข้อมูล IPv6 ที่อุโมงค์ข้อมูลผ่าน UDP
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
ผลลัพธ์ |
|
SetSignalMessageLayerActivityChanged
void SetSignalMessageLayerActivityChanged( MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler )
ตั้งค่าเครื่องจัดการแอปพลิเคชันที่จะเรียกใช้ทุกครั้งที่กิจกรรมของเลเยอร์ข้อความมีการเปลี่ยนแปลง
โดยเฉพาะอย่างยิ่ง แอปพลิเคชันจะได้รับการแจ้งเตือนทุกครั้ง:
- จำนวนการเปลี่ยนแปลงของ Open Exchange
- จำนวนคำขอซิงค์ข้อมูลตัวนับข้อความที่รอดำเนินการเปลี่ยนจาก 0 เป็น 1 เป็นอย่างน้อย และกลับไปเป็น 0 ตัวแฮนเดิลทำหน้าที่เป็นสัญญาณทั่วไปที่ระบุว่ามีการสนทนาของ Weave ที่กำลังดำเนินอยู่หรือการตอบกลับที่รอดำเนินการหรือไม่ ต้องตั้งค่าเครื่องจัดการหลังจากเริ่มต้น WeaveMessageLayer แล้ว การปิด WeaveMessageLayer จะเป็นการล้างเครื่องจัดการปัจจุบัน
รายละเอียด | |||
---|---|---|---|
พารามิเตอร์ |
|
||
ผลลัพธ์ |
|
SetTCPListenEnabled
void SetTCPListenEnabled( bool val )
เปิดหรือปิดใช้การฟังการเชื่อมต่อ TCP ขาเข้าใน WeaveMessageLayer
หมายเหตุ: ต้องเรียก RefreshEndpoints()
หลังจากเปลี่ยนสถานะการฟัง TCP
SetUDPListenEnabled
void SetUDPListenEnabled( bool val )
เปิดหรือปิดใช้การฟังข้อความ UDP ขาเข้าใน WeaveMessageLayer
หมายเหตุ: ต้องเรียก RefreshEndpoints()
หลังจากเปลี่ยนสถานะการฟัง UDP
SetUnsecuredConnectionListener
WEAVE_ERROR SetUnsecuredConnectionListener( ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState )
ปิดการทำงาน
WEAVE_ERROR Shutdown( void )
ปิดปลายทางของเลเยอร์ Inet ที่เปิดอยู่ทั้งหมด รีเซ็ต Callback ของเลเยอร์ที่สูงกว่า ตัวแปรสมาชิก และออบเจ็กต์ทั้งหมด การเรียก Shutdown() จะสิ้นสุดออบเจ็กต์ WeaveMessageLayer
TCPListenEnabled
bool TCPListenEnabled( void ) const
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับการเชื่อมต่อ TCP ขาเข้าหรือไม่
UDPListenEnabled
bool UDPListenEnabled( void ) const
ตรวจสอบว่าได้กำหนดค่า WeaveMessageLayer ให้รับข้อความ UDP ขาเข้าหรือไม่
UnsecuredListenEnabled
bool UnsecuredListenEnabled( void ) const
เปิดหรือปิดใช้การเริ่มการแลกเปลี่ยน Weave UDP จากพอร์ตต้นทาง UDP ชั่วคราว
หมายเหตุ: ต้องเรียกใช้ RefreshEndpoints()
หลังจากเปลี่ยนสถานะพอร์ตชั่วคราวแล้ว ตรวจสอบว่าเปิดใช้การฟังที่ไม่ปลอดภัยอยู่หรือไม่
WeaveMessageLayer
WeaveMessageLayer( void )
เครื่องมือสร้างเลเยอร์ Weave Message
ฟังก์ชันสาธารณะแบบคงที่
GetMaxWeavePayloadSize
uint32_t GetMaxWeavePayloadSize( const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU )
รับขนาดเพย์โหลด Weave สูงสุดสำหรับการกำหนดค่าข้อความและ PacketBuffer ที่ระบุ
ขนาดเพย์โหลดสูงสุดที่แสดงผลจะไม่เกินพื้นที่ว่างสำหรับเพย์โหลดภายใน PacketBuffer ที่ระบุ
หากข้อความคือ UDP ขนาดเพย์โหลดสูงสุดที่แสดงผลได้จะไม่ส่งผลให้เกิดข้อความ Weave ที่จะไม่ทำให้ล้น UDP MTU ที่ระบุ
สุดท้าย ขนาดเพย์โหลดสูงสุดที่แสดงผลจะไม่ส่งผลให้เกิดข้อความ Weave ที่เกินขนาดข้อความ Weave สูงสุด
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
||||||
การคืนสินค้า |
ขนาดเพย์โหลด Weave สูงสุด
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con )
สร้างสตริงที่อธิบายโหนดเพียร์และข้อมูลการเชื่อมต่อที่อยู่ / การเชื่อมต่อที่เกี่ยวข้อง
สตริงที่สร้างขึ้นจะอยู่ในรูปแบบต่อไปนี้
([ ]: % , con )
รายละเอียด | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo )
สร้างสตริงที่อธิบายโหนดเพียร์ตามข้อมูลที่เชื่อมโยงกับข้อความที่ได้รับจากเพียร์
รายละเอียด | |||||||
---|---|---|---|---|---|---|---|
พารามิเตอร์ |
|