跳到主要内容

API 使用示例

← 返回 API 参考


目录


完整的用户配置

此示例演示从头开始配置新用户的完整工作流程。该过程涉及在创建用户之前创建所有必需的配置文件和组件。

先决条件: 此示例使用 jq 进行 JSON 解析。使用 apt-get install jqbrew install jq 安装。

相关部分:

# 1. 创建密钥集
KEY_SET_ID=$(curl -k -X POST https://hss.example.com:8443/api/key_set \
-H "Content-Type: application/json" \
-d '{
"ki": "0123456789ABCDEF0123456789ABCDEF",
"opc": "FEDCBA9876543210FEDCBA9876543210",
"authentication_algorithm": "milenage",
"amf": "8000",
"sqn": 0
}' | jq -r '.response.id')

# 2. 创建 APN QoS 配置文件
APN_QOS_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/qos_profile \
-H "Content-Type: application/json" \
-d '{
"name": "默认互联网 QoS",
"allocation_retention_priority": 8,
"apn_ambr_dl_kbps": 50000,
"apn_ambr_ul_kbps": 25000,
"pre_emption_capability": true,
"pre_emption_vulnerability": true,
"qci": 9
}' | jq -r '.response.id')

# 3. 创建 APN 标识符
APN_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/identifier \
-H "Content-Type: application/json" \
-d '{
"apn": "internet",
"ip_version": "ipv4v6"
}' | jq -r '.response.id')

# 4. 创建 APN 配置文件
APN_PROFILE_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/profile \
-H "Content-Type: application/json" \
-d "{
\"apn_identifier_id\": $APN_ID,
\"apn_qos_profile_id\": $APN_QOS_ID,
\"name\": \"互联网 APN\"
}" | jq -r '.response.id')

# 5. 创建 EPC 配置文件
EPC_PROFILE_ID=$(curl -k -X POST https://hss.example.com:8443/api/epc/profile \
-H "Content-Type: application/json" \
-d "{
\"apn_profiles\": [$APN_PROFILE_ID],
\"name\": \"标准数据计划\",
\"network_access_mode\": \"packet_only\",
\"tracking_area_update_interval_seconds\": 600,
\"ue_ambr_dl_kbps\": 100000,
\"ue_ambr_ul_kbps\": 50000
}" | jq -r '.response.id')

# 6. 创建用户
SUBSCRIBER_ID=$(curl -k -X POST https://hss.example.com:8443/api/subscriber \
-H "Content-Type: application/json" \
-d "{
\"imsi\": \"001001123456789\",
\"key_set_id\": $KEY_SET_ID,
\"epc_profile_id\": $EPC_PROFILE_ID
}" | jq -r '.response.id')

echo "用户成功配置,ID: $SUBSCRIBER_ID"

创建内容:

此配置工作流程创建一个完整的用户,包括:

  1. 加密密钥 (密钥集) - 用于身份验证
  2. 数据服务配置文件 (EPC 配置文件) - 带宽和网络访问设置
  3. APN 配置 (APN 配置文件) - 带有 QoS 的接入点
  4. 用户记录 (用户) - 实际的用户实体

后续步骤:

另见:


完整的静态 IP 配置

此示例演示从头开始配置带有静态 IP 地址的用户。

场景: 配置一个需要在“互联网” APN 上使用静态 IPv4 地址的 IoT 设备用户。

# 先决条件:必须安装 jq (apt-get install jq 或 brew install jq)

# 1. 创建密钥集
KEY_SET_ID=$(curl -k -X POST https://hss.example.com:8443/api/key_set \
-H "Content-Type: application/json" \
-d '{
"ki": "0123456789ABCDEF0123456789ABCDEF",
"opc": "FEDCBA9876543210FEDCBA9876543210",
"authentication_algorithm": "milenage",
"amf": "8000",
"sqn": 0
}' | jq -r '.response.id')

# 2. 创建 APN QoS 配置文件
APN_QOS_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/qos_profile \
-H "Content-Type: application/json" \
-d '{
"name": "IoT 最佳努力",
"allocation_retention_priority": 8,
"apn_ambr_dl_kbps": 10000,
"apn_ambr_ul_kbps": 5000,
"pre_emption_capability": false,
"pre_emption_vulnerability": false,
"qci": 9
}' | jq -r '.response.id')

# 3. 创建 APN 标识符
APN_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/identifier \
-H "Content-Type: application/json" \
-d '{
"apn": "internet",
"ip_version": "ipv4"
}' | jq -r '.response.id')

# 4. 创建 APN 配置文件
APN_PROFILE_ID=$(curl -k -X POST https://hss.example.com:8443/api/apn/profile \
-H "Content-Type: application/json" \
-d "{
\"apn_identifier_id\": $APN_ID,
\"apn_qos_profile_id\": $APN_QOS_ID,
\"name\": \"IoT 互联网 APN\"
}" | jq -r '.response.id')

# 5. 为 APN 创建静态 IP
STATIC_IP_ID=$(curl -k -X POST https://hss.example.com:8443/api/epc/static_ip \
-H "Content-Type: application/json" \
-d "{
\"apn_profile_id\": $APN_PROFILE_ID,
\"ipv4_static_ip\": \"100.64.1.100\"
}" | jq -r '.response.id')

# 6. 创建 EPC 配置文件
EPC_PROFILE_ID=$(curl -k -X POST https://hss.example.com:8443/api/epc/profile \
-H "Content-Type: application/json" \
-d "{
\"apn_profiles\": [$APN_PROFILE_ID],
\"name\": \"IoT 数据计划\",
\"network_access_mode\": \"packet_only\",
\"tracking_area_update_interval_seconds\": 600,
\"ue_ambr_dl_kbps\": 10000,
\"ue_ambr_ul_kbps\": 5000
}" | jq -r '.response.id')

# 7. 创建 MSISDN(电话号码)
MSISDN_ID=$(curl -k -X POST https://hss.example.com:8443/api/msisdn \
-H "Content-Type: application/json" \
-d '{
"msisdn": "14155551000"
}' | jq -r '.response.id')

# 8. 创建带有静态 IP 的用户
SUBSCRIBER_ID=$(curl -k -X POST https://hss.example.com:8443/api/subscriber \
-H "Content-Type: application/json" \
-d "{
\"imsi\": \"001001999999999\",
\"key_set_id\": $KEY_SET_ID,
\"epc_profile_id\": $EPC_PROFILE_ID,
\"msisdns\": [$MSISDN_ID],
\"static_ips\": [$STATIC_IP_ID]
}" | jq -r '.response.id')

echo "IoT 用户成功配置!"
echo " 用户 ID: $SUBSCRIBER_ID"
echo " IMSI: 001001999999999"
echo " MSISDN: 14155551000"
echo " 静态 IPv4: 100.64.1.100(在 'internet' APN 上)"

创建内容:

此配置工作流程创建一个完整的 IoT 用户,包括:

  1. 加密密钥 (密钥集) - 用于身份验证
  2. APN 配置 (APN 配置文件) - “互联网”接入点
  3. 静态 IP 分配 (静态 IP) - 固定的 IPv4 地址 100.64.1.100
  4. 数据服务配置文件 (EPC 配置文件) - 针对 IoT 优化的带宽限制
  5. 电话号码 (MSISDN) - 用于设备识别
  6. 用户记录 (用户) - 完整的用户实体

结果:

当该用户连接到网络并连接到“互联网” APN 时,他们将收到静态 IP 地址 100.64.1.100,而不是动态 DHCP 地址。

后续步骤:

  • 添加其他 APN 和静态 IP:对每个 APN 重复步骤 2-5
  • 启用语音服务:创建并分配 IMS 配置文件
  • 配置漫游:创建并分配 漫游配置文件
  • 关联物理 SIM:创建并分配 SIM

另见:


← 返回 API 参考