/** @file * @brief IP Support Service sample */ /* * Copyright (c) 2015-2016 Intel Corporation * * SPDX-License-Identifier: Apache-2.0 */ #include #include #include #include #include #include #include #include #include #include #include #include #define UNKNOWN_APPEARANCE 0x0000 static struct bt_gatt_attr attrs[] = { /* IP Support Service Declaration */ BT_GATT_PRIMARY_SERVICE(BT_UUID_IPSS), }; static struct bt_gatt_service ipss_svc = BT_GATT_SERVICE(attrs); static const struct bt_data ad[] = { BT_DATA_BYTES(BT_DATA_FLAGS, (BT_LE_AD_GENERAL | BT_LE_AD_NO_BREDR)), BT_DATA_BYTES(BT_DATA_UUID16_ALL, 0x20, 0x18), }; static void connected(struct bt_conn *conn, u8_t err) { if (err) { printk("Connection failed (err %u)\n", err); } else { printk("Connected\n"); } } static void disconnected(struct bt_conn *conn, u8_t reason) { printk("Disconnected (reason %u)\n", reason); } static struct bt_conn_cb conn_callbacks = { .connected = connected, .disconnected = disconnected, }; void ipss_init(void) { bt_gatt_service_register(&ipss_svc); bt_conn_cb_register(&conn_callbacks); } int ipss_advertise(void) { int err; err = bt_le_adv_start(BT_LE_ADV_CONN_NAME, ad, ARRAY_SIZE(ad), NULL, 0); if (err) { return err; } return 0; }