{"id":21216812,"url":"https://github.com/sipcapture/homer-app","last_synced_at":"2025-05-16T07:05:11.098Z","repository":{"id":41579862,"uuid":"137608602","full_name":"sipcapture/homer-app","owner":"sipcapture","description":"HOMER 7.x Front-End and API Server","archived":false,"fork":false,"pushed_at":"2025-04-10T14:08:29.000Z","size":364359,"stargazers_count":214,"open_issues_count":19,"forks_count":88,"subscribers_count":37,"default_branch":"master","last_synced_at":"2025-04-12T04:47:29.620Z","etag":null,"topics":["asterisk","elasticsearch","freeswitch","heplify","homer","influxdb","kamailio","logs","loki","metrics","monitoring","opensips","prometheus","rtc","rtcp","rtcpxr","rtp","sip","sipcapture","voip"],"latest_commit_sha":null,"homepage":"http://sipcapture.io","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sipcapture.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["qxip"],"custom":["https://bunq.me/qxip"]}},"created_at":"2018-06-16T20:31:06.000Z","updated_at":"2025-04-10T14:08:08.000Z","dependencies_parsed_at":"2023-02-08T13:01:28.493Z","dependency_job_id":"7335e879-d715-42e2-907b-200a1fa4c686","html_url":"https://github.com/sipcapture/homer-app","commit_stats":null,"previous_names":[],"tags_count":118,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fhomer-app","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fhomer-app/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fhomer-app/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sipcapture%2Fhomer-app/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sipcapture","download_url":"https://codeload.github.com/sipcapture/homer-app/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254485056,"owners_count":22078767,"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":["asterisk","elasticsearch","freeswitch","heplify","homer","influxdb","kamailio","logs","loki","metrics","monitoring","opensips","prometheus","rtc","rtcp","rtcpxr","rtp","sip","sipcapture","voip"],"created_at":"2024-11-20T21:55:43.389Z","updated_at":"2025-05-16T07:05:06.084Z","avatar_url":"https://github.com/sipcapture.png","language":"Go","funding_links":["https://github.com/sponsors/qxip","https://bunq.me/qxip","https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=donation%40sipcapture%2eorg\u0026lc=US\u0026item_name=SIPCAPTURE\u0026no_note=0\u0026currency_code=EUR\u0026bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest"],"categories":["Interconnect"],"sub_categories":["SBC, IMS"],"readme":"\u003cimg src=\"https://user-images.githubusercontent.com/1423657/55069501-8348c400-5084-11e9-9931-fefe0f9874a7.png\" width=200/\u003e\n\n# HOMER WebApp\n\nThis repository hosts `homer-app`, the the GO webapplication for the HEP/HOMER 7.7+ stack.\n\n### Instructions\n\nIf you want to install [Homer](https://github.com/sipcapture/homer) please refer to the project [readme](https://github.com/sipcapture/homer)\n\nIf you're just interested in using `homer-app`, download, configure and run the latest release or package.\n\n#### Requirements\n* golang 1.13+\n* postgres 11+\n* git 2.7+\n* optional\n  * prometheus\n  * influxdb\n  * loki\n\n#### Installation\n##### Local\nTo get dependencies and compile the latest homer-app on your system, use the following commands:\n```\nmake modules\nmake all\n```\n##### Docker\nTo get dependencies and compile the latest homer-app using a docker builder, use the following command:\n```\nmake binary\nmake frontend\n```\n\n### Configuration\nBefore using the application, configure all database parameters using the example configuration file:\n```\n/usr/local/homer/etc/webapp_config.json\n```\n\nNOTE: The default location for settings and provisioning files is `/usr/local/homer`\n\n\u003c!--\n## Manual dist\nIf you are installing the homer-app manualy, you can download the latest compiled version of the frontend:  https://github.com/sipcapture/homer-app/releases/latest . Once you have download a tar.gz of homer-ui, copy the entire files and directories from the archive to the local dist directory (usualy it's /usr/local/homer/dist, but check your webapp_config.json for a correct path).\nIf you want to install the latest master, please go to https://github.com/sipcapture/homer-ui and follow the instruction how to build it using npmn and angular@cli.\n\n1.1.32 - an example here. Please use the latest version!\n```\nwget https://github.com/sipcapture/homer-app/releases/download/1.1.32/homer-ui-7.7.028.tgz\ntar xzf homer-ui-7.7.028.tgz\ncp -Rp dist/* /usr/local/homer/dist/\n\n```\n\nNOTE: The default location for settings and provisioning files is `/usr/local/homer`\n--\u003e\n\n#### Usage\n##### Command Help\n```\n./homer-app -h\n```\n##### Custom Config in `/etc`\n```\n./homer-app -webapp-config-path=/etc\n```\n\n##### Initialization\nThe application is able to initialize its database and tables it requires with the following commands:\n###### Create User\n```\n./homer-app -create-homer-user -database-root-user=postgres -database-host=localhost -database-root-password=postgres\n```\n###### Show User\n```\n./homer-app -show-db-users -database-root-user=postgres -database-host=localhost -database-root-password=postgres\n```\n###### Create Homer DBs\n```\n./homer-app -create-config-db -database-root-user=postgres -database-host=localhost -database-root-password=postgres -database-homer-user=homer_user\n./homer-app -create-data-db -database-root-user=postgres -database-host=localhost -database-root-password=postgres -database-homer-user=homer_user\n```\n###### Create User permissions\n```\n./homer-app -create-homer-role -database-root-user=postgres -database-host=localhost -database-root-password=postgres -database-homer-data=homer_data -database-homer-config=homer_config\n```\n\n\u003c!--\n###### Save it or edit the webapp_config.json manualy\n```\n./homer-app -save-homer-db-config-settings -database-host=localhost -database-homer-config=homer_config -database-homer-user=homer_user -database-homer-password=homer_password\n./homer-app -save-homer-db-data-settings -database-host=localhost -database-homer-data=homer_data -database-homer-user=homer_user -database-homer-password=homer_password\n```\n--\u003e\n\n###### Please setup the correct credentials for homer_config and homer_data DB in your webapp_config.json !!!\nif your webapp_config.json isn't in the default directory: \"/usr/local/homer/etc\", use the flag \"-webapp-config-path\" to correct it. Same have to be applied to all steps there you read settings from \"webapp_config.json\"\n\n###### Create Table / Migration - connection data will be read from `webapp_config.json`\n```\n./homer-app -create-table-db-config \n```\nor\n\n```\n./homer-app -create-table-db-config -webapp-config-path=/etc/webapp_config.json\n```\n\n###### Populate DB\n```\n./homer-app -populate-table-db-config \n```\n\n###### Upgrade / Migration - connection data will be read from `webapp_config.json`\n```\n./homer-app -upgrade-table-db-config \n```\n###### Re- Populate Config DB \n```\n./homer-app -populate-table-db-config -force-populate\n```\n\n###### Re- Populate Config DB for specific table/tables \n```\n./homer-app -populate-table-db-config -force-populate -populate-table=mapping_schema -populate-table=user_settings\n```\n\n###### Reset UI password for any user: \n```\n./homer-app -update-ui-user=admin -update-ui-password=mypassword\n\n```\n\n------------\n\u003c!--\n#### Usage ENV\n```\nWEBAPPENV = config file extension \"local\" \nWEBAPPPATH - path for config\nWEBAPPLOGPATH - path to the log dir\nWEBAPPLOGNAME - prefix name of the log\n```\n--\u003e\n\n### Swagger APIs\n\n#### Requirements\n\n* [go-swagger 2.0](https://github.com/go-swagger/go-swagger)\n\nSwagger APIs can be generated from inside the `homer-app`\n\nTo generate swagger.json file run below command insider homer-app\n```\nswagger generate spec -m -o ./swagger.json\n```\n\nTo Serve swagger.json file run below command\n```\nswagger serve -F=swagger swagger.json\n```\n\n\n### DEB, RPM Packages\nTo build a full package, including the latest frontend code:\n```\nmake package\n```\n\nThe application will deploy to `/usr/local/bin` with config in `/etc`\n\n\n### Docker Image\nThis application is available on dockerhub as `sipcapture/webapp`\nTo build a full bundle locally, including the latest frontend code:\n```\nmake docker\n```\n\nFor working examples and ready to run recipes see [homer7-docker](https://github.com/sipcapture/homer7-docker/tree/7.7/heplify-server)\n\n---\n\nThis project is part of HOMER\n\n\u003cimg src=\"https://camo.githubusercontent.com/c287bf83f8d5969635b5bed047a3e70854bc1840/687474703a2f2f736970636170747572652e6f72672f646174612f696d616765732f736970636170747572655f6865616465722e706e67\" width=300\u003e\n\n----\n\n#### License \u0026 Copyright\nThis project is released under the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. \n\n\u003ca href=\"https://github.com/sipcapture/homer-app/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contributors-img.web.app/image?repo=sipcapture/homer-app\" /\u003e\n\u003c/a\u003e\n\n#### Made by Humans\nThis Open-Source project is made possible by actual Humans without corporate sponsors, angels or patreons.\u003cbr\u003e\nIf you use this software in production, please consider supporting its development with contributions or [donations](https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=donation%40sipcapture%2eorg\u0026lc=US\u0026item_name=SIPCAPTURE\u0026no_note=0\u0026currency_code=EUR\u0026bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest)\n\n[![Donate](https://www.paypalobjects.com/en_US/i/btn/btn_donateCC_LG.gif)](https://www.paypal.com/cgi-bin/webscr?cmd=_donations\u0026business=donation%40sipcapture%2eorg\u0026lc=US\u0026item_name=SIPCAPTURE\u0026no_note=0\u0026currency_code=EUR\u0026bn=PP%2dDonationsBF%3abtn_donateCC_LG%2egif%3aNonHostedGuest) \n\n###### (C) 2008-2020 QXIP BV\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsipcapture%2Fhomer-app","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsipcapture%2Fhomer-app","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsipcapture%2Fhomer-app/lists"}