kamailio 路由返回值

在 Kamailio 的路由系统中,return 0 或 return 1
的返回值在主路由中的处理方式如下:

  1. return 1:
    - 表示路由执行成功
    - 路由函数正常返回,继续执行后续的路由逻辑
    - 不会中断消息处理流程
  2. return 0:
    - 表示路由执行失败或不需要继续处理
    - 会停止当前路由函数的执行
    - 但不会中断整个消息处理流程,只是停止当前路由函数
  3. 在主路由中的调用:
    - 当在主路由(如 request_route)中调用子路由时:
    route(REMOVE_CODECS_INBOUND);
    - 无论子路由返回 0 还是 1,主路由都会继续执行后续的语句
    - 返回值主要用于程序逻辑判断,而不是控制主路由的执行流程
  4. exit 指令:
    - 与 return 不同,exit 会完全终止整个消息处理流程
    - 不会执行后续的任何路由逻辑

因此,return 0 或 return 1
主要用于函数内部的逻辑控制和状态返回,而不是终止整个处理流程。