{"id":32289247,"url":"https://github.com/rostgaard/libesl-dart","last_synced_at":"2026-02-20T09:31:10.480Z","repository":{"id":56828549,"uuid":"20918855","full_name":"rostgaard/libesl-dart","owner":"rostgaard","description":"FreeSWITCH event socket client library written in Dart","archived":false,"fork":false,"pushed_at":"2022-02-05T21:50:43.000Z","size":283,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2023-08-20T21:53:49.598Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rostgaard.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-06-17T10:09:40.000Z","updated_at":"2021-03-13T08:19:51.000Z","dependencies_parsed_at":"2022-08-29T02:40:42.863Z","dependency_job_id":null,"html_url":"https://github.com/rostgaard/libesl-dart","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/rostgaard/libesl-dart","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rostgaard%2Flibesl-dart","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rostgaard%2Flibesl-dart/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rostgaard%2Flibesl-dart/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rostgaard%2Flibesl-dart/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rostgaard","download_url":"https://codeload.github.com/rostgaard/libesl-dart/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rostgaard%2Flibesl-dart/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29647643,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-20T09:27:29.698Z","status":"ssl_error","status_checked_at":"2026-02-20T09:26:12.373Z","response_time":59,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":"2025-10-23T02:39:12.465Z","updated_at":"2026-02-20T09:31:10.458Z","avatar_url":"https://github.com/rostgaard.png","language":"Dart","funding_links":[],"categories":[],"sub_categories":[],"readme":"# libesl-dart\nFreeSWITCH event socket client library written in Dart\n\nThe project is in an early state and contributions/bug reports are very welcome.\nSee the examples directory for usage.\n\n## Basic usage\nYou need to add the esl library to your `pubspec.yaml`.\n\n```yaml\ndependencies:\n  esl: '\u003c0.1.0'\n```\n\nAnd import it in your sources.\n\n```dart\nimport 'package:esl/esl.dart' as esl;\n```\n\n### Connecting\n\n```dart\nesl.Connection conn = new esl.Connection();\nconn.connect('example.com', 8021);\n```\n\n### Authenticating\n\nThe first thing you will need to do after having connected, is authenticate.\nLibesl-dart is fully asynchronous and uses streams for the events, responses\nand requests coming from the FreeSWITCH server.\n\nThis means that the way you handle authentication, is that you setup a listener\nfor `auth/request` requests coming from the server.\n\n#### Example code\n```dart\nesl.Connection conn = new esl.Connection();\nconn.requestStream.listen((esl.Packet packet) {\n  switch (packet.contentType) {\n    case (esl.ContentType.authRequest):\n      conn.authenticate('ClueCon');\n      break;\n    default:\n      break;\n  }\n});\n\nconn.connect('example.com', 8021);\n```\n\n\n\n## Log trace\n\nEvery esl connection object has its own logger object that is muted by default.\nIt uses the \"logging\" package[1] from pub.dartlang.org, so you may need to\ninclude this package in your project.\n\nIn order to tap into the log trace you need to set an `onRecord` handler.\nThis can be done at any time, but makes most sense doing at instantiation.\n\n#### Example code\n```dart\nesl.Connection conn = new esl.Connection()\n                             ..log.onRecord.listen(print);\n```\n\nThis makes every log entry go to the root Logger, and inherit its loglevel.\n\n------\n[1] https://pub.dartlang.org/packages/logging\n\n## Features and bugs\n\nPlease file feature requests and bugs at the [issue tracker][tracker].\n\n[tracker]: https://github.com/rostgaard/libesl-dart/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frostgaard%2Flibesl-dart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frostgaard%2Flibesl-dart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frostgaard%2Flibesl-dart/lists"}