Как декодировать пакет H323?

Я ищу стороннюю библиотеку, способную декодировать пакеты H323. Я думаю, что я должен быть в состоянии использовать OpenH323. Но так как это большая библиотека, я не знаю, какой класс и функцию мне следует использовать для декодирования пакета. Любой совет будет принят во внимание!

1 ответ

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.

Другие вопросы по тегам