SIP Request Line

Request-Line = Method SP Request-URI SP SIP-Version CRLF
Method:
        1. REGISTER for registering contact information.
        2. INVITE, ACK, and CANCEL for setting up sessions.
        3. BYE for terminating sessions.
        4. OPTIONS for querying servers about their capabilities.
Request-URI:
SIP-Version:
        1. HTTP        <----> SIP
        2. HTTP1.1    <----> SIP/2.0

SIP Response Line

Status-Line = SIP-Version SP Status-Code SP Reason-Phrase CRLF
Status-Code:
        1xx: Provisional -- request received, continuing to process the request;
            100 Trying
            180 Ringing
            181 Call Is Being Forwarded
            182 Queued
            183 Session Progress
        2xx: Success -- the action was successfully received, understood,and accepted;
            200 OK
        3xx: Redirection -- further action needs to be taken in order to complete the request;
            300 Multiple Choices
            301 Moved Permanently
            302 Moved Temporarily
            305 Use Proxy
            380 Alternative Service
        4xx: Client Error -- the request contains bad syntax or cannot be fulfilled at this server;
            400 Bad Request
            401 Unauthorized
            402 Payment Required
            403 Forbidden
            404 Not Found
            405 Method Not Allowed
            406 Not Acceptable
            407 Proxy Authentication Required
            408 Request Timeout
            410 Gone
            413 Request Entity Too Large
            414 Request-URI Too Long
            415 Unsupported Media Type
            416 Unsupported URI Scheme
            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
        5xx: Server Error -- the server failed to fulfill an apparently valid request;
            500 Server Internal Error
            501 Not Implemented
            502 Bad Gateway
            503 Service Unavailable
            504 Server Time-out
            505 Version Not Supported
            513 Message Too Large
        6xx: Global Failure -- the request cannot be fulfilled at any server.
            600 Busy Everywhere
            603 Decline
            604 Does Not Exist Anywhere
            606 Not Acceptable

SIP Header Fileds

TO
        To: Carol <sip:carol@chicago.com>
From
        From: "Bob" <sips:bob@biloxi.com> ;tag=a48s
        From: sip:+12125551212@phone2net.com;tag=887s
        From: Anonymous <sip:c8oqz84zk7z@privacy.org>;tag=hyh8

Call-ID
        Call-ID: f81d4fae-7dec-11d0-a765-00a0c91e6bf6@foo.bar.com
CSeq
        CSeq: 4711 INVITE
Max-Forwards
Via
        Branch ID: MUST always begin with the characters "z9hG4bK"
Contact

SIP Methods

REGISTER
    UA <----> Proxy <----> Location Service

OPTIONS
    
DIALOG
  only 2xx and 101-199 responses with a To tag, where the request was INVITE, will establish a dialog.
  A dialog established by a non-final response to a request is in the "early" state and it is called an early dialog.

CANCEL

  

Others

  only INVIET has ACK.
  "an ACK for a non-2xx response will also have the same branch ID as the INVITE whose response it acknowledges", that means ACK with non-success response will be part of the INVITE transaction.
  It only has a separate branch ID for 2xx success response which then belongs to another transaction.
  

 Home-Based Routing (S8HR)

Hello SIP Protocol的更多相关文章

  1. 开源sip server & sip client 和开发库 一览

    http://www.voip-info.org/wiki/view/Open+Source+VOIP+Software http://blog.csdn.net/xuyunzhang/article ...

  2. Open Source VOIP applications, both clients and servers (开源sip server & sip client 和开发库)

    SIP Proxies SBO SIP Proxy Bypass All types of Internet Firewall JAIN-SIP Proxy Mini-SIP-Proxy A very ...

  3. Tencent://Message/协议的实现原理

    腾讯官方通过 Tencent://Message/协议可以让QQ用户显示QQ/TM的在线状态发布在互联网上:并且点击 XXX  ,不用加好友也可以聊天 官方链接: http://is.qq.com/w ...

  4. Linux下编译内核配置选项简介

    Code maturity level options代码成熟度选项 Prompt for development and/or incomplete code/drivers 显示尚在开发中或尚未完 ...

  5. openerp - asterisk connector(转载)

    原文:http://www.akretion.com/open-source-contributions/openerp-asterisk-voip-connector OpenERP - Aster ...

  6. 基于QT开发的第三方库

    基于Qt开发的第三方库 分类: Qt2014-02-12 11:34 1738人阅读 评论(0) 收藏 举报 QT第三方库   目录(?)[+]   文章来源:http://blog.csdn.net ...

  7. RFC3261--sip

    本文转载自 http://www.ietf.org/rfc/rfc3261.txt 中文翻译可参考 http://wenku.baidu.com/view/3e59517b1711cc7931b716 ...

  8. 使用 pjsip 代码独立开发

    1.在不改动pjsip代码的情况下,和pjsip工程目录并行建立win32控制台程序工程P2PTraversal 目录结构如下: . ├── pjproject-2.6 └── pjsipdemo 2 ...

  9. monit官方摘录

    Here are the legal global keywords: Keyword Function ----------------------------------------------- ...

随机推荐

  1. c# 状态机实现

    c#仿boost statechart的状态机.去年转到unity使用c#,statechart原来的风格蛮爽的,缺点是编译忒慢,在c#则编译根本不是问题. 不一样的地方首先是简单!因为没做一些东西如 ...

  2. mysql大表设计以及优化

    MYSQL千万级数据量的优化方法积累https://m.toutiao.com/group/6583260372269007374/?iid=6583260372269007374 MySQL 千万级 ...

  3. [蓝桥杯]ALGO-187.算法训练_P0502

    编写一个程序,读入一组整数,这组整数是按照从小到大的顺序排列的,它们的个数N也是由用户输入的,最多不会超过20.然后程序将对这个数组进行统计,把出现次数最多的那个数组元素值打印出来.如果有两个元素值出 ...

  4. 1、minimum-depth-of-binary-tree

    题目描述 Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the ...

  5. react使用ant-design组件库

    新建项目并引入组件 1,全局安装脚手架 npm install -g create-react-app 2,新建项目 create-react-app reactantd 3,安装组件 npm ins ...

  6. 在高并发情况nginx的作用

    1 场景一:如图 在单机的情况下例如:单个tomcat 有100w条请求的时候,而默认tomcat支持的并发数量并不能达到要求,所所以单台服务器 扛不住 容易宕机,瘫痪 2 高并发的情况下要让服务器不 ...

  7. [UE4]Scroll Box带滚动条的容器

    一.黑边,当可以往下滚动的时候,下边会出现黑边.当可以往上滚动的时候,上边也会出现黑边.   Scroll Box.Style.Style:也可以自定义上下左右黑边的样式: 二.Scroll Box. ...

  8. AI与RPA

    RPA(机器人流程自动化)是一类自动化软件工具,它可以通过用户界面使用和理解企业已有的应用,将基于规则的常规操作自动化,例如读取邮件和系统,计算,生成文件和报告,检查文件等.因此,RPA的应用范围非常 ...

  9. centos7安装 owncloud注意事项

    要关于selinux 用来存放文件的目录权限要修改 chown -R apache:apache my.cnf里的binlog_format=mixed前面的注释去掉,不然报mysql错!

  10. XSY contest1586 proB

    题目 现在一圈n个花坛, 每次随机往一个花盆里种花, 一个花盆可以种多颗花, 假如一个花盆两边的花盆都有花, 那么他也将被种上花 问期望种满所有花盆要种几次 首先定义f(i)为放置了i个物品后完全覆盖 ...