Changes between Version 10 and Version 11 of ZigbeeGateway
- Timestamp:
- Sep 24, 2010, 6:13:15 AM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ZigbeeGateway
v10 v11 31 31 * Main executable file: 32 32 * //ZB2SenseiGW.exe// 33 * Resource files :34 * //connect.bmb//, //disconnect.bmp//, //linked.bmp// 33 * Resource files on "//./Resources//" directory: 34 * //connect.bmb//, //disconnect.bmp//, //linked.bmp//, //sensei.ico// 35 35 * Configuration files: 36 36 * //ZB2SenseiGW.exe.config//, //rpi.xml// (more configuration files can be added, see [#Configuration Configuration section]) … … 78 78 The "**//Zb2SenseiGw.exe.config//**" file allows establishing: 79 79 80 "**//Language//**": Specify language of messages and some debug traces. Available languages are "//en//" (English, by default) and "//es//" (Spanish, but still some things will be English). 81 82 "**//AppName//**": Specify the name of the application ones connected to the net. By default is "//Zigbee to Sensei Gateway//" but is useful to have different names related to the net if several instances are running. Net MAC will be append between brackets. 83 80 84 "**//autoConnectType//**" and "**//autoConnectIndexCh//**": Indicates if you want to connect to the Zigbee island automatically when the application starts. It is very useful for non attended servers if the computer or application restarts for whatever reason. The possible values of "//autoConnectType//" are: 81 85 * "//off//": do not connect automatically. Manually connection needed after application start. "//autoConnectIndexCh//" value is ignored. … … 118 122 * replace "//**X**//" with "s" for a sensor or "a" for an actuator. 119 123 * "//**number**//" is the index of the sensor or actuator starting by 0. 120 If an individual file is present edit will be considered, if not the generic "rpi.xml" file is considered.124 If an individual file is present it will be considered, if not the generic "rpi.xml" file is considered. 121 125 122 126 In the "**//*.xml //**" file the following text variables will be replaced with the proper values by the application (case sensitive): … … 169 173 170 174 171 1. (and 4.) **Resource identification** formed by the gateway is **always the same** independently of the gateway. The identification depends only on node parameters. In our case it is used the MAC address and the sensor number position. When the node connects to a new island, the gateway forms the Resource End Point of the nodes resources.175 1. (and 4.) When the node connects to a new island, the gateway forms the Resource End Point of the nodes resources. **Resource identification** formed by the gateway is **always the same** independently of the gateway. The identification depends only on node parameters. In our case it is used the MAC address, that is unique, and the sensor number position. 172 176 2. (and 5.) Previously to publish in the Resource Directory, it discovers if the resource is already present using the RLI interface. 173 177 3. If the resource does not exist, it is published into the Resource Directory. 174 178 4. Node moves to gateway B. See 1 175 5. See 2176 6. But if the resource exists in the Resource Directory, it is updated. No replication of the same resource can be found in the Resource Directory.177 7. The new gateway informs the old gateway about the new location (URL) of the resource. The URL of the old gateway is obtained when consulting the Resource Directory (5.) In the response, the old gateway sends all the subscriptions information that this resource has, and theseare implemented by the new gateway.179 5. Resource is already present. In the response the old gateway URL is obtained. 180 6. As de resource exists in the Resource Directory, it is updated. No replication of the same resource can be found in the Resource Directory. 181 7. The new gateway informs the old gateway about the new location (URL) of the resource. In the response, the old gateway sends all the subscriptions information that this resource has, and they are implemented by the new gateway. 178 182 8. The old gateway in addition will redirect whatever access to this resource to the new URL using the http redirect response. This redirection is transparent to applications. 179 183 The result is that applications do not notice at all (if they do not want) that a resource has been moved. … … 181 185 For optimization, mobility commands interchanged between gateways are not sent at a resource basis, but only once for all the resources of a node. 182 186 === Mobility format interchanged between gateways=== 183 Th e new gateway informs about node mobility to the old gateway with a PUT http method addressing the node id (not resource id) with the following xml content:187 This section details the message (7.) of figure. The new gateway informs about node mobility to the old gateway with a PUT http method addressing the node id (not resource id) with the following xml content: 184 188 {{{ 185 189 <Mobility> … … 191 195 }}} 192 196 193 In the response, if the credentials are accepted, the old gateway informs about all the subscriptions that the resources of the node contains, with the following format:197 In the response, if the credentials are accepted, the old gateway informs about all the subscriptions that the resources of the node contains, with the following: 194 198 {{{ 195 199 <SubscriptionNodeInfo> … … 237 241 GET over "//**BASE_URL/nodeMAC **//" returns an html page with node information, sensors and actuators, and links for the subscriptions. 238 242 239