# Mixin: mixins/bussable

## mixins/bussable

Provides easy access to the system bus and provides some helper methods for doing so

Source:
  - mixins/bussable.js, line 18

### Methods

#### getSubscription(channel, topic) → {object}

  Get a subscription definition

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `channel` | string |
  `topic` | string |

  Source:
    - mixins/bussable.js, line 80

  ##### Returns:

  The subscription definition

  Type
    object

#### once(channel, topic, callback) → {object}

  Subscribe to an event once

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `channel` | string | The channel to subscribe to
  `topic` | string | The topic to subscribe to
  `callback` | callback | What to do when you get the event

  Source:
    - mixins/bussable.js, line 54

  ##### Returns:

  The subscription definition

  Type
    object

#### publish(channel, topic, options)

  Publish an event on the system bus

  ##### Parameters:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `channel` | string |  | The channel to publish to
  `topic` | string |  | The topic to publish to
  `options` | object | <optional> | What to pass to the event

  Source:
    - mixins/bussable.js, line 68

#### subscribe(channel, topic, callback) → {object}

  Subscribe to an event

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `channel` | string | The channel to subscribe to
  `topic` | string | The topic to subscribe to
  `callback` | callback | What to do when you get the event

  Source:
    - mixins/bussable.js, line 40

  ##### Returns:

  The subscription definition

  Type
    object