Jump to content

CategoryTree Sandbox

From Parasol
Revision as of 05:39, 9 February 2021 by Sebastian (talk | contribs)

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

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

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.

  1. Goto Messaging Services: https://www.twilio.com/console/sms/services
  2. "Create a Messaging Service", if non exists for your Client. Mind to use our Agentursoftware Common Client Name.
  3. "Add Senders to Service" and choose "Alpha Sender" as "Sender Type".
  4. Add your senders name to the "Sender Pool", please mind that there is a max of 11 characters.
  5. Add one or more Long Code Fallback Senders to your "Sender Pool"
  6. Choose "Messaging Services"/"Properties" to get the "Messaging Service SID".
  7. Configure "(Global) Event Settings"/"Twilio (SMS/ Voice) Seetings"/"Alpha Sender ID (Messaging/ Messaging Services/ SID)" in your xperience.cloud Subsite.
  8. 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