Documentation ¶
Index ¶
- type Client
- func (cln *Client) Addr() ble.Addr
- func (cln *Client) CancelConnection() error
- func (cln *Client) ClearSubscriptions() error
- func (cln *Client) Conn() ble.Conn
- func (cln *Client) DidDiscoverCharacteristics(prph cbgo.Peripheral, svc cbgo.Service, err error)
- func (cln *Client) DidDiscoverDescriptors(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
- func (cln *Client) DidDiscoverServices(prph cbgo.Peripheral, err error)
- func (cln *Client) DidReadRSSI(prph cbgo.Peripheral, rssi int, err error)
- func (cln *Client) DidUpdateNotificationState(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
- func (cln *Client) DidUpdateValueForCharacteristic(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
- func (cln *Client) DidUpdateValueForDescriptor(prph cbgo.Peripheral, dsc cbgo.Descriptor, err error)
- func (cln *Client) DidWriteValueForCharacteristic(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
- func (cln *Client) DidWriteValueForDescriptor(prph cbgo.Peripheral, dsc cbgo.Descriptor, err error)
- func (cln *Client) Disconnected() <-chan struct{}
- func (cln *Client) DiscoverCharacteristics(cs []ble.UUID, s *ble.Service) ([]*ble.Characteristic, error)
- func (cln *Client) DiscoverDescriptors(ds []ble.UUID, c *ble.Characteristic) ([]*ble.Descriptor, error)
- func (cln *Client) DiscoverIncludedServices(ss []ble.UUID, s *ble.Service) ([]*ble.Service, error)
- func (cln *Client) DiscoverProfile(force bool) (*ble.Profile, error)
- func (cln *Client) DiscoverServices(ss []ble.UUID) ([]*ble.Service, error)
- func (cln *Client) ExchangeMTU(mtu int) (int, error)
- func (cln *Client) Name() string
- func (cln *Client) Profile() *ble.Profile
- func (cln *Client) ReadCharacteristic(c *ble.Characteristic) ([]byte, error)
- func (cln *Client) ReadDescriptor(d *ble.Descriptor) ([]byte, error)
- func (cln *Client) ReadLongCharacteristic(c *ble.Characteristic) ([]byte, error)
- func (cln *Client) ReadRSSI() int
- func (cln *Client) Subscribe(c *ble.Characteristic, ind bool, fn ble.NotificationHandler) error
- func (cln *Client) Unsubscribe(c *ble.Characteristic, ind bool) error
- func (cln *Client) WriteCharacteristic(c *ble.Characteristic, b []byte, noRsp bool) error
- func (cln *Client) WriteDescriptor(d *ble.Descriptor, b []byte) error
- type Device
- func (d *Device) AddService(svc *ble.Service) error
- func (d *Device) Advertise(ctx context.Context, adv ble.Advertisement) error
- func (d *Device) AdvertiseIBeacon(ctx context.Context, u ble.UUID, major, minor uint16, pwr int8) error
- func (d *Device) AdvertiseIBeaconData(ctx context.Context, b []byte) error
- func (d *Device) AdvertiseMfgData(ctx context.Context, id uint16, b []byte) error
- func (d *Device) AdvertiseNameAndServices(ctx context.Context, name string, uuids ...ble.UUID) error
- func (d *Device) AdvertiseServiceData16(ctx context.Context, id uint16, b []byte) error
- func (d *Device) CentralDidSubscribe(pmgr cbgo.PeripheralManager, cent cbgo.Central, cbchr cbgo.Characteristic)
- func (d *Device) CentralDidUnsubscribe(pmgr cbgo.PeripheralManager, cent cbgo.Central, chr cbgo.Characteristic)
- func (d *Device) CentralManagerDidUpdateState(cmgr cbgo.CentralManager)
- func (d *Device) Dial(ctx context.Context, a ble.Addr) (ble.Client, error)
- func (d *Device) DidAddService(pmgr cbgo.PeripheralManager, svc cbgo.Service, err error)
- func (d *Device) DidConnectPeripheral(cmgr cbgo.CentralManager, prph cbgo.Peripheral)
- func (d *Device) DidDisconnectPeripheral(cmgr cbgo.CentralManager, prph cbgo.Peripheral, err error)
- func (d *Device) DidDiscoverPeripheral(cmgr cbgo.CentralManager, prph cbgo.Peripheral, advFields cbgo.AdvFields, ...)
- func (d *Device) DidReceiveReadRequest(pmgr cbgo.PeripheralManager, cbreq cbgo.ATTRequest)
- func (d *Device) DidReceiveWriteRequests(pmgr cbgo.PeripheralManager, cbreqs []cbgo.ATTRequest)
- func (d *Device) DidStartAdvertising(pmgr cbgo.PeripheralManager, err error)
- func (d *Device) Option(opts ...ble.Option) error
- func (d *Device) PeripheralManagerDidUpdateState(pmgr cbgo.PeripheralManager)
- func (d *Device) RemoveAllServices() error
- func (d *Device) Scan(ctx context.Context, allowDup bool, h ble.AdvHandler) error
- func (d *Device) SetAdvParams(param cmd.LESetAdvertisingParameters) error
- func (d *Device) SetCentralRole() error
- func (d *Device) SetConnParams(param cmd.LECreateConnection) error
- func (d *Device) SetConnectedHandler(f func(evt.LEConnectionComplete)) error
- func (d *Device) SetDeviceID(id int) error
- func (d *Device) SetDialerTimeout(dur time.Duration) error
- func (d *Device) SetDisconnectedHandler(f func(evt.DisconnectionComplete)) error
- func (d *Device) SetListenerTimeout(dur time.Duration) error
- func (d *Device) SetPeripheralRole() error
- func (d *Device) SetScanParams(param cmd.LESetScanParameters) error
- func (d *Device) SetServices(svcs []*ble.Service) error
- func (d *Device) Stop() error
- type State
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct { cbgo.PeripheralDelegateBase // contains filtered or unexported fields }
A Client is a GATT client.
func (*Client) CancelConnection ¶
CancelConnection disconnects the connection.
func (*Client) ClearSubscriptions ¶
ClearSubscriptions clears all subscriptions to notifications and indications.
func (*Client) DidDiscoverCharacteristics ¶
func (*Client) DidDiscoverDescriptors ¶
func (cln *Client) DidDiscoverDescriptors(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
func (*Client) DidDiscoverServices ¶
func (cln *Client) DidDiscoverServices(prph cbgo.Peripheral, err error)
func (*Client) DidReadRSSI ¶
func (cln *Client) DidReadRSSI(prph cbgo.Peripheral, rssi int, err error)
func (*Client) DidUpdateNotificationState ¶
func (cln *Client) DidUpdateNotificationState(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
func (*Client) DidUpdateValueForCharacteristic ¶
func (cln *Client) DidUpdateValueForCharacteristic(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
func (*Client) DidUpdateValueForDescriptor ¶
func (cln *Client) DidUpdateValueForDescriptor(prph cbgo.Peripheral, dsc cbgo.Descriptor, err error)
func (*Client) DidWriteValueForCharacteristic ¶
func (cln *Client) DidWriteValueForCharacteristic(prph cbgo.Peripheral, chr cbgo.Characteristic, err error)
func (*Client) DidWriteValueForDescriptor ¶
func (cln *Client) DidWriteValueForDescriptor(prph cbgo.Peripheral, dsc cbgo.Descriptor, err error)
func (*Client) Disconnected ¶
func (cln *Client) Disconnected() <-chan struct{}
Disconnected returns a receiving channel, which is closed when the client disconnects.
func (*Client) DiscoverCharacteristics ¶
func (cln *Client) DiscoverCharacteristics(cs []ble.UUID, s *ble.Service) ([]*ble.Characteristic, error)
DiscoverCharacteristics finds all the characteristics within a service. [Vol 3, Part G, 4.6.1] If filter is specified, only filtered characteristics are returned.
func (*Client) DiscoverDescriptors ¶
func (cln *Client) DiscoverDescriptors(ds []ble.UUID, c *ble.Characteristic) ([]*ble.Descriptor, error)
DiscoverDescriptors finds all the descriptors within a characteristic. [Vol 3, Part G, 4.7.1] If filter is specified, only filtered descriptors are returned.
func (*Client) DiscoverIncludedServices ¶
DiscoverIncludedServices finds the included services of a service. [Vol 3, Part G, 4.5.1] If filter is specified, only filtered services are returned.
func (*Client) DiscoverProfile ¶
DiscoverProfile discovers the whole hierarchy of a server.
func (*Client) DiscoverServices ¶
DiscoverServices finds all the primary services on a server. [Vol 3, Part G, 4.4.1] If filter is specified, only filtered services are returned.
func (*Client) ExchangeMTU ¶
ExchangeMTU set the ATT_MTU to the maximum possible value that can be supported by both devices [Vol 3, Part G, 4.3.1]
func (*Client) Name ¶
Name returns the name of the remote peripheral. This can be the advertised name, if exists, or the GAP device name, which takes priority.
func (*Client) ReadCharacteristic ¶
func (cln *Client) ReadCharacteristic(c *ble.Characteristic) ([]byte, error)
ReadCharacteristic reads a characteristic value from a server. [Vol 3, Part G, 4.8.1]
func (*Client) ReadDescriptor ¶
func (cln *Client) ReadDescriptor(d *ble.Descriptor) ([]byte, error)
ReadDescriptor reads a characteristic descriptor from a server. [Vol 3, Part G, 4.12.1]
func (*Client) ReadLongCharacteristic ¶
func (cln *Client) ReadLongCharacteristic(c *ble.Characteristic) ([]byte, error)
ReadLongCharacteristic reads a characteristic value which is longer than the MTU. [Vol 3, Part G, 4.8.3]
func (*Client) ReadRSSI ¶
ReadRSSI retrieves the current RSSI value of remote peripheral. [Vol 2, Part E, 7.5.4]
func (*Client) Subscribe ¶
func (cln *Client) Subscribe(c *ble.Characteristic, ind bool, fn ble.NotificationHandler) error
Subscribe subscribes to indication (if ind is set true), or notification of a characteristic value. [Vol 3, Part G, 4.10 & 4.11]
func (*Client) Unsubscribe ¶
func (cln *Client) Unsubscribe(c *ble.Characteristic, ind bool) error
Unsubscribe unsubscribes to indication (if ind is set true), or notification of a specified characteristic value. [Vol 3, Part G, 4.10 & 4.11]
func (*Client) WriteCharacteristic ¶
WriteCharacteristic writes a characteristic value to a server. [Vol 3, Part G, 4.9.3]
func (*Client) WriteDescriptor ¶
func (cln *Client) WriteDescriptor(d *ble.Descriptor, b []byte) error
WriteDescriptor writes a characteristic descriptor to a server. [Vol 3, Part G, 4.12.3]
type Device ¶
type Device struct { // Embed these two bases so we don't have to override all the esoteric // functions defined by CoreBluetooth delegate interfaces. cbgo.CentralManagerDelegateBase cbgo.PeripheralManagerDelegateBase // contains filtered or unexported fields }
Device is either a Peripheral or Central device.
func (*Device) AdvertiseIBeacon ¶
func (*Device) AdvertiseIBeaconData ¶
func (*Device) AdvertiseMfgData ¶
func (*Device) AdvertiseNameAndServices ¶
func (*Device) AdvertiseServiceData16 ¶
func (*Device) CentralDidSubscribe ¶
func (d *Device) CentralDidSubscribe(pmgr cbgo.PeripheralManager, cent cbgo.Central, cbchr cbgo.Characteristic)
func (*Device) CentralDidUnsubscribe ¶
func (d *Device) CentralDidUnsubscribe(pmgr cbgo.PeripheralManager, cent cbgo.Central, chr cbgo.Characteristic)
func (*Device) CentralManagerDidUpdateState ¶
func (d *Device) CentralManagerDidUpdateState(cmgr cbgo.CentralManager)
func (*Device) DidAddService ¶
func (*Device) DidConnectPeripheral ¶
func (d *Device) DidConnectPeripheral(cmgr cbgo.CentralManager, prph cbgo.Peripheral)
func (*Device) DidDisconnectPeripheral ¶
func (d *Device) DidDisconnectPeripheral(cmgr cbgo.CentralManager, prph cbgo.Peripheral, err error)
func (*Device) DidDiscoverPeripheral ¶
func (d *Device) DidDiscoverPeripheral(cmgr cbgo.CentralManager, prph cbgo.Peripheral, advFields cbgo.AdvFields, rssi int)
func (*Device) DidReceiveReadRequest ¶
func (d *Device) DidReceiveReadRequest(pmgr cbgo.PeripheralManager, cbreq cbgo.ATTRequest)
func (*Device) DidReceiveWriteRequests ¶
func (d *Device) DidReceiveWriteRequests(pmgr cbgo.PeripheralManager, cbreqs []cbgo.ATTRequest)
func (*Device) DidStartAdvertising ¶
func (d *Device) DidStartAdvertising(pmgr cbgo.PeripheralManager, err error)
func (*Device) PeripheralManagerDidUpdateState ¶
func (d *Device) PeripheralManagerDidUpdateState(pmgr cbgo.PeripheralManager)
func (*Device) RemoveAllServices ¶
func (*Device) Scan ¶
Scan begins scanning for advertisements, calling h for every advertisement received. This function returns only when ctx expires, at which time no further advertisements should be delivered to h.
Concurrent Scan operations will result in undefined behavior.
func (*Device) SetAdvParams ¶
func (d *Device) SetAdvParams(param cmd.LESetAdvertisingParameters) error
SetAdvParams overrides default advertising parameters.
func (*Device) SetCentralRole ¶
SetCentralRole configures the device to perform Central tasks.
func (*Device) SetConnParams ¶
func (d *Device) SetConnParams(param cmd.LECreateConnection) error
SetConnParams overrides default connection parameters.
func (*Device) SetConnectedHandler ¶
func (d *Device) SetConnectedHandler(f func(evt.LEConnectionComplete)) error
SetConnectedHandler sets handler to be called when new connection is established.
func (*Device) SetDeviceID ¶
SetDeviceID sets HCI device ID.
func (*Device) SetDialerTimeout ¶
SetDialerTimeout sets dialing timeout for Dialer.
func (*Device) SetDisconnectedHandler ¶
func (d *Device) SetDisconnectedHandler(f func(evt.DisconnectionComplete)) error
SetDisconnectedHandler sets handler to be called on disconnect.
func (*Device) SetListenerTimeout ¶
SetListenerTimeout sets dialing timeout for Listener.
func (*Device) SetPeripheralRole ¶
SetPeripheralRole configures the device to perform Peripheral tasks.
func (*Device) SetScanParams ¶
func (d *Device) SetScanParams(param cmd.LESetScanParameters) error
SetScanParams overrides default scanning parameters.