⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 h323f.c

📁 基于h323协议的软phone
💻 C
📖 第 1 页 / 共 2 页
字号:
    return null_event;
}

/**
 * 终结,回到初始状态
 */
int h323_dead_end_state_local_on_hook_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_dead_end_state_local_on_hook_event\n");
    return null_event;
}

/**
 * 终结一路通话后,回到另一路通话状态
 */
int h323_dead_end_state_to_bidir_voice_state(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_dead_end_state_to_bidir_voice_state\n");
    return null_event;
}

/**
 * 返回忙或进行呼叫转移
 */
int h323_wait_for_connect_state_receive_query_availability_event(s_event*
    psEvent, s_task* psTask)
{
    printf(
        "action: h323_wait_for_connect_state_receive_query_availability_event\n");
    return null_event;
}

/**
 * (收到CFU、CFB重定向消息);
 * 向“B”发送CallRerouting.ReturnResult、terminate消息;
 * 向"C"发送divertingLegInfo2消息,产生to_query_availability_state事件;
 * 出错则产生to_dead_end_state事件
 */
int h323_wait_for_connect_state_call_forward_rcvd(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_wait_for_connect_state_call_forward_rcvd\n");
    return null_event;
}

/**
 * 终结terminate所指通道的通话
 */
int h323_wait_for_connect_state_receive_terminate_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_wait_for_connect_state_receive_terminate_event\n");
    return null_event;
}

/**
 * 终结当前通话,产生to_dead_end_state事件
 */
int h323_wait_for_connect_state_timeout_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_wait_for_connect_state_timeout_event\n");
    return null_event;
}

/**
 * 收到错误消息,取消等待连接
 */
int h323_wait_for_connect_state_receive_error_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_wait_for_connect_state_receive_error_event\n");
    return null_event;
}

/**
 * 播放忙音,产生to_dead_end_state
 */
int h323_wait_for_connect_state_receive_not_available_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_wait_for_connect_state_receive_not_available_event\n");
    return null_event;
}

/**
 * 终结,回到初始状态
 */
int h323_wait_for_connect_state_local_on_hook_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_wait_for_connect_state_local_on_hook_event\n");
    return null_event;
}

int h323_wait_for_connect_state_to_dead_end_state(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_wait_for_connect_state_to_dead_end_state\n");
    return null_event;
}

int h323_wait_for_connect_state_to_bidir_voice_state(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_wait_for_connect_state_to_bidir_voice_state\n");
    return null_event;
}

/**
 * 停止播放等待铃声;
 * 发送WP_SEND_CONN_ACK,接通voice开始通话;
 * 若出错则产生to_dead_end_state事件
 */
int h323_wait_for_connect_state_receive_connect_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_wait_for_connect_state_receive_connect_event\n");
    return null_event;
}

int h323_wait_for_connect_state_to_query_availability_state(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_wait_for_connect_state_to_query_availability_state\n");
    return null_event;
}

/**
 * 屏显号码,发送号码
 */
int h323_bidir_voice_state_digit_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_bidir_voice_state_digit_event\n");
    return null_event;
}

/**
 * 返回忙或进行呼叫转移
 */
int h323_bidir_voice_state_receive_query_availability_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_bidir_voice_state_receive_query_availability_event\n");
    return null_event;
}

/**
 * 发送WP_SEND_CALL_TRANSFER_SETUP,产生to_query_availability_state事件,若已使用2个通道,或request信息有误,发送响应出错消息
 */
int h323_bidir_voice_state_call_transfer_request(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_bidir_voice_state_call_transfer_request\n");
    return null_event;
}

/**
 * 返回忙
 */
int h323_bidir_voice_state_call_transfer_identify_query(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_bidir_voice_state_call_transfer_identify_query\n");
    return null_event;
}

/**
 * 清除全局量
 */
int h323_bidir_voice_state_call_transfer_abandon(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_bidir_voice_state_call_transfer_abandon\n");
    return null_event;
}

/**
 * 刷新LCD屏显内容
 */
int h323_bidir_voice_state_timeout_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_bidir_voice_state_timeout_event\n");
    return null_event;
}

int h323_bidir_voice_state_to_dead_end_state(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_bidir_voice_state_to_dead_end_state\n");
    return null_event;
}

/**
 * 收到终结信号,如对方已挂机
 */
int h323_bidir_voice_state_receive_terminate_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_bidir_voice_state_receive_terminate_event\n");
    return null_event;
}

/**
 * 终结,回到初始状态
 */
int h323_bidir_voice_state_local_on_hook_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_bidir_voice_state_local_on_hook_event\n");
    return null_event;
}

int h323_bidir_voice_state_to_ringing_state(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_bidir_voice_state_to_ringing_state\n");
    return null_event;
}

/**
 * 通话过程中呼叫转移,进入calltransfer开始等待按键
 */
int h323_bidir_voice_state_call_transfer_key_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_bidir_voice_state_call_transfer_key_event\n");
    return null_event;
}

int h323_bidir_voice_state_to_query_availability_state(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_bidir_voice_state_to_query_availability_state\n");
    return null_event;
}

int h323_ringing_state_to_on_hook_state(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_to_on_hook_state\n");
    return null_event;
}

int h323_ringing_state_local_on_hook_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_local_on_hook_event\n");
    return null_event;
}

/**
 * 返回忙或进行呼叫转移
 */
int h323_ringing_state_receive_query_availability_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_ringing_state_receive_query_availability_event\n");
    return null_event;
}

/**
 * 终结terminate所指通道的通话,若为当前振铃的通话,记录未接来电
 */
int h323_ringing_state_receive_terminate_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_receive_terminate_event\n");
    return null_event;
}

/**
 * 根据全局量判断当前是CT、callforward还是普通呼叫,发出对应的响应消息,记录已接来电,产生to_wait_for_connect_state
 */
int h323_ringing_state_local_off_hook_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_local_off_hook_event\n");
    return null_event;
}

/**
 * 清除calltransfer相关全局量
 */
int h323_ringing_state_call_transfer_abandon(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_call_transfer_abandon\n");
    return null_event;
}

/**
 * 若设置CFNR,进行呼叫转移;否则,停止振铃,记录未接来电,产生to_on_hook_state;
 */
int h323_ringing_state_timeout_event(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_timeout_event\n");
    return null_event;
}

int h323_ringing_state_to_bidir_voice_state(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_to_bidir_voice_state\n");
    return null_event;
}

int h323_ringing_state_to_wait_for_connect_state(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_ringing_state_to_wait_for_connect_state\n");
    return null_event;
}

int h323_ringing_state_to_dead_end_state(s_event* psEvent, s_task* psTask)
{
    printf("action: h323_ringing_state_to_dead_end_state\n");
    return null_event;
}

/**
 * 收集、记录号码
 */
int h323_collect_transfer_digits_state_digit_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_collect_transfer_digits_state_digit_event\n");
    return null_event;
}

/**
 * 返回忙或进行呼叫转移
 */
int h323_collect_transfer_digits_state_receive_query_availability_event(s_event*
    psEvent, s_task* psTask)
{
    printf(
        "action: h323_collect_transfer_digits_state_receive_query_availability_event\n");
    return null_event;
}

/**
 * 终结terminate所指通道的通话
 */
int h323_collect_transfer_digits_state_receive_terminate_event(s_event* psEvent,
    s_task* psTask)
{
    printf(
        "action: h323_collect_transfer_digits_state_receive_terminate_event\n");
    return null_event;
}

/**
 * 已输入的号码向前清除一位
 */
int h323_collect_transfer_digits_state_cancel_key_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_collect_transfer_digits_state_cancel_key_event\n");
    return null_event;
}

/**
 * 提供速拨功能:
 * 若已输入的号码在电话本的号码编号范围以内,
 * 则拨出对应编号的电话号码
 */
int h323_collect_transfer_digits_state_long_digit_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_collect_transfer_digits_state_long_digit_event\n");
    return null_event;
}

/**
 * 播放转接音(ringback_tone);
 * 发送WP_INITIATE_CALL_TRANSFER;
 * 产生to_await_call_transfer_state事件;
 * 若出错产生to_bidir_voice_state事件
 */
int h323_collect_transfer_digits_state_timeout_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_collect_transfer_digits_state_timeout_event\n");
    return null_event;
}

/**
 * 播放转接音(ringback_tone);
 * 发送WP_INITIATE_CALL_TRANSFER;
 * 若出错产生to_bidir_voice_state事件
 */
int h323_collect_transfer_digits_state_callout_key_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_collect_transfer_digits_state_callout_key_event\n");
    return null_event;
}

int h323_collect_transfer_digits_state_to_await_call_transfer_state(s_event*
    psEvent, s_task* psTask)
{
    printf(
        "action: h323_collect_transfer_digits_state_to_await_call_transfer_state\n");
    return null_event;
}

/**
 * 返回初始状态
 */
int h323_collect_transfer_digits_state_local_on_hook_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_collect_transfer_digits_state_local_on_hook_event\n");
    return null_event;
}

int h323_collect_transfer_digits_state_to_dead_end_state(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_collect_transfer_digits_state_to_dead_end_state\n");
    return null_event;
}

int h323_collect_transfer_digits_state_to_wait_first_digit_state(s_event*
    psEvent, s_task* psTask)
{
    printf(
        "action: h323_collect_transfer_digits_state_to_wait_first_digit_state\n");
    return null_event;
}

/**
 * 清空所有输入的内容,
 * 回到wait_first_digit_state状态
 */
int h323_collect_transfer_digits_state_long_cancel_key_event(s_event* psEvent,
    s_task* psTask)
{
    printf(
        "action: h323_collect_transfer_digits_state_long_cancel_key_event\n");
    return null_event;
}

int h323_collect_transfer_digits_state_to_bidir_voice_state(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_collect_transfer_digits_state_to_bidir_voice_state\n");
    return null_event;
}

/**
 * 返回忙或进行呼叫转移
 */
int h323_await_call_transfer_state_receive_query_availability_event(s_event*
    psEvent, s_task* psTask)
{
    printf(
        "action: h323_await_call_transfer_state_receive_query_availability_event\n");
    return null_event;
}

/**
 * call transfer initiate result received
 * 修改CT全局量,保持原状态,等待终结
 */
int h323_await_call_transfer_state_ct_init_result_rcvd(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_await_call_transfer_state_ct_init_result_rcvd\n");
    return null_event;
}

/**
 * 终结terminate所指通道的通话,产生to_bir_voice_state或to_dead_end_state
 */
int h323_await_call_transfer_state_receive_terminate_event(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_await_call_transfer_state_receive_terminate_event\n");
    return null_event;
}

/**
 * 终止CT,产生to_bidir_voice_state
 */
int h323_await_call_transfer_state_timeout_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_await_call_transfer_state_timeout_event\n");
    return null_event;
}

/**
 * 发送WP_CALL_TRANSFER_ABANDON至“C”;
 * terminate“B”
 */
int h323_await_call_transfer_state_local_on_hook_event(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_await_call_transfer_state_local_on_hook_event\n");
    return null_event;
}

int h323_await_call_transfer_state_to_dead_end_state(s_event* psEvent, s_task*
    psTask)
{
    printf("action: h323_await_call_transfer_state_to_dead_end_state\n");
    return null_event;
}

int h323_await_call_transfer_state_to_bidir_voice_state(s_event* psEvent,
    s_task* psTask)
{
    printf("action: h323_await_call_transfer_state_to_bidir_voice_state\n");
    return null_event;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -