int bt_adapter_get_state(bt_adapter_state_e *adapter_state)
{
	BT_CHECK_INIT_STATUS();
	BT_CHECK_INPUT_PARAMETER(adapter_state);

	*adapter_state = bluetooth_check_adapter();
	return BT_ERROR_NONE;
}
BT_EXPORT_API int bluetooth_telephony_deinit(void)
{
	GDBusConnection *conn = NULL;
	BT_DBG("+");

	BT_TELEPHONY_CHECK_INITIALIZED();

	is_initialized = FALSE;

	conn = _bt_init_system_gdbus_conn();
	if (!conn) {
		is_initialized = FALSE;
		return BLUETOOTH_TELEPHONY_ERROR_INTERNAL;
	}

	g_dbus_connection_signal_unsubscribe(conn,
		telephony_dbus_info.monitor_filter_id_bluez_headset);

	g_dbus_connection_signal_unsubscribe(conn,
		telephony_dbus_info.monitor_filter_id_hfp_agent);

	if (bluetooth_check_adapter() == BLUETOOTH_ADAPTER_ENABLED)
		__bluetooth_telephony_unregister();

	/*__bluetooth_telephony_proxy_deinit();*/
	telephony_info.cb = NULL;
	telephony_info.user_data = NULL;
	telephony_info.call_count = 0;
	telephony_info.headset_state = BLUETOOTH_STATE_DISCONNETED;

	g_dbus_connection_signal_unsubscribe(conn,
		telephony_dbus_info.monitor_filter_id_bluez_manager);

	BT_DBG("-");
	return BLUETOOTH_TELEPHONY_ERROR_NONE;
}