带鉴权信息的SIP呼叫

INVITE sip:1000@192.168.50.34SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

Max-Forwards: 70

Contact:<sip:1002@192.168.50.32:2445>

To: <sip:1000@192.168.50.34>

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 INVITE

Allow: INVITE, ACK, CANCEL,OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

Content-Type: application/sdp

Supported: replaces

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 596

v=0

o=- 1 2 IN IP4 192.168.50.32

s=CounterPath Bria Professional

c=IN IP4 192.168.50.32

t=0 0

m=audio 3564 RTP/AVP 107 119 100106 0 98 8 18 101

a=alt:1 3 : 3RJcASQD J+MIobg5192.168.50.32 3564

a=alt:2 2 : 7O4fx9KR Fs3hXCYf192.168.129.1 3564

a=alt:3 1 : 12zuNFYg Ya4ebcvU192.168.110.1 3564

a=fmtp:18 annexb=yes

a=fmtp:101 0-15

a=rtpmap:107 BV32/16000

a=rtpmap:119 BV32-FEC/16000

a=rtpmap:100 SPEEX/16000

a=rtpmap:106 SPEEX-FEC/16000

a=rtpmap:98 iLBC/8000

a=rtpmap:18 G729/8000

a=rtpmap:101 telephone-event/8000

a=sendrecv

a=x-rtp-session-id:56A9F9BE76774F7C962FD8ACDB1B86E1

发起一路呼叫,终端向server发送INVITE请求消息

Proxy Authentication Required

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=043de7350

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Proxy-Authenticate: Digest realm="soft3000",nonce="1dbb0165"

Content-Length: 0

,首先,用户在注冊时,必须带鉴权的认证消息;其次,server端必须开启呼叫鉴权

ACK sip:1000@192.168.50.34 SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

To:<sip:1000@192.168.50.34>;tag=043de7350

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 ACK

Content-Length: 0

消息确认,告诉server端,client已经收到

INVITE sip:1000@192.168.50.34SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

Max-Forwards: 70

Contact: <sip:1002@192.168.50.32:2445>

To: <sip:1000@192.168.50.34>

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Allow: INVITE, ACK, CANCEL,OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

Content-Type: application/sdp

Proxy-Authorization: Digestusername="1002",realm="soft3000 ",nonce="1dbb0165",uri="sip:1000@192.168.50.34",response="eb3a7e40a4797c2e7b549a6c30d2d091",algorithm=MD5

Supported: replaces

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 596

v=0

o=- 1 2 IN IP4 192.168.50.32

s=CounterPath Bria Professional

c=IN IP4 192.168.50.32

t=0 0

m=audio 3564 RTP/AVP 107 119 100106 0 98 8 18 101

a=alt:1 3 : 3RJcASQD J+MIobg5192.168.50.32 3564

a=alt:2 2 : 7O4fx9KR Fs3hXCYf 192.168.129.13564

a=alt:3 1 : 12zuNFYg Ya4ebcvU192.168.110.1 3564

a=fmtp:18 annexb=yes

a=fmtp:101 0-15

a=rtpmap:107 BV32/16000

a=rtpmap:119 BV32-FEC/16000

a=rtpmap:100 SPEEX/16000

a=rtpmap:106 SPEEX-FEC/16000

a=rtpmap:98 iLBC/8000

a=rtpmap:18 G729/8000

a=rtpmap:101 telephone-event/8000

a=sendrecv

a=x-rtp-session-id:56A9F9BE76774F7C962FD8ACDB1B86E1

向代理server又一次发起带鉴权的INVITE消息,鉴权信息详见,Proxy-Authorization头域,兴许的呼叫流程和基本呼叫流程一样。

SIP/2.0 100 Trying

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

INVITE sip:1000@192.168.50.32SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

Contact:<sip:1002@192.168.50.34:5060>

To: <sip:1000@192.168.50.32>

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Max-Forwards: 70

Supported: timer

Session-Expires: 90

Content-Type: application/sdp

Content-Length: 340

v=0

o=root 1062270166 1062270166 IN IP4192.168.50.34

s=session

c=IN IP4 192.168.50.34

t=0 0

m=audio 45294 RTP/AVP 0 8 18 3 114101

a=rtpmap:0 PCMU/8000

a=rtpmap:8 PCMA/8000

a=rtpmap:18 G729/8000

a=rtpmap:3 GSM/8000

a=rtpmap:114 AMR/8000

a=fmtp:114octet-align=1;mode-set=7,0

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

SIP/2.0 100 Trying

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To: <sip:1000@192.168.50.32>

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Content-Length: 0

SIP/2.0 180 Ringing

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Contact:<sip:1000@192.168.50.32:18553>

Content-Length: 0

SIP/2.0 180 Ringing

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Contact:<sip:1000@192.168.50.32:18553>

Allow-Events: telephone-event

Require: timer

Supported: timer

Session-Expires: 90;refresher=uac

Content-Type: application/sdp

Content-Length: 326

v=0

o=192.168.50.32 1074907112788190655 IN IP4 192.168.50.32

s=-

c=IN IP4 192.168.50.32

t=0 0

m=audio 26752 RTP/AVP 0 8 18 3 114101

a=rtpmap:0 PCMU/8000

a=rtpmap:8 PCMA/8000

a=rtpmap:18 G729/8000

a=rtpmap:3 GSM/8000

a=rtpmap:114 AMR/8000

a=fmtp:114 mode-set=0

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

ACK sip:1000@192.168.50.32:18553SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 ACK

Max-Forwards: 70

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID: OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Type: application/sdp

Content-Length: 199

v=0

o=root 113824166 113824166 IN IP4192.168.50.34

s=session

c=IN IP4 192.168.50.34

t=0 0

m=audio 41182 RTP/AVP 0 101

a=rtpmap:0 PCMU/8000

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

ACK sip:1000@192.168.50.34:5060SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-bd168751863dd812-1---d8754z-;rport

Max-Forwards: 70

Contact: <sip:1002@192.168.50.32:2445>

To:<sip:1000@192.168.50.34>;tag=118336ef9

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 ACK

Proxy-Authorization: Digestusername="1002",realm="ASG Switch",nonce="1dbb0165",uri="sip:1000@192.168.50.34",response="eb3a7e40a4797c2e7b549a6c30d2d091",algorithm=MD5

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 0

BYE sip:1000@192.168.50.34:5060SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-61057e021325140c-1---d8754z-;rport

Max-Forwards: 70

Contact:<sip:1002@192.168.50.32:2445>

To:<sip:1000@192.168.50.34>;tag=118336ef9

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 3 BYE

Proxy-Authorization: Digestusername="1002",realm="ASGSwitch",nonce="1dbb0165",uri="sip:1000@192.168.50.34:5060",response="b24a55d3ca4420c406eef5a2797e6411",algorithm=MD5

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Reason: SIP;description="UserHung Up"

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-61057e021325140c-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID: OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 3 BYE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

BYE sip:1000@192.168.50.32:18553SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 239 BYE

Max-Forwards: 70

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 239 BYE

Content-Length: 0

消息流程图

发起一路呼叫,终端向server发送INVITE请求消息。

响应,表示代理server要求终端带上鉴权信息。

向server发送INVITE消息,并带上鉴权信息。

回100Trying响应,表示呼叫已经在处理中。

终端转发INVITE请求消息。

向代理server回100Trying响应,告知代理server呼叫正在处理。

振铃,终端向代理server回180ring响应。

转发180ring响应。

向代理server回200OK响应消息,表示连接成功。

转发200OK响应消息。

收到200OK消息后,向代理server发送ACK消息进行确认。

通话建立成功。

挂机,并向代理server发送BYE消息。

收到BYE消息后,向代理server发送200OK消息。

18)通话结束。

带鉴权信息的SIP呼叫的更多相关文章

  1. 取消mod_sofia的呼叫鉴权

    FreeSWITCH中默认的SIP呼叫是要鉴权的,流程如下. 终端 FreeSWITCH A -----Invite------> FS A <----Trying------ FS A ...

  2. 网关鉴权后下游统一filter获取用户信息

    1. 场景描述 最近有点忙,在弄微服务nacos+springcloud gateway这块工作,以前只是简单应用,这次因为要对接10几个系统或者平台,还的鉴权,等后续稍微闲点了,把这块东西总结下. ...

  3. springcloud zuul shiro网关鉴权并向服务传递用户信息

    1.pom文件 <dependencies> <!--eureka客户端--> <dependency> <groupId>org.springfram ...

  4. 开放平台鉴权以及OAuth2.0介绍

    OAuth 2.0 协议 OAuth是一个开发标准,允许用户授权第三方网站或应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方网站或分享他们数据的内容. OAuth 2.0 ...

  5. android 高德地图出现【定位失败key鉴权失败】

    如题:android 高德地图出现[定位失败key鉴权失败] 原因:使用的是debug模式下的SHA1,发布的版本正确获取SHA1的方式见: 方法二使用 keytool(jdk自带工具),按照如下步骤 ...

  6. 自定义分布式RESTful API鉴权机制

    微软利用OAuth2为RESTful API提供了完整的鉴权机制,但是可能微软保姆做的太完整了,在这个机制中指定了数据持久化的方法是用EF,而且对于用户.权限等已经进行了封装,对于系统中已经有了自己的 ...

  7. spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法

    spring boot / cloud (十四) 微服务间远程服务调用的认证和鉴权的思考和设计,以及restFul风格的url匹配拦截方法 前言 本篇接着<spring boot / cloud ...

  8. Mongodb 认证鉴权那点事

    [TOC] 一.Mongodb 的权限管理 认识权限管理,说明主要概念及关系 与大多数数据库一样,Mongodb同样提供了一套权限管理机制. 为了体验Mongodb 的权限管理,我们找一台已经安装好的 ...

  9. apigw鉴权分析(1-2)腾讯开放平台 - 鉴权分析

    一.访问入口 http://wiki.open.qq.com/wiki/%E8%85%BE%E8%AE%AF%E5%BC%80%E6%94%BE%E5%B9%B3%E5%8F%B0%E7%AC%AC% ...

随机推荐

  1. Linux终端颜色和标题设置

    Linux给人最大的享受就是可以根据个人喜好去定制令自己舒服的系统配置,像终端颜色的设置就是一个典型的例子. 图1 系统默认状态下的终端显示 在没有经过自定义配置的终端下工作久了,难免容易疲劳,因为所 ...

  2. [LeetCode] Unique Paths 2

    Follow up for "Unique Paths": Now consider if some obstacles are added to the grids. How m ...

  3. winform实现listview中combox

    一.概要 因为要在项目中要在ListView中实现下拉框选择,用DataGrid的话,一个不美观,二个绑定数据麻烦,参考网上一种做法,就是单击ListView时,判断单击的区域,然后将Combox控件 ...

  4. vc 加载bmp位图并显示的方法

    方法一.显示位图文件 HBITMAP hBitmap=(HBITMAP)LoadImage(NULL,_T(“xxx.bmp”),Image_Bitmap,0,0,Lr_CreateDibSectio ...

  5. [读书笔记]黑客与画家[Hackers.and.Painters]

    (书生注:这本书写的不错.针对程序员,可以带来不同角度的想法,有助于反思自己的程序员工作.我甚至从中发现了自己爱用铅笔的原因...  尤其是其中关于黑客的定义,包括黑客认为的乐趣和目的,让人更深层次思 ...

  6. nginx源代码分析--模块分类

    ngx-modules Nginx 基本的模块大致能够分为四类: handler – 协同完毕client请求的处理.产生响应数据.比方模块, ngx_http_rewrite_module, ngx ...

  7. Tokyo Tyrant(TTServer)系列(四)-tcrmgr远程管理与调试

    Tokyo Tyrant(TTServer)系列-tcrmgr(远程管理与调试) tcrmgr是TokyoTyrant的管理工具,对ttserver进行管理与执行命令: 通过输入tcrmgr回车,能够 ...

  8. Emotion英语学习

    英语学习断断续续也快两年了,以前也蜻蜓点水地写过几篇总结,但是因为思考的少,只能得到一些表面的收获.从今年三月初到现在,口语阶段已经有三个月,感触较多,所以写这篇博客对这段时间英语学习的一个整体总结. ...

  9. javascript(五)验证

    <input id="domo"  type="text"> <script> function my_function(){ var ...

  10. js中获取jsp中的参数

    碰到一个问题需要再js中根据jsp中request的参数判断执行那段代码 第一种写法: if('${method}'=="add"){js代码段1}else{js代码段2} 第二种 ...