{"id":1885,"date":"2026-02-20T00:58:15","date_gmt":"2026-02-19T22:58:15","guid":{"rendered":"https:\/\/cln.io\/blog\/?p=1885"},"modified":"2026-03-08T17:59:54","modified_gmt":"2026-03-08T15:59:54","slug":"adding-remote-power-cycle-reboot-capabilities-to-an-isolated-home-assistant-system-without-people-with-an-sms-gateway","status":"publish","type":"post","link":"https:\/\/cln.io\/blog\/adding-remote-power-cycle-reboot-capabilities-to-an-isolated-home-assistant-system-without-people-with-an-sms-gateway\/","title":{"rendered":"Adding remote power cycle \/ reboot capabilities to an isolated home assistant system without people with an SMS gateway"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">I have some RPI&#8217;s that are remote, and it takes days to get humans to the location.<br>In the last 5 years I had to reboot the whole stack 3 times, so here&#8217;s the automation setup to reboot it all remotely with an SMS (asuming the home assistant is up \ud83d\ude42 <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Add <a href=\"https:\/\/github.com\/PavelVe\/home-assistant-addons\">https:\/\/github.com\/PavelVe\/home-assistant-addons<\/a> to your addon&#8217;s (or whatever)<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"201\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-8-1024x201.png\" alt=\"\" class=\"wp-image-1895\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-8-1024x201.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-8-300x59.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-8-768x151.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-8-1536x301.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-8.png 1540w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Have MQTT set up on your HA<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"810\" height=\"1024\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-9-810x1024.png\" alt=\"\" class=\"wp-image-1887\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-9-810x1024.png 810w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-9-237x300.png 237w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-9-768x971.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-9.png 1114w\" sizes=\"auto, (max-width: 810px) 100vw, 810px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"435\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-10-1024x435.png\" alt=\"\" class=\"wp-image-1888\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-10-1024x435.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-10-300x128.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-10-768x326.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-10.png 1148w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"958\" height=\"572\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-11.png\" alt=\"\" class=\"wp-image-1889\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-11.png 958w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-11-300x179.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-11-768x459.png 768w\" sizes=\"auto, (max-width: 958px) 100vw, 958px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"878\" height=\"556\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-12.png\" alt=\"\" class=\"wp-image-1890\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-12.png 878w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-12-300x190.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-12-768x486.png 768w\" sizes=\"auto, (max-width: 878px) 100vw, 878px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">optional: add an sms gateway user \/ pwd<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"527\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-13-1024x527.png\" alt=\"\" class=\"wp-image-1892\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-13-1024x527.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-13-300x154.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-13-768x395.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-13-1536x790.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-13.png 1920w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"922\" height=\"860\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-14.png\" alt=\"\" class=\"wp-image-1893\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-14.png 922w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-14-300x280.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-14-768x716.png 768w\" sizes=\"auto, (max-width: 922px) 100vw, 922px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"713\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-15-1024x713.png\" alt=\"\" class=\"wp-image-1894\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-15-1024x713.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-15-300x209.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-15-768x535.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-15-1536x1070.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-15-2048x1427.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Install &amp; configure the SMS addon, throw in your newly created credentials<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"351\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-16-1024x351.png\" alt=\"\" class=\"wp-image-1896\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-16-1024x351.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-16-300x103.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-16-768x263.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-16-1536x526.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-16-2048x702.png 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">start up the gateway<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"976\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-17-1024x976.png\" alt=\"\" class=\"wp-image-1897\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-17-1024x976.png 1024w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-17-300x286.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-17-768x732.png 768w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-17-1536x1464.png 1536w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-17.png 1708w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">it should show up<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"782\" height=\"444\" src=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-18.png\" alt=\"\" class=\"wp-image-1898\" srcset=\"https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-18.png 782w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-18-300x170.png 300w, https:\/\/cln.io\/blog\/wp-content\/uploads\/2026\/02\/image-18-768x436.png 768w\" sizes=\"auto, (max-width: 782px) 100vw, 782px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Activating the Orange simcard<\/h2>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\"> Activating an Orange Mobicarte SIM via AT Commands on a SIM800C\n                                                                                                                                                                                                                                                 \n  Context                                                         \n                                                                                                                                                                                                                                                 \n  I had a SIM800C GSM modem connected to a Home Assistant instance via a CH340 USB-to-serial adapter (\/dev\/ttyUSB0). The SMS Gammu Gateway addon was failing to send SMS with Gammu Error Code 27, which translates to +CMS ERROR: 69 (\"Requested\n   facility not subscribed\") at the AT command level.\n\n  Before debugging, I stopped the SMS gateway addon to free the serial port:\n\n  ha addons stop 06c5e726_sms_gammu_gateway\n\n  Serial port setup\n\n  All commands use the same setup \u2014 configure the serial port and open a file descriptor:\n\n  stty -F \/dev\/ttyUSB0 9600 cs8 -cstopb -parenb -echo raw\n  exec 3&lt;>\/dev\/ttyUSB0\n\n  Calling 225 to activate the SIM\n\n  Orange France requires you to call 225 to activate a Mobicarte and receive your phone number via SMS.\n\n  # Dial 225 as a voice call (the semicolon makes it a voice call)\n  echo -ne \"ATD225;\\r\" >&amp;3\n\n  Response:\n  OK\n\n  After ~30 seconds the call ends:\n  NO CARRIER\n\n  Hang up cleanly:\n  echo -ne \"ATH\\r\" >&amp;3\n\n  Reading the received SMS\n\n  First, switch to text mode and set SMS storage to SIM card:\n\n  echo -ne \"AT+CMGF=1\\r\" >&amp;3        # Text mode\n  echo -ne \"AT+CSCS=\\\"GSM\\\"\\r\" >&amp;3   # GSM charset\n  echo -ne \"AT+CPMS=\\\"SM\\\",\\\"SM\\\",\\\"SM\\\"\\r\" >&amp;3  # Use SIM storage\n\n  Then list all messages:\n\n  echo -ne \"AT+CMGL=\\\"ALL\\\"\\r\" >&amp;3\n\n  Response (4-part concatenated SMS from Orange):\n\n  Orange : Votre num\u00e9ro mobicarte est le +33XXXXXXXXX. Conditions de l'offre sur https:\/\/r.orange.fr\/r\/Srcmobi . Vous pouvez recharger votre compte dans les boutiques orange, boutique.orange.fr ou travel.orange.com\n\n  Bonus: Checking prepaid balance via USSD\n\n  echo -ne \"AT+CUSD=1,\\\"#123#\\\"\\r\" >&amp;3\n\n  Response:\n  Accueil\n  Cr\u00e9dit recharg\u00e9: \u00e9puis\u00e9\n  Validit\u00e9 de la ligne: 24\/08\n\n  \"\u00e9puis\u00e9\" = exhausted \u2014 the SIM had zero credit, which was the root cause of the SMS send failures.\n\n  Summary\n\n  \u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n  \u2502       AT Command       \u2502              Purpose               \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 ATD225;                \u2502 Voice call to 225 (SIM activation) \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 ATH                    \u2502 Hang up                            \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 AT+CMGF=1              \u2502 Switch to SMS text mode            \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 AT+CPMS=\"SM\",\"SM\",\"SM\" \u2502 Set storage to SIM card            \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 AT+CMGL=\"ALL\"          \u2502 List all SMS messages              \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 AT+CMGR=N              \u2502 Read message N                     \u2502\n  \u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n  \u2502 AT+CUSD=1,\"#123#\"      \u2502 USSD balance check                 \u2502\n  \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n\n \n<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">adding the shell command.<br>I have NUT running so claude came up with this NC command to reboot the UPS<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">(I initally had a simple docker exec, but docker isn&#8217;t a recognised command)<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">shell_command:\n  powercyle_ups: docker exec addon_a0d7b954_nut upscmd -u nut -p beepboop APC shutdown.reboot<\/pre>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"yaml\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">shell_command:\n  powercycle_ups: 'printf \"USERNAME nut\\nPASSWORD beepboop\\nINSTCMD APC shutdown.reboot\\nLOGOUT\\n\" | nc -w 3 a0d7b954-nut 3493'\n  <\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">for the automation part, I have an allow list of phone numbers who can text reboot<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">alias: \"[SMS] Reboot Cabinet\"\ndescription: Power cycle server cabinet via UPS when SMS reboot command is received\ntriggers:\n  - entity_id: sensor.sms_gateway_last_sms_received\n    trigger: state\nconditions:\n  - condition: and\n    conditions:\n      - condition: template\n        value_template: \"{{ trigger.to_state.state | lower | trim == \\\"reboot\\\" }}\"\n      - condition: template\n        value_template: >-\n          {{ state_attr(\"sensor.sms_gateway_last_sms_received\", \"Number\") in\n          [\"+3200000000\", \"+3200000001\", \"+3200000002\"] }}\nactions:\n  - action: shell_command.powercycle_ups\n    data: {}\nmode: single\n<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>I have some RPI&#8217;s that are remote, and it takes days to get humans to the location.In the last 5 years I had to reboot the whole stack 3 times, so here&#8217;s the automation setup [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2039,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1885","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/1885","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/comments?post=1885"}],"version-history":[{"count":5,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/1885\/revisions"}],"predecessor-version":[{"id":1903,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/posts\/1885\/revisions\/1903"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/media\/2039"}],"wp:attachment":[{"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/media?parent=1885"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/categories?post=1885"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cln.io\/blog\/wp-json\/wp\/v2\/tags?post=1885"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}