Our company developed a module in C++ for asterisk for version 1.6. We want to upgrade the module to the latest version of Asterisk 13. The module (in C++) is compiled as dynamic library (*.so) and than is loaded by a code written in C we put in the res Asterisk source code directory. In our C++ code we include “asterisk.h” and other headers from Asterisk. The problem now is when we want to compile the C++ code for version 13 we get the
Looking in the asterisk header channel.h for the version 1.6 the definition of the structure is there, but for version 13 the definition of the structure ast_channel was moved to in main/channel_internal_api.c and that’s why I get these errors since in the channel.h there is only the forward declaration of the structure. How can I overcome this problem?
This is an end user forum. Please use the developer mailing list or IRC channels for developer questions.
Asterisk changed from using a simple shared data implementation of channels, to a C simulation of a property in an object oriented language. You must replace all direct references to channel structure fields with the corresponding get and set function calls.