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