{"id":20058811,"url":"https://github.com/ably/ably-chat-kotlin","last_synced_at":"2026-02-15T13:29:02.777Z","repository":{"id":255489094,"uuid":"842493008","full_name":"ably/ably-chat-kotlin","owner":"ably","description":"Ably Chat SDK for Android to build chat experiences at scale","archived":false,"fork":false,"pushed_at":"2025-04-25T05:56:37.000Z","size":1522,"stargazers_count":1,"open_issues_count":8,"forks_count":1,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-04-25T06:36:11.007Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ably.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-08-14T13:14:53.000Z","updated_at":"2025-04-04T17:13:12.000Z","dependencies_parsed_at":"2024-12-06T10:23:28.941Z","dependency_job_id":"2763cb60-07e7-4a1d-9559-2cdb2a0cc972","html_url":"https://github.com/ably/ably-chat-kotlin","commit_stats":null,"previous_names":["ably-labs/ably-chat-kotlin","ably/ably-chat-kotlin"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably%2Fably-chat-kotlin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably%2Fably-chat-kotlin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably%2Fably-chat-kotlin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ably%2Fably-chat-kotlin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ably","download_url":"https://codeload.github.com/ably/ably-chat-kotlin/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252523936,"owners_count":21762002,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T13:04:14.477Z","updated_at":"2026-02-15T13:29:02.771Z","avatar_url":"https://github.com/ably.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Ably Chat Header](images/Android-JVM-SDK-github.png)\n[![Version](https://img.shields.io/maven-central/v/com.ably.chat/chat-android?color=2ea44f\u0026label=version)](https://central.sonatype.com/artifact/com.ably.chat/chat-android)\n[![License](https://badgen.net/github/license/ably/ably-chat-kotlin)](https://github.com/ably/ably-chat-kotlin/blob/main/LICENSE)\n\n# Ably Chat SDK\n\nAbly Chat is a set of purpose-built APIs for a host of chat features enabling you to create 1:1, 1:Many, Many:1 and Many:Many chat rooms for\nany scale. It is designed to meet a wide range of chat use cases, such as livestreams, in-game communication, customer support, or social\ninteractions in SaaS products. Built on [Ably's](https://ably.com/) core service, it abstracts complex details to enable efficient chat\narchitectures.\n\n---\n\n## Getting started\n\nEverything you need to get started with Ably Chat for JVM and Android:\n\n* [Getting started: Chat with Kotlin (Android).](https://ably.com/docs/chat/getting-started/android)\n* [Getting started: Chat with Kotlin (JVM).](https://ably.com/docs/chat/getting-started/jvm)\n* [SDK and usage docs in Kotlin.](https://ably.com/docs/chat/setup?lang=kotlin)\n* [SDK and usage docs in Android using Jetpack Compose.](https://ably.com/docs/chat/setup?lang=jetpack)\n* [API documentation.](https://sdk.ably.com/builds/ably/ably-chat-kotlin/main/dokka/)\n* [Chat Example App.](https://github.com/ably/ably-chat-kotlin/tree/main/example)\n* Play with the [livestream chat demo.](https://ably-livestream-chat-demo.vercel.app/)\n\n---\n\n## Supported platforms\n\nAbly aims to support a wide range of platforms. If you experience any compatibility issues, open an issue in the repository or contact [Ably support](https://ably.com/support).\n\nThis SDK supports the following platforms:\n\n| Platform | Support |\n|----------|---------|\n| Android | Android 7.0+ (API level 24+) |\n| Java | Java 8+ |\n\n\u003e [!NOTE]\n\u003e Key functionality such as sending and receiving messages is powered by the [ably-java](https://github.com/ably/ably-java) library.\nThe `ably-java` library is included as an api dependency within the Chat SDK, so there is no need to manually add it to your project.\n\n---\n\n## Installation\n\nThe Ably Chat SDK is available on the Maven Central Repository. To include the dependency in your project, add the following to your `build.gradle` file:\n\nFor Groovy:\n\n```groovy\nimplementation 'com.ably.chat:chat:1.2.0'\n```\n\nFor Kotlin Script (`build.gradle.kts`):\n\n```kotlin\nimplementation(\"com.ably.chat:chat:1.2.0\")\n```\n\nFor Android (`build.gradle.kts`):\n\n```kotlin\nimplementation(\"com.ably.chat:chat:1.2.0\")\nimplementation(\"com.ably.chat:chat-extensions-compose:1.2.0\")\n```\n\n---\n\n## Usage\n\nThe following code connects to Ably's chat service, subscribes to a chat room, and sends a message to that room:\n\n```kotlin\nimport com.ably.chat.ChatClient\nimport com.ably.chat.RoomOptions\nimport com.ably.chat.RoomStatus\nimport io.ably.lib.realtime.AblyRealtime\nimport io.ably.lib.types.ClientOptions\n\n// Initialize Ably Realtime client\nval realtimeClient = AblyRealtime(\n    ClientOptions().apply {\n        key = \"\u003cyour-ably-api-key\u003e\"\n        clientId = \"your-client-id\"\n    }\n)\n\n// Create a chat client\nval chatClient = ChatClient(realtimeClient)\n\n// Get a chat room\nval room = chatClient.rooms.get(\"my-room\", RoomOptions())\n\n// Monitor room status\nroom.onStatusChange { statusChange -\u003e\n    when (statusChange.current) {\n        RoomStatus.Attached -\u003e println(\"Room is attached\")\n        RoomStatus.Detached -\u003e println(\"Room is detached\")\n        RoomStatus.Failed -\u003e println(\"Room failed: ${statusChange.error}\")\n        else -\u003e println(\"Room status: ${statusChange.current}\")\n    }\n}\n\n// Attach to the room\nroom.attach()\n\n// Subscribe to messages\nval subscription = room.messages.subscribe { message -\u003e\n    println(\"Received message: ${message.text}\")\n}\n\n// Send a message\nroom.messages.send(text = \"Hello, World!\")\n```\n\n---\n\n## Releases\n\nThe [CHANGELOG.md](./CHANGELOG.md) contains details of the latest releases for this SDK. You can also view all Ably releases on [changelog.ably.com](https://changelog.ably.com).\n\n---\n\n## Contribute\n\nRead the [CONTRIBUTING.md](./CONTRIBUTING.md) guidelines to contribute to Ably or [Share feedback or request](https://forms.gle/mBw9M53NYuCBLFpMA) a new feature.\n\n---\n\n## Support, Feedback, and Troubleshooting\n\nFor help or technical support, visit Ably's [support page](https://ably.com/support). You can also view the [community-reported GitHub issues](https://github.com/ably/ably-chat-kotlin/issues) or raise one yourself.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fably%2Fably-chat-kotlin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fably%2Fably-chat-kotlin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fably%2Fably-chat-kotlin/lists"}