Connection Manager(D2S to D2D)
Connection manager(CM) enables D2S(cloud) to D2D(local) connection interchange smoothly(or vice versa) when Client Device sign-in to cloud and control server device via cloud(D2S control), and client device come back local area and connect local network, where server device connected(D2D), then IP connection changes from Cloud to Local netowrk. when network connection changed, client device could directly control server device through Local network.
- Initialize Connection Manager(CM) CM is initialized in OCInit(), when OCCMInitialize() invoked, camessage arbiter initialize remote device information and register callback of connection state change. when User Device sign-in on cloud, Device do FindResource for Own ID, CM update di(Device ID), Cloud IP, and port based on FindResource result for each device.
- Update remote device Info Table As Device disconnect from Cloud(D2S) and connect to Local AP(D2D) when Device disconnect from Cloud, network disconnet callback invoked, CM deletes Local IP and port of Remote Device Info Table. and Device connect to Local AP, network connected callback invoked, CM do FindResource implicitily. CM update Remote Device Info Table based on internal FindResource, and update Remote Device info table with IP and port based on di of found device. when client device request query on specific device, CM check Remote Device Info Table. if there is local IP and port on specific device id, then query send to local ip and port of specific device.