Esempio n. 1
0
static void _mp_app_avrcp_eq_changed_cb(mp_avrcp_eq_state_e state, void *user_data)
{
	startfunc;
	struct appdata *ad = user_data;
	MP_CHECK(ad);

	if(state == MP_AVRCP_EQ_ON)
	{
		if (vconf_set_int(VCONFKEY_MUSIC_SOUND_ALIVE_VAL, VCONFKEY_MUSIC_SOUND_ALIVE_AUTO))
		{
			WARN_TRACE("Fail to set VCONFKEY_MUSIC_SOUND_ALIVE_VAL");
		}
	}
	else
	{
		if (vconf_set_int(VCONFKEY_MUSIC_SOUND_ALIVE_VAL, VCONFKEY_MUSIC_SOUND_ALIVE_NORMAL))
		{
			WARN_TRACE("Fail to set VCONFKEY_MUSIC_SOUND_ALIVE_VAL");
		}
	}

	if (vconf_set_bool(VCONFKEY_MUSIC_SE_CHANGE, true))
	{
		WARN_TRACE("Fail to set VCONFKEY_MUSIC_SE_CHANGE");
	}
}
void set_operation(int i)
{
   keylist_t *kl=NULL;

   vconf_set_int(vconfkeys[i][0], 1);
   vconf_set_dbl(vconfkeys[i][1], 0.1);
   vconf_set_bool(vconfkeys[i][2], 1);
   vconf_set_str(vconfkeys[i][3], "this is time test");

   kl = vconf_keylist_new();
   vconf_keylist_add_dbl(kl, vconfkeys[i][0], 0.2);
   vconf_keylist_add_bool(kl, vconfkeys[i][1], 0);
   vconf_keylist_add_str(kl, vconfkeys[i][2], "this is time test");
   vconf_keylist_add_int(kl, vconfkeys[i][3], 2);
   vconf_set(kl);
   vconf_keylist_free(kl);
}
msg_error_t MsgSettingSetBool(const char *pKey, bool bSetValue)
{
	if (pKey == NULL)
	{
		MSG_DEBUG("IN Parameter is NULL");
		return MSG_ERR_NULL_POINTER;
	}

#ifdef USE_GCONF
	if (gconf_client_set_bool((GConfClient*)pClient, pKey, bSetValue, NULL) !=  GCONF_SUCCESS)
		return MSG_ERR_SET_SETTING;
#else
	if (vconf_set_bool(pKey, bSetValue) != 0)
		return MSG_ERR_SET_SETTING;
#endif

	return MSG_SUCCESS;
}
static void __bluetooth_telephony_bluez_headset_event_filter(
					GDBusConnection *connection,
					const gchar     *sender_name,
					const gchar     *object_path,
					const gchar     *interface_name,
					const gchar     *signal_name,
					GVariant        *parameters,
					gpointer         user_data)
{
	char *dev_addr = NULL;
	const char *property = NULL;
	GVariant *gVal;
	GVariantIter iter;
	GVariantIter value_iter;
	g_variant_iter_init(&iter, parameters);
	g_variant_iter_next(&iter, "s", &property);
	/*g_variant_unref (parameters);*/
	BT_DBG("Property (%s)\n", property);
	if (g_strcmp0(property, "State") == 0) {
		char *state = NULL;
		gVal = g_variant_iter_next_value(&iter);
		g_variant_iter_init(&value_iter, gVal);
		g_variant_iter_next(&value_iter, "s", &state);
		if (NULL == state) {
			BT_ERR("State is null\n");
			return;
		}
		BT_DBG("State %s\n", state);

		if (g_strcmp0(state, "connected") == 0) {
			telephony_info.headset_state =
				BLUETOOTH_STATE_CONNECTED;
		} else if (g_strcmp0(state, "playing") == 0) {
			telephony_info.headset_state = BLUETOOTH_STATE_PLAYING;
			__bt_telephony_event_cb(
				BLUETOOTH_EVENT_TELEPHONY_AUDIO_DISCONNECTED,
				BLUETOOTH_TELEPHONY_ERROR_NONE, NULL);
		}
		return;
	}
	if (g_strcmp0(property, "Connected") == 0) {
		gboolean connected = FALSE;
		gVal = g_variant_iter_next_value(&iter);
		g_variant_iter_init(&value_iter, gVal);
		g_variant_iter_next(&value_iter, "b", &connected);

		BT_DBG("Connected %d\n", connected);

		if (connected) {
			/*Get device address*/
			if (object_path != NULL)
				dev_addr = strstr(object_path, "dev_");

			if (dev_addr != NULL) {
				dev_addr += 4;
				g_strlcpy(telephony_info.address,
					dev_addr,
					sizeof(telephony_info.address));
				g_strdelimit(telephony_info.address, "_", ':');
				BT_DBG("address is %s",
					telephony_info.address);

				telephony_info.headset_state =
						BLUETOOTH_STATE_CONNECTED;

				__bluetooth_telephony_get_connected_device_path();

				BT_DBG("Headset Connected");

				 __bt_telephony_event_cb(
					BLUETOOTH_EVENT_TELEPHONY_HFP_CONNECTED,
					BLUETOOTH_TELEPHONY_ERROR_NONE, NULL);
			}
		} else { /*Device disconnected*/
			memset(telephony_info.address, 0x00,
					sizeof(telephony_info.address));
			telephony_info.headset_state =
						BLUETOOTH_STATE_DISCONNETED;

			BT_DBG("Headset Disconnected");

			 __bt_telephony_event_cb(
				BLUETOOTH_EVENT_TELEPHONY_HFP_DISCONNECTED,
				BLUETOOTH_TELEPHONY_ERROR_NONE, NULL);
		}
		return;
	}
	if (g_strcmp0(property, "SpeakerGain") == 0) {
		unsigned int spkr_gain;
		guint16 gain;
		gVal = g_variant_iter_next_value(&iter);
		g_variant_iter_init(&value_iter, gVal);
		g_variant_iter_next(&value_iter, "q", &gain);

		spkr_gain = (unsigned int)gain;
		BT_DBG("spk_gain[%d]\n", spkr_gain);

		__bt_telephony_event_cb(
				BLUETOOTH_EVENT_TELEPHONY_SET_SPEAKER_GAIN,
				BLUETOOTH_TELEPHONY_ERROR_NONE,
				(void *)&spkr_gain);

		return;
	}
	if (g_strcmp0(property, "MicrophoneGain") == 0) {
		unsigned int mic_gain;
		guint16 gain;
		gVal = g_variant_iter_next_value(&iter);
		g_variant_iter_init(&value_iter, gVal);
		g_variant_iter_next(&value_iter, "q", &gain);
		mic_gain = (unsigned int)gain;
		BT_DBG("mic_gain[%d]\n", mic_gain);

		__bt_telephony_event_cb(
				BLUETOOTH_EVENT_TELEPHONY_SET_MIC_GAIN,
				BLUETOOTH_TELEPHONY_ERROR_NONE,
				(void *)&mic_gain);

		return;
	}
	if (g_strcmp0(property, "Playing") == 0) {
		gboolean audio_sink_playing = FALSE;
		gVal = g_variant_iter_next_value(&iter);
		g_variant_iter_init(&value_iter, gVal);
		g_variant_iter_next(&value_iter, "b", &audio_sink_playing);

		if (audio_sink_playing) {
			if (!vconf_set_bool(VCONFKEY_BT_HEADSET_SCO, TRUE)) {
				BT_DBG("SVCONFKEY_BT_HEADSET_SCO -"
					"Set to TRUE\n");
			} else {
				BT_DBG("vconf_set_bool - Failed\n");
			}
			telephony_info.headset_state = BLUETOOTH_STATE_PLAYING;
			 __bt_telephony_event_cb(
				BLUETOOTH_EVENT_TELEPHONY_AUDIO_CONNECTED,
				BLUETOOTH_TELEPHONY_ERROR_NONE, NULL);
		} else {
			if (!vconf_set_bool(VCONFKEY_BT_HEADSET_SCO, FALSE)) {
				BT_DBG("SVCONFKEY_BT_HEADSET_SCO -"
						"Set to FALSE\n");
			} else {
				BT_DBG("vconf_set_bool - Failed\n");
			}
			telephony_info.headset_state =
						BLUETOOTH_STATE_CONNECTED;
			__bt_telephony_event_cb(
				BLUETOOTH_EVENT_TELEPHONY_AUDIO_DISCONNECTED,
				BLUETOOTH_TELEPHONY_ERROR_NONE, NULL);
		}
	}
	return;
}