{"id":31002,"date":"2021-10-07T11:58:22","date_gmt":"2021-10-07T09:58:22","guid":{"rendered":"https:\/\/www.sms77.io\/?post_type=docs&#038;p=31002"},"modified":"2021-12-10T11:00:30","modified_gmt":"2021-12-10T10:00:30","slug":"bolt-cms","status":"publish","type":"docs","link":"https:\/\/www.seven.io\/en\/docs\/third-party-solutions\/bolt-cms\/","title":{"rendered":"Bolt CMS"},"content":{"rendered":"<p>Send SMS and make text-to-speech calls within Bolt CMS.<\/p>\n<p>Bolt CMS is an open source content management system based on PHP, more specifically the popular Symfony framework. The built-in interface in the form of REST and GraphQL makes it particularly popular with web developers, as it is extremely easy and effective to extend.<\/p>\n[GitHub repo=&#8217;bolt&#8217; lang=&#8217;en&#8217;]\n<h3>Installation<\/h3>\n<ol>\n<li>\nInstall the package via the PHP package manager <i>composer<\/i>:<br \/>\n<code>composer require sms77\/bolt<\/code>\n<\/li>\n<li>\n2. Add Content Type for mobile phone field:<\/p>\n<pre lang='yaml'>\r\n    people:\r\n      # ...\r\n      mobile:\r\n        type: text\r\n        variant: inline\r\n      # ...\r\n<\/pre>\n<\/li>\n<li>\n Head to <i>\/bolt\/file-edit\/config?file=\/extensions\/sms77-bolt.yaml<\/i> and fill out <i>apiKey<\/i>.<br \/>\n   Alternatively adjust `mappings` where each key represents a content type and the corresponding value is a mobile number field.<br \/>\n<b>Notice: <\/b> You can also edit this file via <i>Maintenance->Extensions->Configuration<\/i> in the administration area.\n<\/li>\n<\/ol>\n<h3>Usage<\/h3>\n<p>Check out the widget in the administration dashboard. Click on one of the buttons to get to an action page.<\/p>\n<h4>Send SMS<\/h4>\n<p>Send SMS to all of your content types which have defined a value for the mobile phone field.<\/p>\n<h4>Make Text-To-speech calls<\/h4>\n<p>Call every content type having defined a mobile phone field value and read the given text out loud.<\/p>\n<h4>Message Placeholders<\/h4>\n<p>Each field of a content type can be used in the text surrounded by {{&lt;field_name&gt;}} &#8211; e.g. {{name}} resolves to the field <i>name<\/i>.<br \/>\nMake sure that the value has implemented the <code>.toString()<\/code> method as there is no type checking or conversion implemented as of now.<\/p>\n","protected":false},"featured_media":0,"parent":17826,"menu_order":7,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"class_list":["post-31002","docs","type-docs","status-publish","hentry"],"comment_count":0,"_links":{"self":[{"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs\/31002","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/comments?post=31002"}],"version-history":[{"count":9,"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs\/31002\/revisions"}],"predecessor-version":[{"id":31011,"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs\/31002\/revisions\/31011"}],"up":[{"embeddable":true,"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs\/17826"}],"next":[{"title":"Chrome Extension","link":"https:\/\/www.seven.io\/en\/docs\/third-party-solutions\/chrome\/","href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs\/17922"}],"prev":[{"title":"Bitrix24","link":"https:\/\/www.seven.io\/en\/docs\/third-party-solutions\/bitrix24\/","href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/docs\/23282"}],"wp:attachment":[{"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/media?parent=31002"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/www.seven.io\/en\/wp-json\/wp\/v2\/doc_tag?post=31002"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}