CategoryTree Sandbox
Example of Documents Strukture using Inline, Embeds and Links, both existing and non existing. ToDo here ist to CSS the TOC and Content into two Columns.
Top Hierarchy
Content can exist Inline: Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
Hierarchy
Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.
Hierarchy
Content can be a Link: 3Q_(Streaming_Provider)
Lower Hierarchy
Content can be a Link to a non existing Page to be edited later: My new page for the Project
More lower Hierarchy
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum.
Lower Hierarchy
Content can be embeds: ===Login=== https://www.twilio.com/console
Ask Sebastian Druschel or David Smith for your user account.
Setup for the xperience.cloud
Setup a Alpha Sender ID (Showing a Name instead of a Number as SMS Sender)
Please mind that Alpha Sender ID's does not work global. For Details read here: https://support.twilio.com/hc/en-us/articles/223133767-International-support-for-Alphanumeric-Sender-ID.
- Goto Messaging Services: https://www.twilio.com/console/sms/services
- "Create a Messaging Service", if non exists for your Client. Mind to use our Agentursoftware Common Client Name.
- "Add Senders to Service" and choose "Alpha Sender" as "Sender Type".
- Add your senders name to the "Sender Pool", please mind that there is a max of 11 characters.
- Add one or more Long Code Fallback Senders to your "Sender Pool"
- Choose "Messaging Services"/"Properties" to get the "Messaging Service SID".
- Configure "(Global) Event Settings"/"Twilio (SMS/ Voice) Seetings"/"Alpha Sender ID (Messaging/ Messaging Services/ SID)" in your xperience.cloud Subsite.
- Test!
Hierarchy
Content can be embeds of a subtopic only: The xperience.cloud runs a parallel worker execution service using http://gearman.org
Enviroment
Stage and Live-Servers are using separate Gearman instances.
Stage
The Stage Servers Gearman is configured as "GEARMAN_SERVER" in the .env file and is pointing to
GEARMAN_SERVER = ip-172-31-34-64.eu-central-1.compute.internal
what is the private DNS for the Stage-Server himself.
Prod
The Prod Servers Gearman is configured as "GEARMAN_SERVER" in the .env file and is pointing to
GEARMAN_SERVER = ip-172-31-27-199.eu-central-1.compute.internal
what is the service.xperience.cloud EC2 Instances private DNS.
Worker
Gearman Jobs are called "Worker". The workers are located in "/gearman/jobs/" and will be initialised by "gearman/worker.php".
New Worker Code / Restarting the Workers
To use new code, you have to restart the workers. You can restart the workers by just killing them using
sudo pkill -f worker.php
on the corresponding gearman machine.
Logging
The Gearman Worker's php code should log into the syslog ("/var/log/syslog"). The Gearman Job Server itself is logging into his own log at "/var/log/gearman-job-server/gearmand.log". To watch your Gearman Jobs running or debug them, you can use<syntaxhighlight lang="shell"> sudo tail -f /var/log/syslog /var/log/php7.3-fpm.log /var/log/gearman-job-server/gearmand.log </syntaxhighlight>
Using
You can use the Gearman worker in your code by adding a new Client <syntaxhighlight lang="php" line="1"> $client = new GearmanClient(); $client->addServer(getenv('GEARMAN_SERVER')); </syntaxhighlight> and sending your payload to it <syntaxhighlight lang="php" line="1"> $result = $client->doBackground('send_twilio_sms_or_voice', json_encode(array(
"meta" => array(
'twilio_number_voice' => $phone_from_voice
),
"data" => array(
'phone_to' => $telephone,
'phone_type' => 'voice',
'phone_body' => $phone_body
)
))); </syntaxhighlight> Please mind, that Gearman workers do not give an execution result.
Current Workers
There are two workers for
- Sending (RAW) Emails via Amazon AWS / SES (gearman/jobs/send_aws_ses.php)
- Sending SMS and doing Voicecalls via Twilio (gearman/jobs/send_twilio_sms_or_voice.php)
Hierarchy
Content can be embeds of a non existing subtopic: My second new page for the Project