GB28181基本注册流程整理

1、基本注册流程

在这里插入图片描述

2、注意事项

  • 设备注册之后,在注册有效期到来时需要刷新注册;
  • 刷新注册和首次注册的注册ID必需要一致(exoisp框架中注册ID一致则Call-ID会一致),否则级联会出现异常);
  • 默认的注册有效期是3600s。在有效期内,设备需要每30S(默认间隔)发送keeplive MESSAGE到服务器,服务器若连续3次没有收到设备的keeplive消息,则认为设备掉线;

3、流程

《1》、首次注册流程抓包(eXosip_register_build_initial_register)
在这里插入图片描述

《2》、注册刷新抓包
在这里插入图片描述

调用eXosip_register_build_register来创建刷新注册的信息,需使用和注册时一致的注册ID,构建出的刷新消息自己会加上鉴权消息。

注意:刷新注册发出后服务器端不会像注册时发送401响应,而是直接回复200 OK响应

4、demo

《1》、注册

eXosip_lock(g_context_eXosip);
int register_id = eXosip_register_build_initial_register(g_context_eXosip, from, proxy, contact_str, expires, &reg);
if (0 > register_id)
{
    eXosip_unlock(g_context_eXosip);
    cout << "eXosip_register_build_initial_register error: " << ret;
    usleep(10*SECOND);   //10s
    continue ;
}


ret = eXosip_register_send_register(g_context_eXosip, register_id, reg);
eXosip_unlock(g_context_eXosip);
if (0 != ret)
{
    cout << "eXosip_register_send_register with error: " << ret;
}

eXosip_register_build_initial_register调用成功可返回注册ID,注册刷新用,也可以在事件处理流程收到远程的200 OK中获得,如果注册成功,两者以一样的。
200 ok处获取如下:
在这里插入图片描述

《2》、注册刷新

/* 注册刷新 */
eXosip_lock(g_context_eXosip);
int ret = eXosip_register_build_register(g_context_eXosip, m_register_id, expires, &reg);  /* m_register_id 首次注册保存下来的注册ID */
if(ret != OSIP_SUCCESS)
{
     cout << "eXosip_register_build_register fail !!! " ;
     eXosip_unlock(g_context_eXosip);
     sleep(10);   //10s
      continue;
}

ret = eXosip_register_send_register(g_context_eXosip, m_register_id, reg);
if(ret != OSIP_SUCCESS)
{
   cout << "eXosip_register_send_register fail !!! " ;
}

eXosip_unlock(g_context_eXosip);

5、一些字段解释

在这里插入图片描述

6、 参考

[1]、GBT 28181-2016公共安全视频监控联网系统信息传输、交换、控制技术要求.pdf
[2]、exoisp注册实现demo
[3]、认证字段解释参考

  • 1
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值