0
我添加了一個自定義模塊apps/
文件夾註冊爲ast_channel_topic_all
的主題。不幸的是星號發生段故障每載入模塊。Asterisk停滯訂閱
#include "asterisk.h"
#include "asterisk/module.h"
#include "asterisk/json.h"
#include "asterisk/stasis.h"
#include "asterisk/stasis_channels.h"
#include "asterisk/manager.h"
ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#define AST_MODULE "stasis_test"
static struct stasis_subscription *queue_stasis_message_sub;
static void queue_subscribe_callback(void *data, struct stasis_subscription *sub, struct stasis_topic *topic, struct stasis_message *message){
struct ast_channel_blob *payload = stasis_message_data(message);
// ...
}
static int unload_module(void) {
stasis_unsubscribe_and_join(queue_stasis_message_sub);
return 0;
}
static int load_module(void) {
queue_stasis_message_sub = stasis_subscribe(ast_channel_topic_all(), queue_subscribe_callback, NULL);
if (!queue_stasis_message_sub) {
unload_module();
return AST_MODULE_LOAD_DECLINE;
}
return AST_MODULE_LOAD_SUCCESS;
}
AST_MODULE_INFO(
ASTERISK_GPL_KEY, AST_MODFLAG_LOAD_ORDER, AST_MODULE,
.load = load_module,
.unload = unload_module
);
什麼原因導致此錯誤?期待你的回覆。順便提一下,我使用的星號版本是13.10。
聞起來就像你不能傳遞'NULL'作爲'stasis_subscribe'功能 – LPs
第三個參數這是怎麼了星號正式在源代碼中所做的,應該是對。 –