/*---------------------------------------------------------------------------*/ static int on_session_event(struct xio_session *session, struct xio_session_event_data *event_data, void *cb_user_context) { pr_info("session event: %s. reason: %s\n", xio_session_event_str(event_data->event), xio_strerror(event_data->reason)); switch (event_data->event) { case XIO_SESSION_CONNECTION_ESTABLISHED_EVENT: on_connection_established(event_data->conn); break; case XIO_SESSION_CONNECTION_TEARDOWN_EVENT: xio_connection_destroy(event_data->conn); break; case XIO_SESSION_REJECT_EVENT: case XIO_SESSION_TEARDOWN_EVENT: g_session = NULL; xio_session_destroy(session); xio_context_stop_loop(ctx); /* exit */ if (pool) { msg_pool_free(pool); pool = NULL; } break; default: break; }; return 0; }
/*---------------------------------------------------------------------------*/ static int on_session_event(struct xio_session *session, struct xio_session_event_data *event_data, void *cb_user_context) { struct session_data *session_data = (struct session_data *) cb_user_context; logit(LOG_INFO, "session event: %s. reason: %s\n", xio_session_event_str(event_data->event), xio_strerror(event_data->reason)); switch (event_data->event) { case XIO_SESSION_CONNECTION_DISCONNECTED_EVENT: case XIO_SESSION_CONNECTION_REFUSED_EVENT: reconnect_flag = 1; break; case XIO_SESSION_CONNECTION_ESTABLISHED_EVENT: on_connection_established(event_data->conn, session_data); break; case XIO_SESSION_CONNECTION_TEARDOWN_EVENT: xio_connection_destroy(event_data->conn); session_data->conn = NULL; break; case XIO_SESSION_TEARDOWN_EVENT: xio_session_destroy(session); xio_context_stop_loop(session_data->ctx); /* exit */ break; default: break; }; return 0; }
void MyH323EndPoint::OnConnectionEstablished(H323Connection & connection, const PString & estCallToken) { if (h323debug) { cout << "\t=-= In OnConnectionEstablished for call " << connection.GetCallReference() << endl; cout << "\t\t-- Connection Established with \"" << connection.GetRemotePartyName() << "\"" << endl; } on_connection_established(connection.GetCallReference(), (const char *)connection.GetCallToken()); }