friendica-addons/webrtc/webrtc.php

63 lines
2.2 KiB
PHP
Raw Normal View History

2013-05-12 13:46:29 -04:00
<?php
/*
* Name: WebRTC Application
* Description: add a webrtc instance for video/audio
* Version: 1.0
2013-06-14 13:40:10 -04:00
* Author: Stephen Mahood <https://friends.mayfirst.org/profile/marxistvegan>
* Author: Tobias Diekershoff <https://f.diekershoff.de/profile/tobias>
2013-05-12 13:46:29 -04:00
*/
use Friendica\Core\Addon;
use Friendica\Core\Config;
2018-01-22 14:03:11 -05:00
use Friendica\Core\L10n;
use Friendica\Core\Renderer;
2013-05-12 13:46:29 -04:00
function webrtc_install() {
Addon::registerHook('app_menu', 'addon/webrtc/webrtc.php', 'webrtc_app_menu');
2013-05-12 13:46:29 -04:00
}
2013-05-12 15:23:04 -04:00
function webrtc_uninstall() {
Addon::unregisterHook('app_menu', 'addon/webrtc/webrtc.php', 'webrtc_app_menu');
2013-05-12 13:46:29 -04:00
}
function webrtc_app_menu($a,&$b) {
2018-01-22 14:03:11 -05:00
$b['app_menu'][] = '<div class="app-title"><a href="webrtc">' . L10n::t('WebRTC Videochat') . '</a></div>';
2013-05-12 13:46:29 -04:00
}
function webrtc_addon_admin (&$a, &$o) {
$t = Renderer::getMarkupTemplate( "admin.tpl", "addon/webrtc/" );
$o = Renderer::replaceMacros( $t, [
2018-01-22 14:03:11 -05:00
'$submit' => L10n::t('Save Settings'),
'$webrtcurl' => ['webrtcurl', L10n::t('WebRTC Base URL'), Config::get('webrtc','webrtcurl' ), L10n::t('Page your users will create a WebRTC chat room on. For example you could use https://live.mayfirst.org .')],
2018-01-15 08:15:33 -05:00
]);
2013-05-12 13:46:29 -04:00
}
function webrtc_addon_admin_post (&$a) {
2013-05-12 13:46:29 -04:00
$url = ((x($_POST, 'webrtcurl')) ? notags(trim($_POST['webrtcurl'])) : '');
Config::set('webrtc', 'webrtcurl', $url);
2018-01-22 14:03:11 -05:00
info(L10n::t('Settings updated.'). EOL);
2013-05-12 13:46:29 -04:00
}
function webrtc_module() {
return;
}
function webrtc_content(&$a) {
$o = '';
/* landingpage to create chatrooms */
$webrtcurl = Config::get('webrtc','webrtcurl');
2013-05-12 13:46:29 -04:00
/* embedd the landing page in an iframe */
2018-01-22 14:03:11 -05:00
$o .= '<h2>'.L10n::t('Video Chat').'</h2>';
$o .= '<p>'.L10n::t('WebRTC is a video and audio conferencing tool that works with Firefox (version 21 and above) and Chrome/Chromium (version 25 and above). Just create a new chat room and send the link to someone you want to chat with.').'</p>';
if ($webrtcurl == '') {
2018-01-22 14:03:11 -05:00
$o .= '<p>'.L10n::t('Please contact your friendica admin and send a reminder to configure the WebRTC addon.').'</p>';
} else {
$o .= '<iframe src="'.$webrtcurl.'" width="600px" height="600px"></iframe>';
}
2013-05-12 13:46:29 -04:00
return $o;
}
?>