sip消息概念(一)

SIP 也是类似 HTTP 的一个协议集合,在网上搜索了一下相关的信息,摘录如下:

 

SIP消息的第一行包含消息的类型和所使用的SIP版本(2.0)。在请求中,这一行还包含一个叫做SIP URI的地址。这代表消息的目的地。
这个例子说明了如何使用请求消息INVITE、ACK和BYE,以及200 OK响应消息。SIP中还存在许多其他消息。下面给出一些请求:

消息用法
INVITE呼叫一个用户代理,传送一次呼叫。
ACK确认呼叫。
BYE终止呼叫。
CANCEL终止还未OK的呼叫。
REGISTER提供一项注册服务,带有一个联系地址和可以用来代替的别名。例如,在前面的例子中,地址sip:UAA@example.com就是sip:UserA@10.20.30.40的别名。然后,注册服务器example.com就可以把呼叫转发给地址10.20.30.40。
OPTIONS询问一个用户代理的“能力”(例如,该用户代理能够识别的消息和编码)。

  现在给出一些经常使用的响应消息:

消息用法
100 Trying消息已收到,但是最终用户代理尚未进行处理。请等待。
180 Ringing最终用户代理已经收到消息,正在提示用户。请等待。
200 OK最终用户已经接受消息。
301 Moved Permanently & 302 Moved Temporarily用户代理的地址已经改变,新的永久或临时地址位于Contact字段中。
400 Bad Request普通错误消息。客户端不能识别消息。
401 Unauthorized & 407 Proxy Authentication Required请使用证书重试。
404 Not Found要联系的用户不存在或尚未注册。
408 Request Timeout另一方没有响应。这意味着SIP消息永远不会OK。所有重试都将被丢弃。这并不意味着电话响太长时间(电话可以永远响铃)。

 

 

消息使用类似的头字段类型。下面给出其中的一些:

头字段用法
FromSIP请求的发送者。
ToSIP请求的接受者。这通常与SIP URI相同(可以是一个“别名”或一个实际地址)。
Contact用户代理的实际地址。
Call-ID这并不是呼叫者的电话号码。它惟一地代表两个用户代理之间的完整呼叫或对话。所有相关的SIP消息都使用同一个Call-ID。例如,当一个用户代理收到一条BYE消息,根据Call-ID,它就知道要挂断哪次呼叫。
CSeq消息的顺序编号。这在一次对话或一个Call-ID中是惟一的。这用于区别新的消息和“重试消息”。当一条初始消息没有及时OK时,重试就会进行,并会定时发送。
Content-Type消息内payload的MIME类型。
Content-Lengthpayload的大小,以字节为单位。信封和payload之间由一空行隔开。

 

还有一些与消息路由选择功能相关的头字段,如:Via、Route和Record-Route。许多头字段提供像Accept、User-Agent和Supported这样的功能。其他头字段则提供像Authorization、Privacy和WWW-Authenticate这样的安全性功能。还有很多其他的头字段存在。此外,这些字段中许多都有缩写语法(比如,From = f,To = t,等等)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/434948.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python特征递归消除

一、基础知识了解 特征递归消除官方给了两者方法 1.RFE 2.RFECV 一.RFE 官方解释 链接:sklearn.feature_selection.RFE — scikit-learn 1.0.2 documentationhttps://scikit-learn.org/stable/modules/generated/sklearn.feature_selection.RFE.html?highligh…

SIP 中的Dialog,call,session 和 transaction .

如果你对Sip协议中Call, Dialog, Transaction和Message之间的关系感觉到迷惑,那么,那么我可以告诉你,你并不孤单,因为大多数初学者对于这些名词之间的关系都会感到疑惑.Messages(消息) 消息是在服务器和客户端之间交换的独立文本, 有两种类型的消息,分别是请求(Requests)和响应…

JS 获取当前日期时间(兼容IE FF)

以前在页面中获得当前时间的方法如下: function SelectTodayClient() {var d new Date();var taday d.getYear() "-" (d.getMonth() 1) "-" d.getDate(); alert($(taday);} IE运行正常,FF运行如下: 这…

再次携号转网_潍坊一小伙欲携号转网屡被拒 联通客服:试运营状态不支持携转...

携号转网,也就是在手机号码保持不变的情况下,可以更换运营商,潍坊市民夏先生给记者打来电话说,他有一张联通的电话卡,想要办理携号转网业务,十几天过去了,号没转出去,还生了一肚子气…

机器学习参数优化数据改用所有数据还是训练集

参数优化过程中所用数据应该用训练集 (占所有数据的一部分),如果用所有数据会导致模型评估的所有结果都偏高,因为这些评估都涉及测试集,如果用所有数据进行训练,导致测试集预测结果大部分都正确&#xff0c…

《当程序员的那些狗日日子》(三十六)无名的配角

人事助理姐姐帮我办理完续签手续后,我也回到原来的工作状态,继续处理手上的工作。 之前洪协助我完成了客服后台的一些新功能,但是在投入使用后,我发现这些功能还是存在较大的问题,本来我以为就要离开公司了&#xff0c…

8个树莓派超级计算机_6 个可以尝试的树莓派教程

这些树莓派项目均旨在简化你的生活并提高生产力。-- Lauren Pritchett(作者)没有什么比体验树莓派创作结果更令人兴奋了。经过数小时的编程、测试和徒手构建,你的项目终于开始成形,你不禁大喊 “哇哦!”树莓派可以带给日常生活的可能性让我着…

SIP应答消息状态码与功能

SIP应答消息状态码与功能 类型 状态码 状态说明 临时应答(1XX) 100 Trying 正在处理中 180 Ringing 振铃 181 call being forwarder 呼叫正在前向 182 queue 排队 181* session progress 会话进行 会话成功(2XX) 200 OK 会话成功 重定向(3XX) 300 multiple 多重选择 301 moved …

sklearn的逻辑回归

官方逻辑回归链接 sklearn.linear_model.LogisticRegression — scikit-learn 1.0.2 documentationhttps://scikit-learn.org/stable/modules/generated/sklearn.linear_model.LogisticRegression.html#sklearn.linear_model.LogisticRegression 一,参数说明 1.1…

Ext scope 学习

首先,用一句话来概括scope的作用:scope就是用来解决 js 中 this 的指向问题。 下面进行讨论: 1、 关于JavaScript中this的使用,这是一个由来已久的问题了。我们这里就不介绍它的发展历史了,只结合具体的例子&#xff…

python某公司为员工发放奖品_python 练习2

#######假定有下面这样的列表:names [fentiao, fendai, fensi, apple]输出结果为:I have fentiao, fendai, fensi and apple.names [fentiao, fendai, fensi, apple]print I have ,.join(names[:-1]) and names[-1]######系统里面有用户 用户有密码users [root,westos…

SIP 协议 理解

SIP主要支持以下5个方面信令技术功能: 用户定位:确定通信所使用的终端系统位置。主要是和sip服务器实体中的注册服务器和非sip实体的 位置服务器相关,每个用户在上线的所在的sip实体,会将该用户的sip号(sip域中的唯一…

sklearn中的支持向量机SVC

官方链接 sklearn.svm.SVC — scikit-learn 1.0.2 documentationhttps://scikit-learn.org/stable/modules/generated/sklearn.svm.SVC.html#sklearn.svm.SVC该方法是基于libsvm(支持向量机库)实现的 libsvm官网 LIBSVM -- A Library for Support Vec…

python学习正则表达式_Python学习教程(Python学习路线):正则表达式—第二讲

Python学习教程(Python学习路线):正则表达式!前面也有跟大家分享关于正则表达式的Python学习教程,但是有伙伴说还是没完全吸收!这些是很正常的,正则表达式难吗?肯定难!不是一次教程就能完全掌握…

ArcGIS之GP服务发布

模型构建器官方解释: 链接 什么是模型构建器? 1.模型构建器是一个用来创建、编辑和管理模型的应用程序。模型是将一系列地理处理工具串联在一起的工作流,它将其中一个工具的输出作为另一个工具的输入。也可以将模型构建器看成是用于构建工…

认知与设计:理解UI设计准则——序

交互计算机系统的设计不仅仅是门艺术,也是(至少追求成为)一门科学。好吧,实际上不是科学,但可以说是一门计算机和认知学的交叉工程学科,基于科学的技术方法创造满足指定需求的交互系统。   就像汽车、建筑…

开源的SIP协议栈 PJSIP

PJSIP是一个开放源代码的SIP协议栈。它支持多种SIP的扩展功能,目前可说算是最流行的sip协议栈之一了。 下面列出其重要的几种优点: 1)代码层次非常清晰,从低级到高级都提供了很方便的接口供开发; 2)提供相当…

卸载idea_IDEA 不为人知的 5 个骚技巧!真香!

来自公众号:Java中文社群工欲善其事,必先利其器,磊哥最近发现了几个特别棒的 IDEA“骚”技巧,已经迫不及待的想要分享给你了,快上车...1.快速补全行末分号使用快捷键 Shfit Ctrl Enter 轻松实现。2.自带的 HTTP 请求…

网格搜索支持向量机运行结束不了

from sklearn import svm, model_selection import pandas as pd import numpy as np #支持向量机主要调节的参数有:C、kernel、degree、gamma、coef0。 #C 默认 1.0正则化参数。 #kernel {‘linear’, ‘poly’, ‘rbf’, ‘sigmoid’, ‘precomputed’}, defaul…

Oracle高级SQL培训与讲解

1 With子句 1.1 学习目标 掌握with子句用法,并且了解with子句能够提高查询效率的原因。 1.2 With子句要点 1. with子句的返回结果存到用户的临时表空间中,只做一次查询,反复使用,提高效率。2. 如果定义了with子…