{"id":15645751,"url":"https://github.com/zachowj/xfinity-data-usage","last_synced_at":"2025-03-09T03:31:54.561Z","repository":{"id":42196024,"uuid":"289428471","full_name":"zachowj/xfinity-data-usage","owner":"zachowj","description":"Fetch Xfinity data usage and serve it via an HTTP endpoint, publish it to MQTT or post it to an URL.","archived":true,"fork":false,"pushed_at":"2024-10-28T20:30:31.000Z","size":420,"stargazers_count":54,"open_issues_count":0,"forks_count":14,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-02-11T15:24:50.072Z","etag":null,"topics":["data","home-assistant","mqtt","usage","xfinity","xfinity-data"],"latest_commit_sha":null,"homepage":"https://hub.docker.com/r/zachowj/xfinity-data-usage","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zachowj.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","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},"funding":{"github":"zachowj","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"lfx_crowdfunding":null,"custom":["https://paypal.me/zachowj","https://www.buymeacoffee.com/zachowj"]}},"created_at":"2020-08-22T05:49:59.000Z","updated_at":"2025-01-28T22:15:26.000Z","dependencies_parsed_at":"2023-02-16T12:30:55.824Z","dependency_job_id":"ca269d9b-4f6f-4934-993f-f94839b80886","html_url":"https://github.com/zachowj/xfinity-data-usage","commit_stats":{"total_commits":402,"total_committers":8,"mean_commits":50.25,"dds":0.5049751243781094,"last_synced_commit":"f45dea9d6c2841932a616f1850f6de1068b39956"},"previous_names":[],"tags_count":77,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachowj%2Fxfinity-data-usage","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachowj%2Fxfinity-data-usage/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachowj%2Fxfinity-data-usage/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zachowj%2Fxfinity-data-usage/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zachowj","download_url":"https://codeload.github.com/zachowj/xfinity-data-usage/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242640885,"owners_count":20162051,"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":["data","home-assistant","mqtt","usage","xfinity","xfinity-data"],"created_at":"2024-10-03T12:09:37.558Z","updated_at":"2025-03-09T03:31:54.551Z","avatar_url":"https://github.com/zachowj.png","language":"TypeScript","readme":"\nThis repository has been archived and is no longer maintained. For continued functionality and improvements, please check out the [Xfinity Hassio Add-On](https://github.com/thor0215/hassio-xfinity-usage/) repository instead.\n\n---\n\n[![Release Version][release-shield]][release-link] [![Docker Pulls][docker-pulls]][docker-link] [![License][license-shield]](LICENSE.md)\n\n[![BuyMeCoffee][buymecoffee-shield]][buymecoffee-link]\n\n# Xfinity Data Usage\n\nFetch Xfinity data usage and serve it via an HTTP endpoint, publish it to MQTT or post it to an URL.\n\n## Getting Started\n\n### Configuaration\n\n`config.yml` located in the `/config` directory\n\n**xfinity**\n\nXfinity Account credentials are required.\n\n| Option      |            | Description                                                                      |\n| ----------- | ---------- | -------------------------------------------------------------------------------- |\n| username    | _required_ | Username for Xfinity, can be defined as an environment variable XFINITY_USERNAME |\n| password    | _required_ | Password for Xfinity, can be defined as an environment variable XFINITY_PASSWORD |\n| interval    |            | The interval at which to update usage data. Defaults to 60 minutes.              |\n| pageTimeout |            | Number of seconds until request times out. Defaults to 30 seconds                |\n\n**http** _(optional)_\n\nEnable HTTP endpoints for most recent data. Defaults to port 7878.\n\nRaw data at `http://ipaddress:7878`\n\nHome Assistant rest sensor at `http://ipaddress:7878/homeassistant`\n\n**post** _(optional)_\n\nEnable posting of data after an update to the provided URL.\n\n| Option |            | Description                     |\n| ------ | ---------- | ------------------------------- |\n| url    | _required_ | URL where to post usage data to |\n\n**mqtt** _(optional)_\n\n| Option               |            | Description                                                                       |\n| -------------------- | ---------- | --------------------------------------------------------------------------------- |\n| host                 | _required_ | Address of MQTT server                                                            |\n| port                 |            | Port of MQTT server defaults to `1883`                                            |\n| username             |            | Username for MQTT server, can be defined as an environment variable MQTT_USERNAME |\n| password             |            | Password for MQTT server, can be defined as an environment variable MQTT_PASSWORD |\n| topic                | _required_ | Topic to publish usage data to if Home Assistant is not set                       |\n| homeassistant        |            | When set will publish to auto-discovery topics                                    |\n| homeassistant.prefix |            | Auto discovery prefix topic. Defaults to `homeassistant`                          |\n\nComplete config\n\n```yaml\nxfinity:\n  username: USERNAME\n  password: PASSWORD\n  interval: 60\n\nhttp:\n\npost:\n  url: http://localhost:1880/xfinity\n\nmqtt:\n  host: localhost\n  port: 1883\n  username: USERNAME\n  password: PASSWORD\n  topic: xfinity\n  homeassistant:\n    prefix: \"homeassistant\"\n```\n\n#### Environment Variables\n\n- `XFINITY_USERNAME` - Xfinity username\n- `XFINITY_PASSWORD` - Xfinity password\n- `XFINITY_RECORD_VIDEO` - Record video of the browser session. Defaults to `false`\n- `XFINITY_RECORD_VIDEO_DIR` - Directory to save the video. Defaults to `/config`\n- `MQTT_USERNAME` - MQTT username\n- `MQTT_PASSWORD` - MQTT password\n\n#### docker-compose\n\n```\nversion: '3.7'\n\nservices:\n  xfinity:\n    image: zachowj/xfinity-data-usage:latest\n    container_name: xfinity\n    restart: unless-stopped\n    ports:\n      - 7878:7878\n    volumes:\n      - config:/config\n    environment:\n      TZ: America/Los_Angeles\n      LOGGING_LEVEL: info\n```\n\n#### Volumes\n\n- `/config` - Directory for the config file\n\n## Logging\n\nThe logging level can be changed by adding the environment variable `LOGGING_LEVEL`. Default level is `info`.\n\nValid log levels: `error`, `warn`, `info`, `verbose`, `debug`, `silly`\n\n## Find Us\n\n- [GitHub](https://github.com/zachowj/xfinity-data-usage)\n- [Docker](https://hub.docker.com/r/zachowj/xfinity-data-usage)\n\n## Contributing\n\nPlease read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.\n\n## Versioning\n\nWe use [SemVer](http://semver.org/) for versioning. For the versions available, see the\n[tags on this repository](https://github.com/zachowj/xfinity-data-usage/tags).\n\n## Authors\n\n- [zachowj](https://github.com/zachowj) - _Initial work_\n\nSee also the list of [contributors](https://github.com/zachowj/xfinity-data-usage/contributors) who\nparticipated in this project.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.\n\n## Related\n\n- [Helm Chart for Xfinity Data Usage deployment on Kubernetes](https://github.com/naterator/helm-charts/tree/main/xfinity-data-usage)\n\n[license-shield]: https://img.shields.io/github/license/zachowj/xfinity-data-usage.svg?style=for-the-badge\n[release-link]: https://github.com/zachowj/xfinity-data-usage/releases\n[release-shield]: https://img.shields.io/github/v/release/zachowj/xfinity-data-usage?style=for-the-badge\n[docker-pulls]: https://img.shields.io/docker/pulls/zachowj/xfinity-data-usage?style=for-the-badge\n[docker-link]: https://hub.docker.com/r/zachowj/xfinity-data-usage\n[buymecoffee-link]: https://www.buymeacoffee.com/zachowj\n[buymecoffee-shield]: https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png\n","funding_links":["https://github.com/sponsors/zachowj","https://paypal.me/zachowj","https://www.buymeacoffee.com/zachowj"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzachowj%2Fxfinity-data-usage","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzachowj%2Fxfinity-data-usage","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzachowj%2Fxfinity-data-usage/lists"}