Project

telesink

0.0
The project is in a healthy, maintained state
Track events with Telesink using the official Ruby SDK.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

~> 5.0
~> 13.0

Runtime

~> 1.7
 Project Readme

Telesink SDK for Ruby

Know what your product is doing. Right now.

Official Ruby client for telesink.com - real-time event tracking.

Note: Low activity here doesn’t mean this is abandoned. It’s intentionally simple, so there’s not much to change.

Requirements

  • Ruby 3.0+

Getting started

Install

Add to your Gemfile:

gem "telesink"

Then run:

bundle install

Configuration

Set the environment variable:

export TELESINK_ENDPOINT="https://app.telesink.com/api/v1/sinks/your_sink_token_here/events"

To disable tracking (e.g. in test/dev):

export TELESINK_DISABLED=true

Usage

Telesink.track(
  event: "User signed up",
  text: "user@example.com",
  emoji: "👤",
  properties: {
    user_id: 123,
    email_address: "user@example.com",
  },
  occurred_at: Time.now,     # optional, defaults to now
  idempotency_key: "my-key", # optional, defaults to random UUID
)

Optional: Sending to a different sink

Integrations (like telesink-activejob) can send events to a separate sink:

Telesink.track(
  event: "Job succeeded",
  text: "ProcessUserData",
  emoji: "✅",
  properties: {
    duration_ms: 420
  },

  # falls back to TELESINK_ENDPOINT if not set
  endpoint: ENV["TELESINK_ACTIVEJOB_ENDPOINT"]
)

Returns

  • true — event sent successfully
  • false — disabled, missing endpoint, or network error

Errors are never raised. They are logged to STDERR and fail silently.

Testing

bundle exec rake test

License

MIT (see LICENSE.md).