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
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. 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. 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.
Lower Hierarchy
Content can be embeds: Generell kann die xperience.cloud mit jedem Streaming Provider streamen und jedes VOD Format integrieren.
Gute Erfahrung für das Live Video Streaming in Europa haben wir mit 3Q erzieht.
Setup
"Video Livestream" Projekt anlegen. Folgende Parameter sind wichtig:
Eingangssignal/Stream Typ
| RTMP PUSH von Ihrem Encoder | Der normale RTMP Stream aus bsp. OBC oder Wirecast. |
| RTMP PUSH von Ihrem Encoder mit Low-Latency | "Low-Latency" bezieht sich auf den Wiedergabe Puffer, das Video hat also weniger Latenz beim User. Zwischen Aufnahme und Wiedergabe liegt also weniger Zeit. Dies kann insbesondere bei Live Interaktionen (Chat, Live Components, ...) wichtig sein. |
| SRT | Sofern möglich unterstützt 3Q auch SRT. |
Billing Template (Streaming)
| EUR | ||
|---|---|---|
| Live Video Streaming Setup | EUR 200,00 | Event |
| Transcoding/ Minute (6 Auto-Transcoder) | EUR 0,04 | Minute |
| Bandwidth/ GB | EUR 0,10 | GB |
| Handlingfee Live Streaming | 10% |
Billing Template (VOD)
| EUR | Einheit | |
|---|---|---|
| Bandwidth/ GB | EUR 0,10 | GB |
| Storage | EUR ?? | GB |
| Encoding | EUR ?? | Minute |
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
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. 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.