在线文档教程

megaco_encoder

megaco_encoder

模块

megaco_encoder

模块摘要

Megaco编码器的行为。

描述

应该从megaco_encoder回调模块:

数据类型

megaco_message() = #'MegacoMessage{}' transaction() = {transactionRequest, transaction_request()} | {transactionPending, transaction_reply()} | {transactionReply, transaction_pending()} | {transactionResponseAck, transaction_response_ack()} | {segmentReply, segment_reply()} transaction_request() = #'TransactionRequest'{} transaction_pending() = #'TransactionPending'{} transaction_reply() = #'TransactionReply'{} transaction_response_ack() = [transaction_ack()] transaction_ack() = #'TransactionAck'{} segment_reply() = #'SegmentReply'{} action_request() = #'ActionRequest'{} action_reply() = #'ActionReply'{}

输出

Module:encode_message(EncodingConfig, Version, Message) -> {ok, Bin} | Error

类型

编码一个megaco消息。

Module:decode_message(EncodingConfig, Version, Bin) -> {ok, Message} | Error

类型

解码megaco消息。

注意,如果Version参数是dynamic,解码器应尝试从消息本身计算出实际版本,然后使用适当的解码器,例如版本1。

另一方面,如果Version参数是一个整数,则意味着这是消息的预期版本,应该使用该版本的解码器。

Module:decode_mini_message(EncodingConfig, Version, Bin) -> {ok, Message} | Error

类型

执行megaco消息的最小解码。

此功能的目的是对Megaco消息进行最小限度的解码。 一个成功的结果是一个'MegacoMessage',其中只有版本和中期已经启动。 当decode_message / 3函数未能找出消息的中间(实际发送者)时,megaco_messenger模块使用此函数。

请再次注意,成功解码只返回部分启动的消息。

Module:encode_transaction(EncodingConfig, Version, Transaction) -> OK | Error

类型

编码一个megaco事务。如果出于某种原因不支持该功能,该功能应返回错误原因not_implemented

此功能既用于使用交易发件人时也用于分段。所以,对于其中的任何一个人来说,这个功能必须完全支持!

Module:encode_action_requests(EncodingConfig, Version, ARs) -> OK | Error

类型

编码megaco动作请求。 当用户调用encode_actions / 3函数时调用此函数。 如果该函数从未使用过,或者编解码器无法支持(个别操作的编码),则返回错误原因not_implemented。

Module:encode_action_reply(EncodingConfig, Version, AR) -> OK | Error

类型

编码一个megaco动作回复。如果出于某种原因不支持该功能,该功能应返回错误原因not_implemented

此功能在配置分段时使用。所以,为了这个工作,这个功能必须完全支持!