{"id":28414993,"url":"https://github.com/interlinked1/cami","last_synced_at":"2025-08-16T18:07:55.358Z","repository":{"id":37759103,"uuid":"482988024","full_name":"InterLinked1/cami","owner":"InterLinked1","description":"C Asterisk Manager Interface (AMI) library","archived":false,"fork":false,"pushed_at":"2025-02-23T22:24:17.000Z","size":102,"stargazers_count":5,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-25T09:42:49.489Z","etag":null,"topics":["ami","asterisk","asterisk-ami","asterisk-manager-api"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/InterLinked1.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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}},"created_at":"2022-04-18T20:30:22.000Z","updated_at":"2025-06-18T10:21:51.000Z","dependencies_parsed_at":"2023-01-30T03:30:49.312Z","dependency_job_id":"79b65744-894f-4d86-9325-2e565ff82bdc","html_url":"https://github.com/InterLinked1/cami","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/InterLinked1/cami","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterLinked1%2Fcami","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterLinked1%2Fcami/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterLinked1%2Fcami/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterLinked1%2Fcami/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/InterLinked1","download_url":"https://codeload.github.com/InterLinked1/cami/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/InterLinked1%2Fcami/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270749194,"owners_count":24638673,"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","status":"online","status_checked_at":"2025-08-16T02:00:11.002Z","response_time":91,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["ami","asterisk","asterisk-ami","asterisk-manager-api"],"created_at":"2025-06-03T12:30:26.351Z","updated_at":"2025-08-16T18:07:55.349Z","avatar_url":"https://github.com/InterLinked1.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cami\nC Asterisk Manager Interface\n\n## About\n\nThis is C-AMI, or C Asterisk Manager Interface, an AMI library for Asterisk.\n\nThe program is named CAMI as it takes its cue from AMI libraries for other languages, such as PAMI, NAMI, and erlami. However, it is not affiliated with the Asterisk project (nor other AMI libraries).\n\n## Compiling\n\nYou may simply statically compile your program with `cami.c` and include the CAMI header files where needed.\n\nAlternately, you may build and install the library by running `make install`.\n\n## Usage\n\nC-AMI allows you to send arbitrary AMI Actions, although some convenience macros are included to make this easier.\n\nA listener thread receives AMI events and responses from Asterisk. It will then execute a user-provided callback function. The callback function receives an `ami_event`.\n\nWhen an action is sent to Asterisk, an `ami_response` is returned. An `ami_response` contains one or more `ami_event`s.\n\nIt is the user's responsibility to properly free responses and events when done with them. Please refer to the header files for further documentation and usage.\n\nThe general goal of C AMI is to make it easy to interface with AMI by providing a robust interface for sending/receiving data from Asterisk, but otherwise not to get in your way too much.\n\n## Demo Program\n\nThis program is an AMI library that is designed to be included in a C program to add AMI functionality.\n\nFor demonstration purposes, a simple standalone program is also included. It is recommended that you consult this for an overview of how C-AMI can be used.\n\nAssuming you have `gcc`, simply clone the repository and run `make examples` to compile the demo programs with C-AMI.\n\n(You will likely want to update the connection details for your Asterisk system). Then run `./simpleami` to run.\n\n## Contributions\n\nContributions are welcome and encouraged!\n\nPlease following the coding conventions adhered to in this program. The [Asterisk Coding Guidelines](https://wiki.asterisk.org/wiki/display/AST/Coding+Guidelines) are a good start.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finterlinked1%2Fcami","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finterlinked1%2Fcami","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finterlinked1%2Fcami/lists"}