简体中文

P2P分区设定

一、概述:

TUTK P2P SDK从3.1.10版本开始,新增了区域设定的API,用以限制APP或者设备只访问指定区域的服务器。目前TUTK支持的分区设定为:
  • 中国CN
  • 北美US
  • 欧洲EU
  • 亚洲ASIA

默认的全区架构:

image.png

全区架构下,APP或者设备将访问到各个区域的服务器。

分区后的架构:

image.png

分区下,APP或者设备只会访问到指定区域的服务器。
如需要符合GDPR规则,则需要将P2P服务器,APP,设备端的P2P 区域设定为欧洲区。

二、P2P服务器的分区设定

通过配置P2P服务器的启动脚本中的P2P_SERVICE_REGION字段进行设定:
#!/bin/bash
export P2P_LICENSE_KEY= #填写申请好的P2P License Key
export P2P_SERVER_KEY= #填写申请好的Server Key
export P2P_SERVICE_REGION=all #设定需要服务的区域,可以填写的值为 'asia', 'us', 'eu', 'cn' and 'all' 
export P2P_LOCAL_REGION=non-cn #P2P服务器所在的物理区域,可以填写的值为 'cn' or 'non-cn'
CUR_DIR=$(cd `dirname $0`; pwd) #用以获取程序运行目录,进行开机重启的路径配置
s=1
while [ "$s" != "0" ]
do
        if [ $(ps -A | grep -c 'IOTC_Server') == "0" ]; then
                ${CUR_DIR}/IOTC_Server --config=${CUR_DIR}/config.db -gP:G -p10001 &
        fi
        sleep 5
done

三、APP和设备端

API定义:
//4.3.3以下的版本的API定义,APP端跟设备端都使用此接口设定为同个区域。
#include "TUTKGlobalAPIs.h"
TUTK_GLOBAL_APIs int32_t TUTK_SDK_Set_Region_Code(const char * region);

//4.5.0以上版本的API定义
#include "IOTCAPIs.h"
APP端:
int32_t IOTC_Connect_ByUIDEx(const char * cszUID,int32_t SID,IOTCConnectInput* connectInput);
设备端:
TUTK_GLOBAL_APIs int32_t TUTK_SDK_Set_Region_Code(const char * region);
例子:
  • 设备端:
TUTK_SDK_Set_Region_Code(REGION_STRING_EU);//指定区域为EU,必须在IOTC_Initialize2之前设定。
APP端:
  • 4.3.3以下版本:
TUTK_SDK_Set_Region_Code(REGION_STRING_EU);//指定区域为EU,必须在IOTC_Initialize2之前设定。此方法为全局设定,任何设备都默认使用此分区进行连线
  • 4.5.0以上版本:
IOTCConnectInput input;
memset(&input,0,sizeof(input));
input.cb=sizeof(input);
input.authentication_type=AUTHENTICATE_BY_KEY;
strcpy(input.auth_key,"00000000");
strcpy(input.device_region,REGION_STRING_EU);//填写设备所在的区域
input.timeout=10;
IOTC_Connect_ByUIDEx(uid,IOTC_Get_SessionID(),&input);


即刻开启您的物联网之旅

联系解决方案专家
Kalay App
解决方案
新闻动态
公司动态
行业资讯
媒体报道
永续发展
经营者的话
社会参与
环境永续
公司治理

+86 755 27702549

7×24小时服务热线

法律声明 隐私权条款

关注“TUTK”

TUTK服务尽在掌握

© 2022 物联智慧科技(深圳)有限公司版权所有粤ICP备14023641号
在线咨询
扫一扫

TUTK服务尽在掌握

全国免费服务热线
+86 755 27702549

返回顶部