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

📄 h323.cpp

📁 基于h323协议的软phone
💻 CPP
📖 第 1 页 / 共 3 页
字号:

    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 8].iEvent =
        local_on_hook_event;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 8].iState =
        ST_H323_ON_HOOK_STATE;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 8].funcAck =
        &h323_collect_digits_state_local_on_hook_event;

    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 9].iEvent =
        to_dead_end_state;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 9].iState =
        ST_H323_DEAD_END_STATE;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 9].funcAck =
        &h323_collect_digits_state_to_dead_end_state;

    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 10].iEvent =
        to_bidir_voice_state;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 10].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 10].funcAck =
        &h323_collect_digits_state_to_bidir_voice_state;

    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 11].iEvent =
        to_wait_first_digit_state;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 11].iState =
        ST_H323_WAIT_FIRST_DIGIT_STATE;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 11].funcAck =
        &h323_collect_digits_state_to_wait_first_digit_state;

    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 12].iEvent =
        long_cancel_key_event;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 12].iState =
        ST_H323_WAIT_FIRST_DIGIT_STATE;
    pSM->pState[ST_H323_COLLECT_DIGITS_STATE].pEventAck[ 12].funcAck =
        &h323_collect_digits_state_long_cancel_key_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].iSize = 11;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck = (s_event_ack* )malloc(sizeof(
        s_event_ack)* 11);

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 0].iEvent =
        to_bidir_voice_state;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 0].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 0].funcAck =
        &h323_query_availability_state_to_bidir_voice_state;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 1].iEvent =
        receive_connect_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 1].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 1].funcAck =
        &h323_query_availability_state_receive_connect_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 2].iEvent =
        to_dead_end_state;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 2].iState =
        ST_H323_DEAD_END_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 2].funcAck =
        &h323_query_availability_state_to_dead_end_state;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 3].iEvent =
        receive_query_availability_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 3].iState =
        ST_H323_QUERY_AVAILABILITY_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 3].funcAck =
        &h323_query_availability_state_receive_query_availability_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 4].iEvent =
        receive_terminate_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 4].iState =
        ST_H323_QUERY_AVAILABILITY_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 4].funcAck =
        &h323_query_availability_state_receive_terminate_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 5].iEvent =
        receive_not_available_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 5].iState =
        ST_H323_QUERY_AVAILABILITY_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 5].funcAck =
        &h323_query_availability_state_receive_not_available_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 6].iEvent =
        call_forward_rcvd;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 6].iState =
        ST_H323_QUERY_AVAILABILITY_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 6].funcAck =
        &h323_query_availability_state_call_forward_rcvd;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 7].iEvent =
        timeout_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 7].iState =
        ST_H323_QUERY_AVAILABILITY_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 7].funcAck =
        &h323_query_availability_state_timeout_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 8].iEvent =
        local_on_hook_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 8].iState =
        ST_H323_ON_HOOK_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 8].funcAck =
        &h323_query_availability_state_local_on_hook_event;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 9].iEvent =
        to_on_hook_state;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 9].iState =
        ST_H323_ON_HOOK_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 9].funcAck =
        &h323_query_availability_state_to_on_hook_state;

    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 10].iEvent =
        receive_available_event;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 10].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_QUERY_AVAILABILITY_STATE].pEventAck[ 10].funcAck =
        &h323_query_availability_state_receive_available_event;

    pSM->pState[ST_H323_DEAD_END_STATE].iSize = 5;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck = (s_event_ack* )malloc(sizeof(s_event_ack)*
        5);

    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 0].iEvent =
        receive_query_availability_event;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 0].iState =
        ST_H323_DEAD_END_STATE;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 0].funcAck =
        &h323_dead_end_state_receive_query_availability_event;

    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 1].iEvent =
        receive_terminate_event;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 1].iState =
        ST_H323_DEAD_END_STATE;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 1].funcAck =
        &h323_dead_end_state_receive_terminate_event;

    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 2].iEvent = timeout_event;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 2].iState =
        ST_H323_DEAD_END_STATE;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 2].funcAck =
        &h323_dead_end_state_timeout_event;

    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 3].iEvent =
        local_on_hook_event;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 3].iState =
        ST_H323_ON_HOOK_STATE;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 3].funcAck =
        &h323_dead_end_state_local_on_hook_event;

    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 4].iEvent =
        to_bidir_voice_state;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 4].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_DEAD_END_STATE].pEventAck[ 4].funcAck =
        &h323_dead_end_state_to_bidir_voice_state;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].iSize = 11;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck = (s_event_ack* )malloc(sizeof(
        s_event_ack)* 11);

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 0].iEvent =
        receive_query_availability_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 0].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 0].funcAck =
        &h323_wait_for_connect_state_receive_query_availability_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 1].iEvent =
        call_forward_rcvd;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 1].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 1].funcAck =
        &h323_wait_for_connect_state_call_forward_rcvd;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 2].iEvent =
        receive_terminate_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 2].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 2].funcAck =
        &h323_wait_for_connect_state_receive_terminate_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 3].iEvent =
        timeout_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 3].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 3].funcAck =
        &h323_wait_for_connect_state_timeout_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 4].iEvent =
        receive_error_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 4].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 4].funcAck =
        &h323_wait_for_connect_state_receive_error_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 5].iEvent =
        receive_not_available_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 5].iState =
        ST_H323_WAIT_FOR_CONNECT_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 5].funcAck =
        &h323_wait_for_connect_state_receive_not_available_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 6].iEvent =
        local_on_hook_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 6].iState =
        ST_H323_ON_HOOK_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 6].funcAck =
        &h323_wait_for_connect_state_local_on_hook_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 7].iEvent =
        to_dead_end_state;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 7].iState =
        ST_H323_DEAD_END_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 7].funcAck =
        &h323_wait_for_connect_state_to_dead_end_state;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 8].iEvent =
        to_bidir_voice_state;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 8].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 8].funcAck =
        &h323_wait_for_connect_state_to_bidir_voice_state;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 9].iEvent =
        receive_connect_event;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 9].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 9].funcAck =
        &h323_wait_for_connect_state_receive_connect_event;

    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 10].iEvent =
        to_query_availability_state;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 10].iState =
        ST_H323_QUERY_AVAILABILITY_STATE;
    pSM->pState[ST_H323_WAIT_FOR_CONNECT_STATE].pEventAck[ 10].funcAck =
        &h323_wait_for_connect_state_to_query_availability_state;

    pSM->pState[ST_H323_BIDIR_VOICE_STATE].iSize = 12;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck = (s_event_ack* )malloc(sizeof(
        s_event_ack)* 12);

    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 0].iEvent = digit_event;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 0].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 0].funcAck =
        &h323_bidir_voice_state_digit_event;

    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 1].iEvent =
        receive_query_availability_event;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 1].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 1].funcAck =
        &h323_bidir_voice_state_receive_query_availability_event;

    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 2].iEvent =
        call_transfer_request;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 2].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 2].funcAck =
        &h323_bidir_voice_state_call_transfer_request;

    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 3].iEvent =
        call_transfer_identify_query;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 3].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 3].funcAck =
        &h323_bidir_voice_state_call_transfer_identify_query;

    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 4].iEvent =
        call_transfer_abandon;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 4].iState =
        ST_H323_BIDIR_VOICE_STATE;
    pSM->pState[ST_H323_BIDIR_VOICE_STATE].pEventAck[ 4].funcAck =

⌨️ 快捷键说明

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