Security

Token

There is no security token.

Firewall

main Name
Security enabled
Stateless

Configuration

Key Value
provider security.user.provider.concrete.app_user_provider
context main
entry_point App\Security\KbinAuthenticator
user_checker App\Security\UserChecker
access_denied_handler (none)
access_denied_url (none)
authenticators
[
  "two_factor"
  "remember_me"
  "App\Security\KbinAuthenticator"
  "App\Security\FacebookAuthenticator"
  "App\Security\GoogleAuthenticator"
  "App\Security\GithubAuthenticator"
  "App\Security\KeycloakAuthenticator"
]

Listeners

Listener Duration Response
Symfony\Component\Security\Http\Firewall\ChannelListener {#723
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
  -logger: Monolog\Logger {#783 …}
  -httpPort: 80
  -httpsPort: 443
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\ContextListener {#706
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorage {#1017 …}
  -sessionKey: "_security_main"
  -logger: Monolog\Logger {#783 …}
  -userProviders: Symfony\Component\DependencyInjection\Argument\RewindableGenerator {#705 …}
  -dispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
  -registered: false
  -trustResolver: Scheb\TwoFactorBundle\Security\Authentication\AuthenticationTrustResolver {#780 …}
  -sessionTrackerEnabler: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage::enableUsageTracking(): void {#703 …}
}
0.16 ms (none)
Symfony\Component\Security\Http\Firewall\AuthenticatorManagerListener {#584
  -authenticatorManager: Symfony\Component\Security\Http\Authentication\AuthenticatorManager {#595 …}
}
0.00 ms (none)
Scheb\TwoFactorBundle\Security\Http\Firewall\TwoFactorAccessListener {#582
  -twoFactorFirewallConfig: Scheb\TwoFactorBundle\Security\TwoFactor\TwoFactorFirewallConfig {#842 …}
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -twoFactorAccessDecider: Scheb\TwoFactorBundle\Security\Authorization\TwoFactorAccessDecider {#581 …}
}
0.04 ms (none)
Symfony\Component\Security\Http\Firewall\AccessListener {#579
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -accessDecisionManager: Symfony\Component\Security\Core\Authorization\TraceableAccessDecisionManager {#937 …}
  -map: Symfony\Component\Security\Http\AccessMap {#722 …}
}
0.00 ms (none)
Symfony\Component\Security\Http\Firewall\LogoutListener {#786
  -tokenStorage: Symfony\Component\Security\Core\Authentication\Token\Storage\UsageTrackingTokenStorage {#1018 …}
  -options: [
    "csrf_parameter" => "_csrf_token"
    "csrf_token_id" => "logout"
    "logout_path" => "app_logout"
  ]
  -httpUtils: Symfony\Component\Security\Http\HttpUtils {#841 …}
  -csrfTokenManager: Symfony\Component\Security\Csrf\CsrfTokenManager {#1015 …}
  -eventDispatcher: Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcher {#747 …}
}
0.00 ms (none)

Authenticators

No authenticators have been recorded. Check previous profiles on your authentication endpoint.

Access Decision

affirmative Strategy
# Voter class
1
"Symfony\Component\Security\Core\Authorization\Voter\AuthenticatedVoter"
2
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
3
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
4
"Symfony\Component\Security\Core\Authorization\Voter\ExpressionVoter"
5
"App\Security\Voter\EntryCommentVoter"
6
"App\Security\Voter\EntryVoter"
7
"App\Security\Voter\MagazineVoter"
8
"App\Security\Voter\MessageThreadVoter"
9
"App\Security\Voter\MessageVoter"
10
"App\Security\Voter\NotificationVoter"
11
"App\Security\Voter\OAuth2UserConsentVoter"
12
"App\Security\Voter\PostCommentVoter"
13
"App\Security\Voter\PostVoter"
14
"App\Security\Voter\UserVoter"

Access decision log

# Result Attributes Object
1 DENIED ROLE_USER
null
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"Symfony\Component\Security\Core\Authorization\Voter\RoleHierarchyVoter"
ACCESS DENIED
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
2 DENIED moderate
App\Entity\Entry {#1794
  +user: Proxies\__CG__\App\Entity\User {#1900 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 211
    +entryCommentCount: 3639
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729202741 {#299
      date: 2024-10-17 22:05:41.370851 UTC (+00:00)
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703488226 {#293
      date: 2023-12-25 08:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#292
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1916 …}
  +slug: "Alternative-to-Home-Assistant-for-ESPHome-Devices"
  +title: "Alternative to Home Assistant for ESPHome Devices"
  +url: null
  +body: """
    Hello,\n
    \n
    My IoT/Home Automation needs are centered around custom built ESPHome devices and I currently have them all connected to a HA instance and things work fine.\n
    \n
    Now, I like HA’s interface and all the sugar candy, however I don’t like the massive amounts of resources it requires and the fact that the storage usage keeps growing and it is essentially a huge, albeit successful, docker clusterfuck.\n
    \n
    Is there any alternative dashboard that just does this:\n
    \n
    1. Specifically made for ESPHome devices - no other devices required;\n
    2. Single daemon or something PHP/Python/Node that you can setup manually with a few systemd units;\n
    3. Connects to the ESPHome devices, logs the data and shows a dashboard with it;\n
    4. Runs offline, doesn’t go into 24234 GitHub repositories all the time and whatnot.\n
    \n
    Obviously that I’m expecting more manual configuration, I’m okay with having to edit a config file somewhere to add a device, change the dashboard layout etc. I also don’t need the ESPHome part that builds and deploys configurations to devices as I can do that locally on my computer.\n
    \n
    Thank you.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 11
  +favouriteCount: 4
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729187737 {#1861
    date: 2024-10-17 19:55:37.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1947 …}
  +votes: Doctrine\ORM\PersistentCollection {#1893 …}
  +reports: Doctrine\ORM\PersistentCollection {#2388 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1397 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1371 …}
  +badges: Doctrine\ORM\PersistentCollection {#1379 …}
  +children: []
  -id: 33609
  -titleTs: "'altern':1 'assist':4 'devic':7 'esphom':6 'home':3"
  -bodyTs: "'1':79 '2':89 '24234':127 '3':105 '4':120 'add':155 'albeit':66 'also':164 'altern':73 'amount':46 'around':8 'autom':4 'build':172 'built':10 'candi':38 'center':7 'chang':158 'clusterfuck':69 'comput':186 'config':151 'configur':142,175 'connect':19,106 'current':15 'custom':9 'daemon':91 'dashboard':74,117,160 'data':113 'deploy':174 'devic':12,84,87,110,157,177 'docker':68 'doesn':123 'edit':149 'esphom':11,83,109,169 'essenti':63 'etc':162 'expect':139 'fact':53 'file':152 'fine':27 'github':128 'go':125 'grow':59 'ha':22,31 'hello':1 'howev':39 'huge':65 'instanc':23 'interfac':33 'iot/home':3 'keep':58 'layout':161 'like':30,43 'local':183 'log':111 'm':138,144 'made':81 'manual':99,141 'massiv':45 'need':5,167 'obvious':135 'offlin':122 'okay':145 'part':170 'php/python/node':94 'repositori':129 'requir':50,88 'resourc':48 'run':121 'setup':98 'show':115 'singl':90 'someth':93 'somewher':153 'specif':80 'storag':56 'success':67 'sugar':37 'systemd':103 'thank':187 'thing':25 'time':132 'unit':104 'usag':57 'whatnot':134 'work':26"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706501584
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/11282607"
  +editedAt: DateTimeImmutable @1729127186 {#75
    date: 2024-10-17 03:06:26.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706441084 {#2415
    date: 2024-01-28 12:24:44.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
3 DENIED edit
App\Entity\Entry {#1794
  +user: Proxies\__CG__\App\Entity\User {#1900 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 211
    +entryCommentCount: 3639
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729202741 {#299
      date: 2024-10-17 22:05:41.370851 UTC (+00:00)
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703488226 {#293
      date: 2023-12-25 08:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#292
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1916 …}
  +slug: "Alternative-to-Home-Assistant-for-ESPHome-Devices"
  +title: "Alternative to Home Assistant for ESPHome Devices"
  +url: null
  +body: """
    Hello,\n
    \n
    My IoT/Home Automation needs are centered around custom built ESPHome devices and I currently have them all connected to a HA instance and things work fine.\n
    \n
    Now, I like HA’s interface and all the sugar candy, however I don’t like the massive amounts of resources it requires and the fact that the storage usage keeps growing and it is essentially a huge, albeit successful, docker clusterfuck.\n
    \n
    Is there any alternative dashboard that just does this:\n
    \n
    1. Specifically made for ESPHome devices - no other devices required;\n
    2. Single daemon or something PHP/Python/Node that you can setup manually with a few systemd units;\n
    3. Connects to the ESPHome devices, logs the data and shows a dashboard with it;\n
    4. Runs offline, doesn’t go into 24234 GitHub repositories all the time and whatnot.\n
    \n
    Obviously that I’m expecting more manual configuration, I’m okay with having to edit a config file somewhere to add a device, change the dashboard layout etc. I also don’t need the ESPHome part that builds and deploys configurations to devices as I can do that locally on my computer.\n
    \n
    Thank you.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 11
  +favouriteCount: 4
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729187737 {#1861
    date: 2024-10-17 19:55:37.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1947 …}
  +votes: Doctrine\ORM\PersistentCollection {#1893 …}
  +reports: Doctrine\ORM\PersistentCollection {#2388 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1397 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1371 …}
  +badges: Doctrine\ORM\PersistentCollection {#1379 …}
  +children: []
  -id: 33609
  -titleTs: "'altern':1 'assist':4 'devic':7 'esphom':6 'home':3"
  -bodyTs: "'1':79 '2':89 '24234':127 '3':105 '4':120 'add':155 'albeit':66 'also':164 'altern':73 'amount':46 'around':8 'autom':4 'build':172 'built':10 'candi':38 'center':7 'chang':158 'clusterfuck':69 'comput':186 'config':151 'configur':142,175 'connect':19,106 'current':15 'custom':9 'daemon':91 'dashboard':74,117,160 'data':113 'deploy':174 'devic':12,84,87,110,157,177 'docker':68 'doesn':123 'edit':149 'esphom':11,83,109,169 'essenti':63 'etc':162 'expect':139 'fact':53 'file':152 'fine':27 'github':128 'go':125 'grow':59 'ha':22,31 'hello':1 'howev':39 'huge':65 'instanc':23 'interfac':33 'iot/home':3 'keep':58 'layout':161 'like':30,43 'local':183 'log':111 'm':138,144 'made':81 'manual':99,141 'massiv':45 'need':5,167 'obvious':135 'offlin':122 'okay':145 'part':170 'php/python/node':94 'repositori':129 'requir':50,88 'resourc':48 'run':121 'setup':98 'show':115 'singl':90 'someth':93 'somewher':153 'specif':80 'storag':56 'success':67 'sugar':37 'systemd':103 'thank':187 'thing':25 'time':132 'unit':104 'usag':57 'whatnot':134 'work':26"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706501584
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/11282607"
  +editedAt: DateTimeImmutable @1729127186 {#75
    date: 2024-10-17 03:06:26.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706441084 {#2415
    date: 2024-01-28 12:24:44.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
4 DENIED moderate
App\Entity\Entry {#1794
  +user: Proxies\__CG__\App\Entity\User {#1900 …}
  +magazine: App\Entity\Magazine {#289
    +icon: Proxies\__CG__\App\Entity\Image {#270 …}
    +name: "selfhosted@lemmy.world"
    +title: "selfhosted"
    +description: """
      A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
      \n
      Rules:\n
      \n
      - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
      - No spam posting.\n
      - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
      - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
      - No trolling.\n
      \n
      Resources:\n
      \n
      - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
      - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
      - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
      \n
      > Any issues on the community? Report it using the report flag.\n
      \n
      > Questions? DM the mods!
      """
    +rules: null
    +subscriptionsCount: 1
    +entryCount: 211
    +entryCommentCount: 3639
    +postCount: 0
    +postCommentCount: 0
    +isAdult: false
    +customCss: null
    +lastActive: DateTime @1729202741 {#299
      date: 2024-10-17 22:05:41.370851 UTC (+00:00)
    }
    +markedForDeletionAt: null
    +tags: null
    +moderators: Doctrine\ORM\PersistentCollection {#261 …}
    +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
    +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
    +entries: Doctrine\ORM\PersistentCollection {#204 …}
    +posts: Doctrine\ORM\PersistentCollection {#162 …}
    +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
    +bans: Doctrine\ORM\PersistentCollection {#141 …}
    +reports: Doctrine\ORM\PersistentCollection {#127 …}
    +badges: Doctrine\ORM\PersistentCollection {#105 …}
    +logs: Doctrine\ORM\PersistentCollection {#95 …}
    +awards: Doctrine\ORM\PersistentCollection {#84 …}
    +categories: Doctrine\ORM\PersistentCollection {#71 …}
    -id: 120
    +apId: "selfhosted@lemmy.world"
    +apProfileId: "https://lemmy.world/c/selfhosted"
    +apPublicUrl: "https://lemmy.world/c/selfhosted"
    +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
    +apInboxUrl: "https://lemmy.world/inbox"
    +apDomain: "lemmy.world"
    +apPreferredUsername: "selfhosted"
    +apDiscoverable: true
    +apManuallyApprovesFollowers: null
    +privateKey: null
    +publicKey: null
    +apFetchedAt: DateTime @1703488226 {#293
      date: 2023-12-25 08:10:26.0 +01:00
    }
    +apDeletedAt: null
    +apTimeoutAt: null
    +visibility: "visible             "
    +createdAt: DateTimeImmutable @1703473826 {#292
      date: 2023-12-25 04:10:26.0 +01:00
    }
  }
  +image: null
  +domain: Proxies\__CG__\App\Entity\Domain {#1916 …}
  +slug: "Alternative-to-Home-Assistant-for-ESPHome-Devices"
  +title: "Alternative to Home Assistant for ESPHome Devices"
  +url: null
  +body: """
    Hello,\n
    \n
    My IoT/Home Automation needs are centered around custom built ESPHome devices and I currently have them all connected to a HA instance and things work fine.\n
    \n
    Now, I like HA’s interface and all the sugar candy, however I don’t like the massive amounts of resources it requires and the fact that the storage usage keeps growing and it is essentially a huge, albeit successful, docker clusterfuck.\n
    \n
    Is there any alternative dashboard that just does this:\n
    \n
    1. Specifically made for ESPHome devices - no other devices required;\n
    2. Single daemon or something PHP/Python/Node that you can setup manually with a few systemd units;\n
    3. Connects to the ESPHome devices, logs the data and shows a dashboard with it;\n
    4. Runs offline, doesn’t go into 24234 GitHub repositories all the time and whatnot.\n
    \n
    Obviously that I’m expecting more manual configuration, I’m okay with having to edit a config file somewhere to add a device, change the dashboard layout etc. I also don’t need the ESPHome part that builds and deploys configurations to devices as I can do that locally on my computer.\n
    \n
    Thank you.
    """
  +type: "article"
  +lang: "en"
  +isOc: false
  +hasEmbed: false
  +commentCount: 11
  +favouriteCount: 4
  +score: 0
  +isAdult: false
  +sticky: false
  +lastActive: DateTime @1729187737 {#1861
    date: 2024-10-17 19:55:37.0 +02:00
  }
  +ip: null
  +adaAmount: 0
  +tags: null
  +mentions: null
  +comments: Doctrine\ORM\PersistentCollection {#1947 …}
  +votes: Doctrine\ORM\PersistentCollection {#1893 …}
  +reports: Doctrine\ORM\PersistentCollection {#2388 …}
  +favourites: Doctrine\ORM\PersistentCollection {#1397 …}
  +notifications: Doctrine\ORM\PersistentCollection {#1371 …}
  +badges: Doctrine\ORM\PersistentCollection {#1379 …}
  +children: []
  -id: 33609
  -titleTs: "'altern':1 'assist':4 'devic':7 'esphom':6 'home':3"
  -bodyTs: "'1':79 '2':89 '24234':127 '3':105 '4':120 'add':155 'albeit':66 'also':164 'altern':73 'amount':46 'around':8 'autom':4 'build':172 'built':10 'candi':38 'center':7 'chang':158 'clusterfuck':69 'comput':186 'config':151 'configur':142,175 'connect':19,106 'current':15 'custom':9 'daemon':91 'dashboard':74,117,160 'data':113 'deploy':174 'devic':12,84,87,110,157,177 'docker':68 'doesn':123 'edit':149 'esphom':11,83,109,169 'essenti':63 'etc':162 'expect':139 'fact':53 'file':152 'fine':27 'github':128 'go':125 'grow':59 'ha':22,31 'hello':1 'howev':39 'huge':65 'instanc':23 'interfac':33 'iot/home':3 'keep':58 'layout':161 'like':30,43 'local':183 'log':111 'm':138,144 'made':81 'manual':99,141 'massiv':45 'need':5,167 'obvious':135 'offlin':122 'okay':145 'part':170 'php/python/node':94 'repositori':129 'requir':50,88 'resourc':48 'run':121 'setup':98 'show':115 'singl':90 'someth':93 'somewher':153 'specif':80 'storag':56 'success':67 'sugar':37 'systemd':103 'thank':187 'thing':25 'time':132 'unit':104 'usag':57 'whatnot':134 'work':26"
  +cross: false
  +upVotes: 0
  +downVotes: 0
  +ranking: 1706501584
  +visibility: "visible             "
  +apId: "https://lemmy.world/post/11282607"
  +editedAt: DateTimeImmutable @1729127186 {#75
    date: 2024-10-17 03:06:26.0 +02:00
  }
  +createdAt: DateTimeImmutable @1706441084 {#2415
    date: 2024-01-28 12:24:44.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS DENIED
"App\Security\Voter\MagazineVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details
5 DENIED edit
App\Entity\Magazine {#289
  +icon: Proxies\__CG__\App\Entity\Image {#270 …}
  +name: "selfhosted@lemmy.world"
  +title: "selfhosted"
  +description: """
    A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.\n
    \n
    Rules:\n
    \n
    - Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.\n
    - No spam posting.\n
    - Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.\n
    - Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).\n
    - No trolling.\n
    \n
    Resources:\n
    \n
    - [awesome-selfhosted software](https://github.com/awesome-selfhosted/awesome-selfhosted)\n
    - [awesome-sysadmin](https://github.com/awesome-foss/awesome-sysadmin) resources\n
    - [Self-Hosted Podcast from Jupiter Broadcasting](https://selfhosted.show)\n
    \n
    > Any issues on the community? Report it using the report flag.\n
    \n
    > Questions? DM the mods!
    """
  +rules: null
  +subscriptionsCount: 1
  +entryCount: 211
  +entryCommentCount: 3639
  +postCount: 0
  +postCommentCount: 0
  +isAdult: false
  +customCss: null
  +lastActive: DateTime @1729202741 {#299
    date: 2024-10-17 22:05:41.370851 UTC (+00:00)
  }
  +markedForDeletionAt: null
  +tags: null
  +moderators: Doctrine\ORM\PersistentCollection {#261 …}
  +ownershipRequests: Doctrine\ORM\PersistentCollection {#257 …}
  +moderatorRequests: Doctrine\ORM\PersistentCollection {#246 …}
  +entries: Doctrine\ORM\PersistentCollection {#204 …}
  +posts: Doctrine\ORM\PersistentCollection {#162 …}
  +subscriptions: Doctrine\ORM\PersistentCollection {#224 …}
  +bans: Doctrine\ORM\PersistentCollection {#141 …}
  +reports: Doctrine\ORM\PersistentCollection {#127 …}
  +badges: Doctrine\ORM\PersistentCollection {#105 …}
  +logs: Doctrine\ORM\PersistentCollection {#95 …}
  +awards: Doctrine\ORM\PersistentCollection {#84 …}
  +categories: Doctrine\ORM\PersistentCollection {#71 …}
  -id: 120
  +apId: "selfhosted@lemmy.world"
  +apProfileId: "https://lemmy.world/c/selfhosted"
  +apPublicUrl: "https://lemmy.world/c/selfhosted"
  +apFollowersUrl: "https://lemmy.world/c/selfhosted/followers"
  +apInboxUrl: "https://lemmy.world/inbox"
  +apDomain: "lemmy.world"
  +apPreferredUsername: "selfhosted"
  +apDiscoverable: true
  +apManuallyApprovesFollowers: null
  +privateKey: null
  +publicKey: null
  +apFetchedAt: DateTime @1703488226 {#293
    date: 2023-12-25 08:10:26.0 +01:00
  }
  +apDeletedAt: null
  +apTimeoutAt: null
  +visibility: "visible             "
  +createdAt: DateTimeImmutable @1703473826 {#292
    date: 2023-12-25 04:10:26.0 +01:00
  }
}
"Scheb\TwoFactorBundle\Security\Authorization\Voter\TwoFactorInProgressVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\EntryVoter"
ACCESS ABSTAIN
"App\Security\Voter\MagazineVoter"
ACCESS DENIED
"App\Security\Voter\MessageThreadVoter"
ACCESS ABSTAIN
"App\Security\Voter\MessageVoter"
ACCESS ABSTAIN
"App\Security\Voter\NotificationVoter"
ACCESS ABSTAIN
"App\Security\Voter\OAuth2UserConsentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostCommentVoter"
ACCESS ABSTAIN
"App\Security\Voter\PostVoter"
ACCESS ABSTAIN
"App\Security\Voter\UserVoter"
ACCESS ABSTAIN
Show voter details