1

我正在寻找能够解码 H323 数据包的第三方库。我想我应该可以使用 OpenH323。但由于它是一个大型库,我不知道应该使用哪个类和函数来解码数据包。任何意见,将不胜感激!

4

1 回答 1

2

OpenH323 多年来一直没有得到维护。您应该改用后续的H323Plus

逻辑是将接收到的缓冲区解码为 H323Plus 类之一。

H225_RasMessage ras;
ras.Decode(buffer);

从那里开始,您必须检查消息中的标签并使用对子类的引用来访问特定字段。

if (ras.GetTag() == H225_RasMessage::e_gatekeeperConfirm) {
    H225_GatekeeperConfirm & gcf = ras;
    ...
} else ...

对于 Q.931 信令消息,您必须先剥离 TPKT 包装。

如果您想避免手动执行所有这些操作,请使用包含的框架并仅将 H323EndPoint 子类化,就像 H323Plus 示例应用程序一样。

于 2015-01-20T16:01:18.350 回答