VOLTE SIP代码意义及流程图解

VOLTE SIP代码意义及流程图解
VOLTE SIP代码意义及流程图解

VoLTE SIP代码意义及流程图解一VOLTE SIP代码意义

SIP应答消息状态码与功能

类型状态码状态说明

临时应答(1XX)100Trying正在处理中

180Ringing振铃

181call being forwarder呼叫正在前向

182queue排队

181*session progress会话进行

会话成功(2XX)200OK会话成功

重定向(3XX)300multiple多重选择

301moved permanently永久移动

302moved temporaily临时移动

305use proxy用户代理

380alternative service替代服务

请求失败(4XX)400bad request错误请求

401unauthorized未授权

402payment required付费要求

403forbidden禁止

404not found未发现

405method no allowed方法不允许

406not acceptable不可接受

407proxy authentication required代理需要认证408request timeout请求超时

410gone离开

413request entity too large请求实体太大

414request-url too long请求URL太长

415unsupported media type不支持的媒体类型416unsupported url scheme不支持的URL计划420bad extension不良扩展

421extension required需要扩展

423interval too brief间隔太短

480temporarily unavailable临时失效

481call/transaction does not exist呼叫/事务不存在482loop detected发现环路

483too many hops跳数太多

484address incomplete地址不完整

485ambiguous不明朗

486busy here这里忙

487request terminated请求终止

488not acceptable here这里请求不可接受

491request pending未决请求

493undecipherable不可辨识

服务器失败(5XX)500server internal error服务器内部错误

501not implemented不可执行

502bad gateway坏网关

503service unavailable服务无效

504server time-out服务器超时

505version not supported版本不支持

513message too large消息太大

全局性错误(6XX)600busy everywhere全忙

603decline丢弃

604does not exist anywhere不存在

606not acceptable不可接受

SIP应答代码(以下是详细内容)

应答码是包含了,并且扩展了HTTP/1.1应答码。并不是所有的HTTP/1.1应答码都适当应用,只有在折里指出的是适当的。其他HTTP/1.1应答码不应当使用。并且,SIP也定义了新的应答码系列,6xx。

1临时应答1xx

临时应答,也就是消息性质的应答,标志了对方服务器正在处理请求,并且还没有决定最后的应答。如果服务器处理请求需要花200ms以上才能产生终结应答的时候,它应当发送一个1xx应答。

注意1xx应答并不是可靠传输的。他们不会导致客户端传送一个ACK应答。临时性质的(1xx)应答可以包含消息体,包含会话描述。

1.1100Trying

这个应答表示下一个节点的服务器已经接收到了这个请求并且还没有执行这个请求的特定动作(比如,正在打开数据库的时候)。这个应答,就像其他临时应答一样,种植了UAC重新传送INVITE请求。100(Trying)应答和其他临时应答不同的是,在这里,它永远不会被有状态proxy转发到上行流中。

1.2180Ringing

UA收到INVITE请求并且试图提示给用户。这个应答应当出世化一个本地回铃。1.3818Call is Being Forwarded(呼叫被转发)

服务器可以用这个应答代码来表示呼叫正在转发到另一个目的地集合。

1.4182Queued

当呼叫的对方暂时不能接收呼叫的时候,并且服务器决定将呼叫排队等候,而不是拒绝呼叫的时候,那么就应当发出这个应答。当被叫方一旦恢复接收呼叫,他会返回合适的终结应答。对于这个呼叫状态,可以有一个表示原因的短语,比如:”5calls queued;expected waiting time is15minutes”。服务器可以给出好几个182(Queued)应答告诉呼叫方排队的情况(比如排队靠前了等等)。

1.5183会话进度

183(Session Progress)应答用于提示建立对话的进度信息。Reason-Phrase(表达原因的句子)、头域或者消息体可以用于提示呼叫进度的更消息的信息。

2成功信息2xx

这个应答表示请求是成功的。

2.1200OK

请求已经处理成功。这个信息取决于不同方法的请求的应答。

3转发请求3XX

3xx系列的应答是用于提示用户的新位置信息的,或者为了满足呼叫而转发的额外服务地点。

3.1300Multiple Choices

请求的地址有多个选择,每个选择都有自己的地址,用户或者(UA)可以选择合适的通讯终端,并且转发这个请求到这个地址。

应答可以包含一个具有每一个地点的在Accept请求头域中允许的资源特性,这样用户或者UA可以选择一个最合适的地址来转发请求。没有未这个应答的消息体定义MIME类型。

这些地址选择也应当在Contact头域中列出(20.10节)。不同于HTTP,SIP应答可以包含多个Contact头域或者一个Contact头域中具有一个地址列表。UA可以使用Contact头域来自动转发或者要求用户确认转发。不过,本规范没有定义自动转发的标准。

如果被叫方可以在多个地址被找到,并且服务器不能或者不愿意转发请求的时候,可以使用这个应答来给呼叫方。

3.2301Moved Permently

当不能在Request-URI指定的地址找到用户的时候,请求的客户端应当使用Contact 头域(20.10)所指出的新的地址重新尝试。请求者应当用这个新的值来更新本地的目录,地址本,和用户地址cache,并且在后续请求中,发送到这个/这些列出的地址。

3.3302Moved Temporarily

请求方应当把请求重新发到这个Contact头域所指出的新地址(20.10)。新请求的Request-URI应当用这个应答的Contact头域所指出的值。

在应答中的Expires(20.19节)或者Contact头域的expires参数定义了这个Contact URI的生存周期。UA或者proxy在这个生存周期内cache这个URI。如果没有严格的有效时见,那么这个地址仅仅本次有效,并且不能在以后的事务中保存。

如果cache的Contact头域的值失败了,那么被转发请求的Request-URI应当再次尝试一次。临时URI可以比超时时间更快的失效,并且可以有一个新的临时URI。

3.4305Use Proxy

请求的资源必须通过Contact头域中指出的proxy来访问。Contact头域指定了一个proxy的URI。接收到这个应答的对象应当通过这个proxy重新发送这个单个请求。305(UseProxy)必须是UAS产生的。

3.5380Alternative Service

呼叫不成工,但是可以尝试另外的服务。另外的服务在应答的消息体中定义。消息体的格式在这里没有定义,可能在以后的规范中定义。

4请求失败4xx

4xx应答定义了特定服务器响应的请求失败的情况。客户端不应当在不更改请求的情况下重新尝试同一个请求。(例如,增加合适的认证信息)。不过,同一个请求交给不同服务器也许就会成功。

4.1400Bad Request

请求中的语法错误。Reason-Phrase应当标志这个详细的语法错误,比如”Missing Call-ID header field”。

4.2401Unauthorized

请求需要用户认证。这个应答是由UAS和注册服务器产生的,当407(Proxy Authentication Required)是proxy服务器产生的。

4.3402Payment Required

保留/以后使用

4.4403Forbidden

服务端支持这个请求,但是拒绝执行请求。增加验证信息是没有必要的,并且请求应当不被重试。

4.5404Not Found

服务器返回最终信息:用户在Request-URI指定的域上不存在。当Request-URI 的domain和接收这个请求的domain不匹配的情况下,也会产生这个应答。

4.6405Method Not Allowed

服务器支持Request-Line中的方法,但是对于这个Request-URI中的地址来说,是不允许应用这个方法的。

应答必须包括一个Allow头域,这个头域包含了指定地址允许的方法列表。

4.7Not Acceptable

请求中的资源只会导致产生一个在请求中的Accept头域外的,内容无法接收的错误。

4.8407Proxy Authentication Required

这个返回码和401(Unauthorized)很类四,但是标志了客户端应当首先在proxy 上通过认证。SIP对认证的访问请参见26节和22.3节。

这个返回码用于应用程序访问通讯网关(比如,电话网关),而很少用于被叫方要求认证。

4.9408Request Timeout

在一段时间内,服务器不能产生一个终结应答,例如,如果它无法及时决定用户的位置。客户端可以在稍后不更改请求的内容然后重新尝试请求。

4.10410Gone

请求的资源在本服务器上已经不存在了,并且不知道应当把请求转发到哪里。这个问题将会使永久性的。如果服务器不知道,或者不容易检测,这个资源消失是临时性质的还是永久性质的,那么应当返回一个404(Not Found)。

4.11413请求实体过大。

服务器拒绝处理请求,因为这个请求的实体超过了服务器希望或者能够处理的大小。这个服务器应当关闭连接避免客户端重发这个请求。

如果这个情况是暂时的,那么服务端应当包含一个Retry-After头域来表明这是一个暂时的故障,并且客户端可以过一段时间再次尝试。

4.12414Request-URI Too Long

服务器拒绝这个请求,因为Request-URI超过了服务器能够处理的长度。

4.13415Unsupported Media Type

服务器由于请求的消息体的格式本服务器不支持,所以拒绝处理这个请求。这个服务器必须根据内容的故障类型,返回一个Accept,Accpet-Encoding,或者Accept-Language头域列表。UAC根据8.1.3.5节定义的方法处理这个应答。

4.14416Unsupported URI Scheme

服务器由于不支持Request-URI中的URI方案而终止处理这个请求。客户端处理这个应答参照8.1.3.5。

4.15Bad Extension

服务器不知道在请求中的Proxy-Require(20.29)或者Require(20.32)头域所指出的协议扩展。服务器必须在Unsupported头域中列出不支持的扩展。UAC处理这个应答请参见8.1.3.5

4.16421Extension Required

UAS需要特定的扩展来处理这个请求,但是这个扩展并没有在请求的Supported头域中列出。具有这个应答码的应答必须包含一个Require头域列出所需要的扩展。

UAS不应当使用这个应答除非它真的不能给客户端提供有效的服务。相反,如果在Support头域中没有列出需要的扩展,服务器应当根据基准的SIP兼容的方法和客户端支持的扩展来进行处理。

4.17423Interval Too Brief

服务器因为在请求中设置的资源刷新时间(或者有效时间)过短而拒绝请求。这个应答可以用于注册服务器来拒绝那些Contact头域有效期过短的注册请求。这个应答的用法和相关的Min-Expires头域在10.2.8,10.3,20.23节中介绍和说明。

4.18480Temporarily Unavailable

请求成功到达被叫方的终端系统,但是被叫方当前不可用(例如,没有登陆,或者登陆了但是状态是不能通讯,或者有”请勿打扰”的标记)。应答应当在Retry-After 中标志一个合适的重发时间。这个用户也有可能在其他地方是有效的(在本服务器中不知道)。Reason-Phrase(原因短句)应当提示更详细的原因,为什么被叫方暂时不可用。这个值应当是可以被UA设置的。状态码486(Busy Here)可以用来更精确的表示本请求失败的特定原因。

这个状态码也可以是转发服务或者proxy服务器返回的,因为他们发现Request-URI 指定的用户存在,但是没有一个给这个用户的合适的当前转发的地址。

4.19481Call/Transaction Does Not Exist

这个状态表示了UAS接收到请求,但是没有和现存的对话或者事务匹配。

4.20482Loop Detected

服务器检测到了一个循环(16.3/4)

4.21483Too Many Hops

服务器接收到了一个请求包含的Max-Forwards(20.22)头域是0

4.22484Address InComplete

服务器接收到了一个请求,它的Request-URI是不完整的。在原因短语中应当有附加的信息说明。这个状态码可以和拨号交叠。在和拨号交叠中,客户端不知道拨号串的长度。它发送增加长度的字串,并且提示用户输入更多的字串,直到不在出现484(Address Incomplete)应答为止。

4.23485Ambiguous

Request-URI是不明确的。应答可以在Contact头域中包含一个可能的明确的地址列表。这个提示列表肯囊个在安全性和隐私性对用户或者组织造成破坏。必须能够由配置决定是否以404(NotFound)代替这个应答,又或者禁止对不明确的地址使用可能的选择列表。

给带有Request-URI的请求的一个应答例子:

sip:lee@https://www.360docs.net/doc/565982950.html,:

SIP/2.0485Ambiguous

Contact:Carol Lee

Contact:Ping Lee

Contact:Lee M.Foote

部分email和语音邮箱系统提供了这个功能。这个状态码和3xx状态码不同:对于300来说,它是假定同一个人或者服务有不同的地址选择。所以对3xx来说,自动选择系统或者连续查找就有效,但是对485(Ambiguous)应答来说,一定要用户的干预。

4.24486Busy Here

当成功联系到被叫方的终端系统,但是被叫方当前在这个终端系统上不能接听这个电话,那么应答应当回给呼叫方一个更合适的时间在Retry-After头域重试。这个用户也许在其他地方有效,比如电话邮箱系统等等。如果我们知道没有其他终端系统能够接听这个呼叫,那么应当返回一个状态码600(Busy Everywhere)。

4.25487Request Terminated

请求被BYE或者CANCEL所终止。这个应答永远不会给CANCEL请求本身回复。

4.26488Not Acceptable Here

这个应答和606(Not Acceptable)有相同的含义,但是只是应用于Request-URI 所指出的特定资源不能接受,在其他地方请求可能可以接受。

包含了媒体兼容性描述的消息体可以出现在应答中,并且根据INVITE请求中的Accept头域进行规格化(如果没有Accept头域,那么就是application/sdp)。这个应答就像给OPTIONS请求的200(OK)应答的消息体一样。

4.27491Request Pending

在同一个对话中,UAS接收到的请求有一个依赖的请求正在处理。14.2描述了这种情况应当怎样解决。

4.28493Undecipherable

UAS接收到了一个请求,包含了一个加密的MIME,并且不知道或者没有提供合适的解密密钥。这个应答可以包含单个包体,这个包体包含了合适的公钥,这个公钥用于给这个UAS通讯中加密包体使用的。

5Server Failure5xx

5xx应答是当服务器本身故障的时候给出的失败应答。

5.1500Server Internal Error

服务器遇到了未知的情况,并且不能继续处理请求。客户端可以显示特定的错误情况,并且可以在几秒种以后重新尝试这个请求。

如果这个情况是临时的,服务器应当在Retry-After头域标志客户端过多少秒钟之后重新尝试这个请求。

5.2501Not Implemented

服务器没有实现相关的请求功能。当UAS不认识请求的方法的时候,并且对每一个用户都无法支持这个方法的时候,应当返回这个应答。(proxy不考虑请求的方法而转发请求)。

注意405(Method Not Allowed)是因为服务器实现了这个请求方法,但是这个请求方法在特定请求中不被支持。

5.3502Bad Gateway

如果服务器,作为gateway或者proxy存在,从下行服务器上接收到了一个非法的应答(这个应答对应的请求是本服务器为了完成请求而转发给下行服务器的)。

5.4503Service Unavailable

由于临时的过载或者服务器管理导致的服务器暂时不可用。这个服务器可以在应答中增加一个Retry-After来让客户端重试这个请求。如果没有Retry-After指出,客户端必须就像收到了一个500(Server Internal Error)应答一样处理。

客户端(proxy或者UAC)收到503(Service Unavailable)应当尝试转发这个请求到另外一个服务器处理。并且在Retry-After头域中指定的时间内,不应当转发其他请求到这个服务器。

作为503(Service Unavaliable)的替代,服务器可以拒绝连接或者把请求扔掉。

5.5504Server Time-out

服务器在一个外部服务器上没有收到一个及时的应答。这个外部服务器是本服务器用来访问处理这个请求所需要的。如果从上行服务器上收到的请求中的Expires头域超时,那么应当返回一个408(Request TimeOut)错误。

5.6505Version Not Supported

服务器不支持对应的SIP版本。服务器是无法处理具有客户端提供的相同主版本号的请求,就会导致这样的错误信息。

5.7Message To Large

服务器无法处理请求,因为消息长度超过了处理的长度。

6Global Failures6xx

6xx应答意味这服务器给特定用户有一个最终的信息,并不只是在Request-URI的特定实例有最终信息。

6.1600Busy Everywhere

成功联系到被叫方的终端系统,但是被叫方处于忙的状态,并不打算接听电话。这个应答可以通过增加一个Retry-After头域更明确的告诉呼叫方多久以后可以继续呼叫。如果被叫方不希望提示拒绝的原因,被叫方应当使用603(Decline)。只有当终端系统知道没有其他终端节点(比如语音邮箱系统)能够访问到这个用户的时候才能使用这个应答。否则应当返回一个486(Busy Here)的应答。

6.2603Decline

当成功访问到被叫方的设备,但是用户明确的不想应答。这个应答可以通过增加一个Retry-After头域更明确的告诉呼叫方多久以后可以继续呼叫。只有当终端知道没有其他任何终端设备能够响应这个呼叫的势能才能给出这个应答。

6.3604Does Not Exists Anywhere

服务器验证了在请求中Request-URI的用户信息,哪里都不存在

6.4606Not Acceptable

当成功联系到一个UA,但是会话描述的一些部分比如请求的媒体,带宽,或者地址

类型不被接收。

606(NotAcceptable)应答意味着用户希望通讯,但是不能充分支持会话描述。606(Not Acceptable)应答可以在Warning头域中包含一个原因列表,用于解释为何

会话描述不能被支持。警告原因代码在20.43节中列出。

在应答中,可以出现一个包含媒体兼容性描述的消息体,这个消息体的格式根据INVITE请求中的Accept头域指出的格式进行规格化(如果没有Accept头域,那么就是application/sdp),就像给OPTIONS亲求的200(OK)应答中的消息一样。

我们希望这些媒体协商不要经常需要,并且当一个新用户被邀请加入已经存在的会

话的时候,这个媒体协商可能不需要。这取决于邀请的初始化者是否需要对606(Not Acceptable)进行处理。

这个应答只有当客户端知道没有其他终端能够处理这个请求的时候才能发出。

二VoLTE-SIP完整信令解析

1.主叫与被叫之间的SIP呼叫业务流程如下:

2.SIP信令完整解析:

(1).用户A,摘机对用户B发起呼叫,用户A首先向AS服务器发起INVITE请求。

(2).AS服务器回复100Trying给用户A说明收到INVITE请求。

(3).AS服务器通过认证确认用户认证已通过后,向被叫终端B转送INVITE请求。

(4).用户B向AS服务器送呼叫处理中的应答消息,100Trying。

(5).用户B向AS服务器送183Session Progress消息,提示建立对话的进度

信息。(此时被叫QCI1专用承载建立)

(6).AS服务器向主叫终端A转送183Session Progress消息,终端A了解到整个Session的建立进度消息。

(7).终端A向AS服务器回复临时应答消息PRACK,表示收到183Session Progress消息。(此时主叫QCI1专用承载建立)

(8).AS服务器向被叫终端B转送临时应答消息PRACK,终端B了解到终端A

收到183Session Progress消息。

(9).被叫终端B向AS服务器发送200OK消息,表示183SessionProgress请

求已经处理成功。

(10).AS服务器向主叫终端A转送200OK消息。

(11).主叫终端A向AS服务器发送UPDATE消息,意在与被叫终端B协商相

关SDP信息。

(12).AS服务器向被叫终端B转送UPDATE消息。

(13).被叫终端B向AS服务器发送200OK消息,表示UPDATE请求已经处

理成功。

(14).AS服务器向主叫用户A转送200OK消息,通知用户A UPDATE请求已

经处理成功。

(15).被叫用户B振铃,用户振铃后,向AS服务器发送180Ringing振铃信息。

(16).AS服务器向主叫终端A转送180Ringing振铃信息。

(17).被叫终端B向AS服务器发送200OK消息,表明主叫最初的INVITE请求已经处理成功。

(18).AS服务器向主叫终端A转送200OK消息,通知主叫终端A,被叫终端B

已经对INVITE请求处理成功。

(19).主叫终端A向AS服务器发送ACK消息,意在通知被叫终端B,主叫侧已

经了解被叫侧处理INVITE请求成功。

(20).AS服务器向被叫终端B转送ACK信息。

(21).用户A主动挂机,A向AS服务器发起通话结束BYTE信息。

(22).AS服务器向被叫终端B转送BYTE信息。

(23).被叫终端B向AS服务器发送200OK消息,表示对BYTE信息处理成功。

(24).AS服务器向用户A转送200OK信息。整个通话结束。

(25).被叫用户B主动挂机流程同步骤21—24。

三SIP呼叫流程典型流程图解及其详细解释

1注册流程

2注销流程

3基本呼叫建立过程

4会话更改流程

5正常呼叫释放过程

6被叫忙呼叫释放

7被叫无应答流程一

8被叫无应答流程二

9遇忙呼叫前转

10无应答呼叫前转流程

11呼叫保持

12呼叫等等

SIP响应是由一个用户代理服务器(UAS)或SIP服务器生成回复由客户端生成的请求的消息。它可能是一个正式的确认,以防止请求由UAC重发。

响应可能包含需要一个UAC信息一些额外的头字段

SIP有六个响应

1xx-5xx已经借由HTTP,而6xx系列在SIP介绍。

1XX被认为是一个临时响应,其余的最终响应。

类别描述动作

1xx信息这表明调用之前完成也被称为临时响应的状态。

2xx成功请求已成功。如果这是一个邀请,确认应发送;否则,停止请求的重发。

3xx重定向服务器返回的可能位置。客户端应该重试另一个服务器的请求。

4xx客户端错误请求已经由客户端失败,原因是一个错误。客户端可以重试请求,如果它是根据响应拟订。

5xx服务器故障请求已经由该服务器失败,原因是一个错误。请求可以在另一台服务器退出。

6xx全局失败请求已失败。该请求不应该在这个或其他服务器再次尝试。

信息(1xx)

信息响应用于指示呼叫进程。通常情况下,响应是端对端(除100尝试)。信息的响应的主要目的是阻止INVITE请求的重发。

信息响应包括以下对策:

100尝试

这种特殊的情况下的响应仅仅是一个逐跳请求。

它永远不会转发,不得包含邮件正文。

它被用于避免INVITE请求的重传。

180响铃

此响应被用来指示一个INVITE已经接收由用户代理和警报正在发生。

181呼叫被转发

此响应用于指示该呼叫已被转发到另一端点。

它发送的信息有可能会使用到呼叫者。

它给该呼叫者的状态,作为一个转发操作可以导致在呼叫同时较长时间来回答。

182呼叫队列

此响应被用来指示该INVITE已经接收并且将在一个队列进行处理。

183会话进度

它表明,有关会话的进度的信息可以存在于消息主体或媒体流。

不像100尝试响应,183端到端的响应,并建立一个对话。

一个典型的使用这种反应是为了让UAC通过网关进入PSTN听到手机铃声,忙音,或在通话录音通知。

成功(2xx)

编码规范以开发手册范本

1.软件开发手册 1.1.围 本标准规定了基于公司信息系统构建平台进行业务应用系统开发的编程格式规,主要包括命名规、代码注释、性能、以及常用语句的书写要求和约束等。统一规的格式有利于项目的交付和后续维护。 1.2.引言 1.1.1.简介 所有的程序开发手册都包含了各种规则。一些习惯自由程序的人(例如 Java 程序员)可能对这些规则很不适应,但是在多个开发人员共同协作的情况下,这些规则是必需的。这不仅仅是为了开发效率,而且也为了测试和后期维护。 良好的编码习惯有助于标准化程序的结构和编码风格,使源代码对于自己和别人都易读和易懂。在开发周期中越早使用恰当的编码规定,将会最大程度的提高项目的生产率。良好的编码习惯除了代码格式,详细的注释外,还应该包括使用有助于提高程序效率的编码方式。 规的开发有助于提高源码的可读性,可维护性,对于提高项目的整体效率更是不可缺少的(尤其是团队开发)。 1.1. 2.目的 本文是一套面向Java programmer 和Java developer进行开发所应遵循的开发规。按照此规来开发Java程序可带来以下益处: ●代码的编写保持一致性, ●提高代码的可读性和可维护性, ●在团队开发一个项目的情况下,程序员之间可代码共享, ●易于代码的回顾。 1.3.源程序 1.3.1.源程序命名 Java源程序的名字应该是这种形式:ClassOrInterfaceName.java。ClassOrInterfaceName 应该是在Java源程序中定义的 class或者interface的名字(关于classes和interface的命

名规请参考3.2)。源程序的文件名后缀通常为.java。 1.3. 2.供发布的文件 如果文件编译后,需要用打包的形式发布,那么这个包的名字应该是有代表性的(例如应该是这个模块或者这个文件所在单元的名字)。通常包的扩展名有 *.jar(推荐使用)或者 *.zip、*.ear、*.war等。 1.3.3.源文件的组织 一个Java源文件应该包含如下的元素,并按照以下顺序书写: 1)版本信息和声明 2)包的声明 3)引用声明 4)类或者接口的声明 以上元素之间以至少一个空行来分隔。 1.3.3.1.版本信息和声明 每一个源程序应该以一个包含版本信息和声明的块为开始。 例如: /** * application name: sample1 * application describing: this class handels the request of the client * copyright: Copyright ? 2002 金质工程所有 * company: neusoft * time: 2002.02.25 * * author Brunce * version ver 3.1 */

Sip 响应状态码功能对照详解

SIP应答消息状态码与类型状态码状态说明?临时应答(1XX)100 Trying 正在处理中 182queue 排队 181call being forwarder呼叫正在前向? 180Ringing振铃? 181* sessionprogress会话进行 会话成功(2XX)200OK 会话成功 重定向(3XX)300 multiple 多重选择 301 moved permanently 永久移动 302 movedtemporaily 临时移动 305 use proxy 用户代理 380 alternative service 替代服务 请求失败(4XX) 400bad request 错误请求?401unauthorized未授权 402 payment required 付费要求 403 forbidden禁止 404 not found 未发现 405method no allowed 方法不允许 406 not acceptable 不可接受?407 proxyauthentication required 代理需要认证?408request timeout请求超时?410gone离开 414request—url too long 请求URL太长?415 413 request entity too large请求实体太大? unsupported media type不支持得媒体类型 416unsupportedurl scheme 不支持得URL计划? 420bad extension 不良扩展?421e xtension required需要扩展 481call/tran 423intervaltoo brief间隔太短?480 temporarily unavailable临时失效? 482loopdetected 发现环路?483 too m sactiondoes not exist 呼叫/事务不存在? 485ambiguous 不明朗? 486busy 484address inplete 地址不完整? anyhops跳数太多? here这里忙 487requestterminated请求终止?488not acceptable here 这里请求不可接受 491request pending 未决请求 493undecipherable不可辨识 服务器失败(5XX)500server internal error 服务器内部错误5?01 notimplemented不可执行 502 bad gateway 坏网关 503 service unavailable 服务无效? 505version n 504servertime-out 服务器超时? otsupported版本不支持 513message toolarge 消息太大 全局性错误(6XX) 600 busy everywhere 全忙?603 decline丢弃?604 does not existany where不存在 606 not acceptable不可接受 SIP应答代码(以下就是详细内容) 应答码就是包含了,并且扩展了/1、1应答码。并不就是所有得/1、1应答码都适当应用,只有在折里指出得就是适当得.其她/1、1应答码不应当使用。并且,SIP也定义了新得应答码系列,6xx。 1 临时应答1xx?临时应答,也就就是消息性质得应答,标志了对方服务器正在处理请求,并且还没有决定最后得应答。如果服务器处理请求需要花200ms以上才能产生终结应答得时候,它应当发送一个1xx应

常用业务参数海关常用代码表

常用业务参数海关常用代码表 领证商品备注表(LICENSEN) 征免性质代码表(LEVETYPE) 关别代码表(CUSTOMS) 国内地区代码表(DISTRICT) 反倾销名单(IMPORTSU) 货币代码表(CURR) 国别地区代码表(COUNTRY) 进口商品临时税率表(TEMPOR) 监管证件代码表(LICENSED) 监管方式代码表(TRADE) 运输方式代码表(TRANSF) 计量单位代码表(UNIT) 用途代码表(USE_TO) 结汇方式代码表(LC_TYPE) 征减免税方式代码表(LEVYMODE) 地区性质代码表(DIST_TYPE) 货币代码表(CURR) 企业性质代码表(CO_TYPE) 成交方式代码表(TRANSAC) 常用计量单位换算资料 长度1英寸=25.4毫米
1英尺=12英寸=0.3048米
1码=3英尺=0.9114米
1英里=1760码=1.609千米
1海里=1852米
面积
1平方英寸=6.45平方厘米
1平方英尺=144平方英寸=9.29平方分米
1平方码=9平方英尺=0.836平方米
1英亩=4840平方码=0.405公顷
1平方英里=640英亩=259公顷
体积
1立方英寸=16.4立方厘米
1立方英尺=1728立方英寸=0.0283立方米
1立方码=27立方英尺=0.765立方米
容积
英制
1品脱=20液量盎司=34.68立方英寸=0.568升
1夸脱=2品脱=1.136升
1加伦=4夸脱=4.546升
1配克=2加伦=9.092升
1蒲式耳=4配克=36.4升
1八蒲式耳=8蒲式耳=2.91百升
美制干量
1品脱=33.60立方英寸=0.550升
1夸脱=2 pints 品脱=1.101升
1配克=8 quarts 夸脱=8.81升
1蒲式耳=4s 配克=35.3升美制液量
1品脱=16液量盎司=28.88立方英寸=0.473升
1夸脱=2品脱=0.946升
1加伦=4夸脱=3.785升
常衡
1格令=0.065克
1打兰=1.772克
1盎司=16打兰=28.35克
1磅=16盎司=7000谷=0.4536千克
1英石=14磅=6.35千克
1四分之一英担=2英石=12.70千克
1英担=4四分之一英担=50.80千克
1短吨(美吨)=2000磅=0.907公吨
1长吨(英吨)=20英担=1.016公吨
适用从量消费税商品的重量与体积换算关系为:
啤酒1吨=988升黄酒1吨=962升
汽油1吨=1388升柴油1吨=1176升 编码的俗名和学名对照表 俗名学名商品编码备注

SIP协议呼叫流程及协议分析

一、SIP协议介绍: 会话发起协议SIP(Session Initiation Protocol)是一个应用层控制信令协议,用于建立、更改和终止多媒体会话或呼叫。SIP作为一个基础,可以在其上提供很多不同的服务。目前已经定义的媒体类型有音频、视频、应用、数据、控制。 二、SIP呼叫流程: 注册流程: (1)用户首次试呼时,终端代理A 向代理服务器发送REGISTER 注册请求; (2)代理服务器通过后端认证/计费中心获知用户信息不在数据库中,便向终端代理回送401Unauthorized 质询信息,其中包含安全认证所需的令牌; (3)终端代理提示用户输入其标识和密码后,根据安全认证令牌将其加密后,再次用REGISTER 消息报告给代理服务器; (4)代理服务器将REGISTER 消息中的用户信息解密,通过认证/计费中心验证其合法后,将该用户信息登记到数据库中,并向终端代理A 返回成功响应消息200 OK。 呼叫流程:

(1)用户摘机发起一路呼叫,终端代理A 向该区域的代理服务器发起Invite 请求;(2)代理服务器通过认证/计费中心确认用户认证已通过后,检查请求消息中的Via 头域中是否已包含其地址。若已包含,说明发生环回,返回指示错误的应答;如果没有问题,代理服务器在请求消息的Via 头域插入自身地址,并向Invite 消息的To 域所指示的被叫终端代理B 转送Invite 请求; (3)代理服务器向终端代理A 送呼叫处理中的应答消息,100 Trying; (4)终端代理B 向代理服务器送呼叫处理中的应答消息,100 Trying; (5)终端代理B 指示被叫用户振铃,用户振铃后,向代理服务器发送180 Ringing 振铃信息; (6)代理服务器向终端代理A 转发被叫用户振铃信息; (7)被叫用户摘机,终端代理B 向代理服务器返回表示连接成功的应答(200 OK);(8)代理服务器向终端代理A 转发该成功指示(200 OK); (9)终端代理A 收到消息后,向代理服务器发ACK 消息进行确认; (10)代理服务器将ACK 确认消息转发给终端代理B; (11)主被叫用户之间建立通信连接,开始通话; 结束流程:

sip应答消息状态码

SIP应答消息状态码 与功能 类型状态码状态说明 临时应答(1XX) 100 Trying 正在处理中 180 Ringing 振铃 181 call being forwarder 呼叫正在前向 182 queue 排队 181* session progress 会话进行 会话成功(2XX) 200 OK 会话成功 重定向(3XX) 300 multiple 多重选择 301 moved permanently 永久移动 302 moved temporaily临时移动 305 use proxy 用户代理 380 alternative service 替代服务 请求失败(4XX) 400 bad request 错误请求 401unauthorized 未授权 402 payment required 付费要求 403 forbidden 禁止 404 not found 未发现 405 method no allowed 方法不允许 406 not acceptable 不可接受 407 proxy authentication required 代理需要认证408 request timeout 请求超时 410 gone 离开 413 request entity too large 请求实体太大 414 request-url too long 请求URL太长 415 unsupported media type 不支持的媒体类型416 unsupported url scheme 不支持的URL计划420 bad extension 不良扩展 421 extension required 需要扩展 423 interval too brief 间隔太短 480 temporarily unavailable 临时失效 481 call/transaction does not exist 呼叫/事务不存在482 loop detected 发现环路

SIP消息头域的说明

SIP消息头域的说明(转) 1 general-header类: 为描述消息基本属性的通用头域,可用于请求消息或响应消息;通用头域的域名只有在协议版本改变时才可有效地扩展。不过,通信中的所有方均认为是“通用头域”的新的头域也可认为是通用头域。不被认可的头域作为实体头域。 1.1 Call-ID Call-ID通用头域唯一标识一个特定的请求或者一个特定客户的所有登记。来自同一个客户的所有的登记应该使用同样的Call-ID头值,至少是在同一个重新启动的循环中。注意到单个的多媒体会议会产生不同Call-ID的几个呼叫,例如,用户多次邀请一个单个的私人加入同一个会议。 对于一个INVITE请求。主叫方用户代理服务器不应该警告用户,如果用户先前已经对INVITE请求中的Call-ID 作出了响应。如果用户已经是会议的一个成员,同时包含在会话描述中的会议参数并未改变,那么主叫方用户代理服务器可以接受此呼叫,而不管Call-ID。对于一个已存在的Call-ID或者会话的邀请可能改变会议的参数。一个客户应用可以决定向用户简单地指示会议参数已经改变,可以自动接受邀请或者可能需要用户的确认。 使用几个不同的Call-ID可以邀请一个用户加入同一个会议或者呼叫。如果需要的话,可以使用在会话描述中的标识来检测此副本。例如,SDP的“o”域中包含了会话标识和版本号。 REGISTER和OPTIONS方式使用Call-ID值来精确匹配请求和响应。一个单个的客户发布的所有的REGISTER请求应该使用同一个Call-ID,至少在同一个有效循环中。 Call-ID = (“Call-ID” | “i”)”:”local-id”@”host Local-id = 1*uric i是Call-ID的缩写形式。 “host”应该是一个真正的域名或者是一个全球性的IP地址。如 此,”local-id”应该是一个由URI字符组成的标识,此标识在”host”中是唯

征免性质代码表说明

征免性质代码表说明 征免性质是海关对进出口货物征、减、免税进行分类统计分析的重要数据。本章明确各类征免性质的内容和范围,通过征免性质详述海关对进出口货物征、减、免税的管理规定,并明确在报关单填制过程中的要求和在海关业务信息化管理系统中的逻辑控制。 一、定义 征免性质是指海关对进出口货物实施征、减、免税管理的性质类别。 二、征免性质的分类 (一)征免性质分为照章征税、法定减免税、特定减免税和临时减免税四部分。其中特定减免税又分为按地区实施的税收政策、按用途实施的税收政策、按贸易性质实施的税收政策、按企业性质和资金来源实施的税收政策等五类。 (二)报关单及海关其他作业单证的"征免性质"栏应按照海关核发的《进出口货物征免税证明》中批注的征免性质填报或根据实际情况按《征免性质代码表》选择填报相应的征免性质简称或代码。 (三)一份报关单或海关其他作业单证只允许填报一种征免性质,涉及多个征免性质的,应分单填报。一般征税进出口货物 一、定义及代码 一般征税进出口货物指海关根据《中华人民共和国海关法》、《中华人民共和国进出口关税条例》、《中华人民共和国进出口税则》及其他法律、行政法规、规章的规定征收进出口关税、进口环节税的进出口货物。 本征免性质代码为"101",简称"一般征税"。 二、适用范围 本征免性质限于海关依据法律、行政法规、规章规定的法定税率征收进出口关税、进口环节税的进出口货物,包括按照公开暂定、关税配额、反倾销、反补贴、保障措施等税率、税额征税或补税的进出口货物。 执行ITA税率的货物(征免性质代码"499")不适用本征免性质。 构成整车特征的汽车零部件纳税 一、定义及代码 构成整车特征的汽车零部件纳税是指自2005年4月1日起对经国家有关部门核准或备案的汽车生产企业,生产组装汽车进口所需的构成整车特征的汽车零部件按整车税率征税。 本征免性质代码为"118",简称"整车征税"。 二、适用范围 (一)除进口汽车全散件(CKD)或半散件(sKD)按正常通关程序办理外,海关对汽车生产企业进口构成整车特征的汽车零部件实施备案、税款总担保、凭备案和税款总担保通关、整车特征核定、集中征税和

编码规范详细说明_v1详解

4J 代码规范 1性能级别规范 1.1对潜在的业务级异常捕获处理打印日志,参照spring源代码 1.2controller或service层需要数据校验,确保系统安全,具体在哪一层校验需确认 1.3业务处理代码只能出现于service层,确保事务安全与mvc结构清晰,如jsp,controller都不能有 1.4严禁循环中连接数据库,确保一次请求不产生过多的数据库连接 1.5使用sql直接进行统计查询等业务复杂度较低的操作,确保java代码的可读性与java内存性能 1.6业务复杂的操作会涉及到多次数据库连接,包括多表查询,更新等,这种情况尽量避免,可以将部分业务合并在一个sql中,或者使用存储过程 1.7sql语句避免直接使用“*”,除非在外层语句 1.8不允许单一的count语句使用orderby,limit,count(*) 1.9查询时分组、排序、条件、结果字段影响效率时,应该跟组长或DBA讨论是否需要建立索引 1.10Java代码不允许sql参数字符拼接方式,必须使用预编译方式(除非参数绝对不发生变化),确保数据安全与查询效率 1.11表间关联字段类型一致,确保索引不会失效 1.12mysql中没有函数索引,所以查询时尽量不要有索引列的函数,如substr(create_date, 1, 6) = substr('20110728', 1, 6) 实质是等于某月改写为 ——————————————————————————————————————————————————————————————— - 1 -

create _date >=to_char(last_day(add_months(to_date('20110728','yyyymmdd'),-1)) + 1,'yyyymmdd')and create _date <= 该月最后一天 1.13编写sql时避免大表的全表扫描,尽量走索引,正确使用left join,right join,join对数据和效率影响 2代码基本规范 2.1数据库所有字段都为大写,单词之间用_分隔 2.2在所有JSP、JAVA代码中,如果是一个数据库字段对应的变量,则名称和数据库字段名称相同 2.3在JAVA、JSP中,除了与数据库字段对应的变量以外的所有变量,都以小写字母开头驼峰式命名,变量中各单词之间不要空格,不要有其它字母, 例如helloWorld 是正确的HelloWorld 、hello_world 这些都是错误的。 2.4代码提交到SVN时,在提交界面中,请写清修改的原因、事项 2.5在处理日期型的数据字段时,注意不要随意书写,要兼容ORACLE的写法 2.6在使用GROUP BY语句的时候,要注册兼容ORACLE的写法 2.7凡是牵扯到数据持久化的代码都要封装到dao层,切不可以在bean或者其他的层中写操作数据库的代码。 3代码书写原则 3.1JSP页面中,尽可能不写或者少写JAVA代码 3.2所有JS代码,都写在JSP页面的上方 3.3所有JSP代码、JS代码,都要写上完善的注释,因为这部分代码,会被经常改动。 4文件命名规范 ——————————————————————————————————————————————————————————————— - 2 -

Sip_响应状态码_对照_详解(新)

Sip 响应状态码对照详解 SIP应答消息状态码 与功能 类型状态码状态说明 临时应答(1XX) 100 Trying 正在处理中 180 Ringing 振铃 181 call being forwarder 呼叫正在前向 182 queue 排队 181* session progress 会话进行 会话成功(2XX) 200 OK 会话成功 重定向(3XX) 300 multiple 多重选择 301 moved permanently 永久移动 302 moved temporaily临时移动 305 use proxy 用户代理 380 alternative service 替代服务 请求失败(4XX) 400 bad request 错误请求 401unauthorized 未授权 402 payment required 付费要求 403 forbidden 禁止 404 not found 未发现 405 method no allowed 方法不允许 406 not acceptable 不可接受 407 proxy authentication required 代理需要认证408 request timeout 请求超时 410 gone 离开 413 request entity too large 请求实体太大 414 request-url too long 请求URL太长 415 unsupported media type 不支持的媒体类型416 unsupported url scheme 不支持的URL计划420 bad extension 不良扩展 421 extension required 需要扩展 423 interval too brief 间隔太短 480 temporarily unavailable 临时失效 481 call/transaction does not exist 呼叫/事务不存在482 loop detected 发现环路 483 too many hops 跳数太多 484 address incomplete 地址不完整 485 ambiguous 不明朗 486 busy here 这里忙 487 request terminated 请求终止 488 not acceptable here 这里请求不可接受 491 request pending 未决请求 493 undecipherable 不可辨识

SIP消息代码含义

sip代码含义 1xx = 通知性应答 100 正在尝试 180 正在拨打 181 正被转接 182 正在排队 183 通话进展 2xx = 成功应答 200 OK 202 被接受:用于转介 3xx = 转接应答 300 多项选择 301 被永久迁移 302 被暂时迁移 305 使用代理服务器 380 替代服务 4xx = 呼叫失败 400 呼叫不当 401 未经授权:只供注册机构使用,代理服务器应使用代理服务器授权407 402 要求付费(预订为将来使用) 403 被禁止的 404 未发现:未发现用户 405 不允许的方法 406 不可接受 407 需要代理服务器授权 408 呼叫超时:在预定时间无法找到用户 410 已消失:用户曾经存在,但已从此处消失 413 呼叫实体过大 414 呼叫URI过长 415 不支持的媒体类型 416 不支持的URI方案 420 不当扩展:使用了不当SIP协议扩展,服务器无法理解该扩展 421 需要扩展 423 时间间隔过短

480 暂时不可使用 481 通话/事务不存在 482 检测到循环 483 跳数过多 484 地址不全 485 模糊不清 486 此处太忙 487 呼叫被终止 488 此处不可接受 491 呼叫待批 493 无法解读:无法解读S/MIME文体部分 5xx = 服务器失败 500 服务器部错误 501 无法实施:SIP呼叫方法在此处无法实施 502 不当网关 503 服务不可使用 504 服务器超时 505 不支持该版本:服务器不支持SIP协议的这个版本 513 消息过长 6xx = 全局失败 600 各处均忙 603 拒绝 604 无处存在 606 不可使用 SIP协议应答码 应答代码 应答码是包含了,并且扩展了HTTP/1.1应答码。并不是所有的HTTP/1.1应答码都适当应用,只有在折里指出的是适当的。其他HTTP/1.1应答码不应当使用。并且,SIP也定义了新的应答码系列,6xx。 1 临时应答1xx 临时应答,也就是消息性质的应答,标志了对方服务器正在处理请求,并且还没有决定最后

SIP 协议学习总结

SIP 协议学习 1初识SIP 1.1 SIP定义 Session Initiation Protocol会话初始协议是基于文本的信令协议。是一个在IP网络上进行多媒体通信的应用层控制协议。用来创建、修改和终结一个或多个参与者参加的会话进程。 SIP协议可用于发起会话,也可用于邀请成员加入已经用其他方式建立的会话。 SIP基于文本编解码。采用事务机制,每一个请求出发Server的操作方法,请求和响应构成一个事务。事务间彼此独立。 SIP独立于底层传输协议。SIP协议承载在IP网,传输层协议可用TCP或UDP,推荐首选UDP。 SIP支持5方面功能: 1.用户定位:确定通信所用的端系统位置 2.用户能力交换:确定所用的媒体类型和媒体参数 3.用户可用性判定:确定被叫方是否空闲和是否愿意加入通信 4.呼叫建立:邀请和提示被叫,在主被叫之间传递呼叫参数 5.呼叫处理:包括呼叫终结和呼叫转移等 1.2 SIP特点 1.一个正在发展和不断研究中的协议。 2.简练、开放、兼容和可扩展等原则。 3.充分注意到因特网开放而复杂的网络环境下的安全问题。 4.充分考虑了对PSTN的各种业务,包括IN(Intelligent Network智能网)业务和ISDN业 务(Integrated Services Digital Network综合业务数字网)的支持。

2SIP协议 2.1 SIP协议结构 1.最底层的是它的语法和编码层。编码方式是采用扩展的Backus-Naur Form grammar(BNF 范式)。 2.第二层是传输层。定义了一个客户端如何发送请求和接收应答,以及一个服务器如何接 收请求和发送应答。所有的SIP要素都包含一个通讯层。 3.第三层是事务层。事务层处理应用服务层的重发,匹配请求的应答,以及应用服务层的 超时。任何一个用户代理客户端(user agent client UAC)完成的事情都是由一组事务构成的。有状态的代理服务器包含一个事务层;无状态的代理服务器不包含事务层。 4.事务层之上是事务用户TU。每个SIP实体,除了无状态代理,都是一个事务用户。TU 可以创建客户事务,也可以取消客户事务。 2.2 SIP网络结构 User Agent Client (UAC) 用户代理客户端:是一个逻辑的概念,是请求的创建方。UAC 角色只在事务中存在。 User Agent Server(UAS) 用户代理服务器:是一个逻辑的实体,对SIP请求做出接受、拒绝或者转发的响应。UAS角色在事务中存在。 注:UAC和UAS,是在串行事务处理的原理上定义的。当主叫方A发出INVITE请求的

代码编写规范说明书

代码编写规范说明书(c#.net与https://www.360docs.net/doc/565982950.html,)目录 1 目的 2 范围 3 注释规范 3.1 概述 3.2 自建代码文件注释 3.3 模块(类)注释 3.4 类属性注释 3.5 方法注释 3.6 代码间注释 4 命名总体规则 5 命名规范 5.1 变量(Variable)命名 5.2 常量命名 5.3 类(Class)命名 5.4 接口(Interface)命名 5.5 方法(Method)命名 5.6 名称空间Namespace)命名 6 编码规则 6.1 错误检查规则 6.2 大括号规则 6.3 缩进规则 6.4 小括号规则 6.5 If Then Else规则 6.6 比较规则 6.7 Case规则 6.8 对齐规则 6.9 单语句规则 6.10 单一功能规则 6.11 简单功能规则 6.12 明确条件规则 6.13 选用FALSE规则 6.14 独立赋值规则 6.15 定义常量规则 6.16 模块化规则 6.17 交流规则 7 编程准则 7.1 变量使用 7.2 数据库操作 7.3 对象使用 7.4 模块设计原则 7.5 结构化要求 7.6 函数返回值原则 8 代码包规范 8.1 代码包的版本号

8.2 代码包的标识 9 代码的控制 9.1 代码库/目录的建立 9.2 代码归档 10 输入控制校验规则 10.1 登陆控制 10.2 数据录入控制 附件1:数据类型缩写表 附件2:服务器控件名缩写表 1 目的 一.为了统一公司软件开发设计过程的编程规范 二.使网站开发人员能很方便的理解每个目录,变量,控件,类,方法的意义 三.为了保证编写出的程序都符合相同的规范,保证一致性、统一性而建立的程序编码规范。 四.编码规范和约定必须能明显改善代码可读性,并有助于代码管理、分类范围适用于企业所有基于.NET平台的软件开发工作 2 范围 本规范适用于开发组全体人员,作用于软件项目开发的代码编写阶段和后期维护阶段。 3 注释规范 3.1 概述 a) 注释要求英文及英文的标点符号。 b) 注释中,应标明对象的完整的名称及其用途,但应避免对代码过于详细的描述。 c) 每行注释的最大长度为100个字符。 d) 将注释与注释分隔符用一个空格分开。 e) 不允许给注释加外框。 f) 编码的同时书写注释。 g) 重要变量必须有注释。 h) 变量注释和变量在同一行,所有注释必须对齐,与变量分开至少四个“空格”键。 如:int m_iLevel,m_iCount; // m_iLevel ....tree level // m_iCount ....count of tree items string m_strSql; //SQL i) 典型算法必须有注释。 j) 在循环和逻辑分支地方的上行必须就近书写注释。 k) 程序段或语句的注释在程序段或语句的上一行 l) 在代码交付之前,必须删掉临时的或无关的注释。 m) 为便于阅读代码,每行代码的长度应少于100个字符。 3.2 自建代码文件注释 对于自己创建的代码文件(如函数、脚本),在文件开头,一般编写如下注释: /****************************************************** FileName: Copyright (c) 2004-xxxx *********公司技术开发部 Writer: create Date: Rewriter:

成交方式代码表

海关征免性质代码表
征免性质是海关对进出口货物征、减、免税进行分类统计分析的重要数据。本章明确各类征免性质的内容 和范围,通过征免性质详述海关对进出口货物征、减、免税的管理规定,并明确在报关单填制过程中的要 求和在海关业务信息化管理系统中的逻辑 一、定以 征免性质是指海关对进出口货物实施征、减、免税管理的性质类别 二.征免性质的分类 A 征免性质分为照章征税、法定减免税、特定减免税和临时减免税四部分。其中特定减免税又分为按地 区实施的税收政策、按用途实施的税收政策、按贸易性质实施的税收政策、按企业性质和资金来源实施的 税收政策等五类。 B 报关单及海关其他作业单证的“征免性质”栏应按照海关核发的《进出口货物征免税证明》中批注的征 免性质填报或根据实际情况按《征免性质代码表》选择填报相应的征免性质简称或代码。 C 一份报关单或海关其他作业单证只允许填报一种征免性质,涉及多个征免性质的,应分单填报
代码 101 201 299 301 307 399 401 403 406 412 413 417 418 420 421 422
简称 一般征税 无偿援助 其他法定 特定区域 保税区 其他地区 科教用品 技术改造 重大项目 基础设施 残疾人 远洋渔业 国产化 远洋船舶 内销设备 集成电路 一般征税进出口货物 无偿援助进出口物资 其他法定减免税进出口货物 特定区域进口自用物资及出口货物 保税区进口自用物资 其他执行特殊政策地区出口货物 大专院校及科研机构进口科教用品 企业技术改造进口货物 国家重大项目进口货物
全称
通信、港口、铁路、公路、机场建设进口设备 残疾人组织和企业进出口货物 远洋渔业自捕水产品 国家定点生产小轿车和摄录机企业进口散件 远洋船舶及设备部件 内销远洋船用设备及关键部件 集成电路生产企业进口货物

代码注释规范说明

Comments criterion of the Code 在多个PROJIECT共同开发的前提下,为了减少修改升级CODE过程中出现失误和方便SI 人员对代码的维护,加强部门整体代码注释规范,建议通过在每一次代码修改过程中添加代码标志符进行注释,这样可以使软件工程师在升级代码的过程中减少错误率,同时可以保持对以前版本代码的修改思路清晰,能在最短时间里复查代码中的错误。 标准C++/C的文件结构: // Copyright (c) Microsoft Corporation. All rights reserved. // Use of this source code is subject to the terms of the Microsoft end-user // license agreement (EULA) under which you licensed this SOFTWARE PRODUCT. // If you did not accept the terms of the EULA, you are not authorized to use // this source code. For a copy of the EULA, please see the LICENSE.RTF on your // install media. /** * Port Copyright (c) Hisys Corporation. All rights reserved. * @file batt_pdd.c * Abstract * This file contains battery driver PDD implementation. * Change Log * 2006.2.21 Shi Yuehua Initial Version * **/ 代码注释规范如下: //***********COMMENTS-HISTORY***********// /****************************************************************************** *NAME | SIGN | PROJECT | SUMMARY * *------------------------------------------------------------------------------ *Johson.Li M060806_A HXS006 Use the two methods to measure the battery voltage. *Johson.Li M060812_A HXS010 Change the init array value from 4 to 8. *Johson.Li M060812_B COMMON Change the USB CHANGING conditions. * ........... * ........... ******************************************************************************/ 代码注释标题声明包含四部分: 1.作者名称 2.标记符 3.项目名称 4.摘要 1.《NAME》:修改该部分CODE的软件人员名称(英文名称&中文名称拼音缩写),第一个字母大写。 2.《SIGN》:该标记符应在所有本次修改代码前面声明,主要是为了方便搜索,当我们想查找本次为了实现某个功能所做的代码修改时,可以搜索此标记符,即可找到全部修改过的相关代码段。 标记符:M060806_A M: 英文缩写 060806:代表修改日期为2006.08.06 A:代表当天添加或者修改的第一项功能。如果当日继续做其他有别与本次功能差异的修改,可以采用M060806_B的方法,依次类推(A、B、C、D、E、F……) .

java代码规范详细版

Java代码规范 本Java代码规范以SUN的标准Java代码规范为基础,为适应我们公司的实际需要,可能会做一些修改。本文档中没有说明的地方,请参看SUN Java标准代码规范。如果两边有冲突,以SUN Java标准为准。 1. 标识符命名规范 1.1 概述 标识符的命名力求做到统一、达意和简洁。尽量做到每个人按照规范来,多人开发如一人开发一样。 1.1.1 统一 统一是指,对于同一个概念,在程序中用同一种表示方法,比如对于供应商,既可以用supplier,也可以用provider,但是我们只能选定一个使用,至少在一个Java项目中保持统一。统一是作为重要的,如果对同一概念有不同的表示方法,会使代码混乱难以理解。即使不能取得好的名称,但是只要统一,阅读起来也不会太困难,因为阅读者只要理解一次。 1.1.2 达意 达意是指,标识符能准确的表达出它所代表的意义,比如:newSupplier, OrderPaymentGatewayService等;而supplier1, service2,idtts等则不是好的命名方式。准确有两成含义,一是正确,而是丰富。如果给一个代表供应商的变量起名是order,显然没有正确表达。同样的,supplier1, 远没有targetSupplier意义丰富。 1.1.3 简洁 简洁是指,在统一和达意的前提下,用尽量少的标识符。如果不能达意,宁愿不要简洁。比如:theOrderNameOfTheTargetSupplierWhichIsTransfered 太长,transferedTargetSupplierOrderName则较好,但是transTgtSplOrdNm就不好了。省略元音的缩写方式不要使用,我们的英语往往还没有好到看得懂奇怪的缩写。 1.1.4 骆驼法则

SIP各类消息

SIP各类消息简介 1.消息简介 sip消息类型和消息格式 SIP是一个基于文本的协议,使用的是UTF-8字符集. SIP消息主要分为两大类: 一类是由客户端发往服务器的请求消息(Request); 一类是由服务器发往客户端的应答消息(Response). 一个基本的SIP消息包括起始行、一个或多个头字段、说明头字段结束的空行和一个可选的消息体。 消息=起始行(包括请求行/状态行;请求行规定了请求的类别,而状态行指出了每个请求的状态,比如是成功还是失败。如果是失败的话还要给出失败的原因或类型。) *头字段 CRLF [消息体] (消息首部给出了关于请求或应答的更多信息一般包括消息的来源、规定的消息接收方,另外还包括一些其他方面的重要信息。消息体通常描述将要建立会议的类型包括所交换媒体的描述,但不具体定义消息体的内容或结构,其结构或内容使用另外一个协议来描述,就是会话描述协议SDP。) 2.请求消息 请求行=方法+空格+请求地址+SIP版本号+空行 通过一个请求行作为起始行,请求行包括了方法名、请求的URL、协议版本号、中间用空格分开。 六种请求方法: INVITE 发出呼叫会话请求 ACK INVITE请求被最终请求 BYE 释放一个呼叫会话 CANCEL 取消挂起的呼叫 REGISTER 登记注册用户代理 OPTIONS 查询服务器能力 3.应答消息 状态行=SIP版本+空格+状态码+空格+相关文本短语+空行 SIP应答消息状态码与功能 类型状态码状态说明 临时应答(1XX) 100 Trying 正在处理中 180 Ringing 振铃 181 call being forwarder 呼叫正在前向 182 queue 排队

中国海关报关征免性质代码表

代码征免性质特简称征免性质全称 101 一般征税一般征税进出口货物 118 整车征税构成整车特征的汽车零部件纳税 119 零部件征不构成整车特征的汽车零部件纳税 201 无偿援助无偿援助进出口物资 299 其他法定其他法定减免税进出口货物 301 特定区域特定区域进口自用物资及出口货物 307 保税区保税区进口自用物资 399 其他地区其他执行特殊政策地区出口货物 401 科教用品大专院校及科研机构进口科教用品 403 技术改造企业技术改造进口货物 406 重大项目国家重大项目进口货物 412 基础设施通信、港口、铁路、公路、机场建设进口设备 413 残疾人残疾人组织和企业进出口货物 417 远洋渔业远洋渔业自捕水产品 418 国产化国家定点生产小轿车和摄录机企业进口散件 419 整车特征构成整车特征的汽车零部件进口 420 远洋船舶远洋船舶及设备部件 421 内销设备内销远洋船用设备及关键部件 422 集成电路集成电路生产企业进口货物 423 膜晶显“膜晶显”生产企业进口货物 499 ITA产品非全税号信息技术产品 501 加工设备加工贸易外商提供的不作价进口设备 502 来料加工来料加工装配和补偿贸易进口料件及出口成品 503 进料加工进料加工贸易进口料件及出口成品 506 边境小额边境小额贸易进口货物 510 港澳OPA 港澳在内地加工的纺织品获证出口 601 中外合资中外合资经营企业进出口货物 602 中外合作中外合作经营企业进出口货物 603 外资企业外商独资企业进出口货物 606 海上石油勘探、开发海上石油进口货物 608 陆地石油勘探、开发陆地石油进口货物 609 贷款项目利用贷款进口货物 611 贷款中标国际金融组织贷款、外国政府贷款中标机电设备零部件789 鼓励项目国家鼓励发展的内外资项目进口设备 799 自有资金外商投资额度外利用自有资金进口设备、备件、配件801 救灾捐赠救灾捐赠进口物资 802 扶贫慈善境外向我境内无偿捐赠用于扶贫慈善的免税进口物资888 航材减免经核准的航空公司进口维修用航空器材 898 国批减免国务院特准减免税的进出口货物 998 内部暂定享受内部暂定税率的进出口货物 999 例外减免例外减免税进出口货物

相关文档
最新文档