首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >事件的唯一ID和通道呼叫UUID之间有什么区别?

事件的唯一ID和通道呼叫UUID之间有什么区别?
EN

Stack Overflow用户
提问于 2014-06-26 16:57:09
回答 1查看 2.3K关注 0票数 4

Freeswitch事件包含两个变量(Unique-IDChannel-Call-UUID),它们似乎总是被设置为完全相同的值:leg的唯一标识符。

我不明白这样做的目的,虽然有关于FS的wiki的单行文档 (“这个频道的调用腿的uuid”),但Channel-Call-UUID没有。

更糟糕的是:我来到两个例子时,他们的价值观是不同的:

代码语言:javascript
复制
[...]
Channel-Call-UUID:  c9bbde8b-379b-45d4-b193-3f761a44f3e2
Unique-ID:  81273088-c31f-4469-85a6-c878e42210e5
[...]

[...]
Channel-Call-UUID: ada7f3de-2374-4144-9b1d-eade29df0779
Unique-ID: f3ebca6c-d9cd-4f89-ae12-748e6c479dda
[...]

我需要能够清楚地识别代码中的一条腿,所以我想知道

  • 哪个是最准确的
  • 另一个的目的是什么
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-28 17:49:47

  • "Unique-ID“标识当前通道的分支(此值似乎始终与"Caller-Unique-ID”、记录为“此通道的uuid”相同)。
  • "Channel-Call-UUID“是一个ID,可用于标识已应答/桥接的通道。它似乎来自频道创建者的"Unique-ID“。 B-腿(被调用方)的"Channel-Call-UUID“值与其"Unique-ID”值不同,但它与"Other-Leg-Unique-ID“标头的值相同。

源代码(src/switch_channel.c)支持我以前的声明:

代码语言:javascript
复制
if ((v = switch_channel_get_variable(channel, "call_uuid"))) {
        switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Channel-Call-UUID", v);
} else {
        switch_event_add_header_string(event, SWITCH_STACK_BOTTOM, "Channel-Call-UUID", switch_core_session_get_uuid(channel->session));
}
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24436223

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档