本文整理汇总了PHP中CPullOptions::GetWebSocketStatus方法的典型用法代码示例。如果您正苦于以下问题:PHP CPullOptions::GetWebSocketStatus方法的具体用法?PHP CPullOptions::GetWebSocketStatus怎么用?PHP CPullOptions::GetWebSocketStatus使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CPullOptions
的用法示例。
在下文中一共展示了CPullOptions::GetWebSocketStatus方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: Get
public static function Get($userId, $reOpen = false)
{
global $DB;
$nginxStatus = CPullOptions::GetNginxStatus();
$webSocketStatus = CPullOptions::GetWebSocketStatus();
CTimeZone::Disable();
$strSql = "
SELECT CHANNEL_ID, LAST_ID, ".$DB->DateToCharFunction('DATE_CREATE')." DATE_CREATE
FROM b_pull_channel
WHERE USER_ID = ".intval($userId);
CTimeZone::Enable();
$dbRes = $DB->Query($strSql, false, "File: ".__FILE__."<br>Line: ".__LINE__);
if ($arRes = $dbRes->Fetch())
{
if (MakeTimeStamp($arRes['DATE_CREATE'])+43200 > time())
{
if ($nginxStatus && $reOpen)
{
$arData = Array(
'module_id' => 'pull',
'command' => 'reopen',
'params' => Array(),
);
$channelId = $arRes['CHANNEL_ID'];
$CHTTP = new CHTTP();
$CHTTP->http_timeout = 10;
$CHTTP->HTTPQuery('POST', CPullOptions::GetPublishUrl($channelId), CUtil::PhpToJsObject(Array('MESSAGE' => Array($arData), 'ERROR' => '')));
}
return Array(
'CHANNEL_ID' => $arRes['CHANNEL_ID'],
'CHANNEL_DT' => MakeTimeStamp($arRes['DATE_CREATE']),
'LAST_ID' => intval($arRes['LAST_ID']),
'PATH' => ($nginxStatus? CPullOptions::GetListenUrl($arRes['CHANNEL_ID']): '/bitrix/components/bitrix/pull.request/ajax.php'),
'PATH_WS' => ($nginxStatus && $webSocketStatus? CPullOptions::GetWebSocketUrl($arRes['CHANNEL_ID']): ''),
'METHOD' => ($nginxStatus? 'LONG': 'PULL'),
);
}
else
{
self::Delete($arRes['CHANNEL_ID']);
}
}
$channelId = self::Add($userId);
return $channelId? Array(
'CHANNEL_ID' => $channelId,
'CHANNEL_DT' => time(),
'LAST_ID' => 0,
'PATH' => ($nginxStatus? CPullOptions::GetListenUrl($channelId): '/bitrix/components/bitrix/pull.request/ajax.php'),
'PATH_WS' => ($nginxStatus && $webSocketStatus? CPullOptions::GetWebSocketUrl($channelId): ''),
'METHOD' => ($nginxStatus? 'LONG': 'PULL')
): false;
}
示例2: Array
}
if (intval($USER->GetID()) <= 0)
{
echo CUtil::PhpToJsObject(Array('ERROR' => 'AUTHORIZE_ERROR'));
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
die();
}
if (check_bitrix_sessid())
{
if ($_POST['PULL_GET_CHANNEL'] == 'Y')
{
$arChannel = CPullChannel::Get($USER->GetId(), $_POST['CACHE'] == 'Y'? true: false, $_POST['CACHE'] == 'Y'? false: true);
if (is_array($arChannel))
{
$nginxStatus = CPullOptions::GetQueueServerStatus();
$webSocketStatus = CPullOptions::GetWebSocketStatus();
$arChannels = Array($arChannel['CHANNEL_ID']);
if ($nginxStatus)
{
$arChannelShared = CPullChannel::GetShared($_POST['CACHE'] == 'Y'? true: false, $_POST['CACHE'] == 'Y'? false: true);
if ($arChannelShared)
{
$arChannels[] = $arChannelShared['CHANNEL_ID'];
if ($arChannel['CHANNEL_DT'] > $arChannelShared['CHANNEL_DT'])
$arChannel['CHANNEL_DT'] = $arChannelShared['CHANNEL_DT'];
}
}
if ($_POST['MOBILE'] == 'Y')
$pullPath = ($nginxStatus? (CMain::IsHTTPS()? CPullOptions::GetListenSecureUrl($arChannels, true): CPullOptions::GetListenUrl($arChannels, true)): '/bitrix/components/bitrix/pull.request/ajax.php?UPDATE_STATE');
else
示例3: GetConfig
public static function GetConfig($userId, $cache = true, $reopen = false, $mobile = false)
{
$pullConfig = Array();
if (defined('BX_PULL_SKIP_LS'))
$pullConfig['LOCAL_STORAGE'] = 'N';
if (IsModuleInstalled('bitrix24'))
$pullConfig['BITRIX24'] = 'Y';
$arChannel = CPullChannel::Get($userId, $cache, $reopen);
if (is_array($arChannel))
{
$nginxStatus = CPullOptions::GetQueueServerStatus();
$webSocketStatus = false;
$arChannels = Array($arChannel['CHANNEL_ID']);
if ($nginxStatus)
{
if (defined('BX_PULL_SKIP_WEBSOCKET'))
{
$pullConfig['WEBSOCKET'] = 'N';
}
else
{
$webSocketStatus = CPullOptions::GetWebSocketStatus();
}
$arChannelShared = CPullChannel::GetShared($cache, $reopen);
if (is_array($arChannelShared))
{
$arChannels[] = $arChannelShared['CHANNEL_ID'];
$arChannel['CHANNEL_DT'] = $arChannel['CHANNEL_DT'].'/'.$arChannelShared['CHANNEL_DT'];
}
}
if ($mobile || defined('BX_MOBILE') || defined('BX_PULL_MOBILE'))
{
$pullConfig['MOBILE'] = 'Y';
$pullPath = ($nginxStatus? (CMain::IsHTTPS()? CPullOptions::GetListenSecureUrl($arChannels, true): CPullOptions::GetListenUrl($arChannels, true)): '/bitrix/components/bitrix/pull.request/ajax.php?UPDATE_STATE');
}
else
{
$pullPath = ($nginxStatus? (CMain::IsHTTPS()? CPullOptions::GetListenSecureUrl($arChannels): CPullOptions::GetListenUrl($arChannels)): '/bitrix/components/bitrix/pull.request/ajax.php?UPDATE_STATE');
}
$pullPathWs = ($nginxStatus && $webSocketStatus? (CMain::IsHTTPS()? CPullOptions::GetWebSocketSecureUrl($arChannels): CPullOptions::GetWebSocketUrl($arChannels)): '');
return $pullConfig+Array(
'CHANNEL_ID' => implode('/', $arChannels),
'CHANNEL_DT' => $arChannel['CHANNEL_DT'],
'LAST_ID' => $arChannel['LAST_ID'],
'PATH' => $pullPath,
'PATH_WS' => $pullPathWs,
'PATH_COMMAND' => defined('BX_PULL_COMMAND_PATH')? BX_PULL_COMMAND_PATH: '',
'METHOD' => ($nginxStatus? 'LONG': 'PULL'),
'REVISION' => PULL_REVISION,
'ERROR' => '',
);
}
return false;
}
示例4:
if ($_POST['path_to_websocket'] != "" && CPullOptions::GetWebSocketUrl() != $_POST['path_to_websocket'])
{
CPullOptions::SetWebSocketUrl($_POST['path_to_websocket']);
$send = true;
}
if (isset($_POST['websocket']))
{
if (!CPullOptions::GetWebSocketStatus())
{
CPullOptions::SetWebSocketStatus('Y');
$send = true;
}
}
else
{
if (CPullOptions::GetWebSocketStatus())
{
CPullOptions::SetWebSocketStatus('N');
$send = true;
}
}
if ($send)
CPullOptions::SendConfigDie();
if (isset($_POST['nginx']))
{
if (!CPullOptions::GetNginxStatus())
{
$send = true;
CPullOptions::SendConfigDie();
CPullOptions::SetNginxStatus('Y');
示例5:
</tr>
<tr>
<td width="40%"></td>
<td width="60%"></td>
</tr>
<tr>
<td align="right" width="50%"><?=GetMessage("PULL_OPTIONS_WEBSOCKET")?>:</td>
<td><input type="checkbox" size="40" value="Y" <?=(CPullOptions::GetWebSocket()?' checked':'')?> id="config_websocket" name="websocket" <?=(CPullOptions::GetQueueServerStatus() && CPullOptions::GetQueueServerVersion() > 1 ? '': 'disabled="true"')?>></td>
</tr>
<tr>
<td ><?=GetMessage("PULL_OPTIONS_PATH_TO_WEBSOCKET")?>:</td>
<td><input id="config_path_to_websocket" type="text" size="40" value="<?=htmlspecialcharsbx(CPullOptions::GetWebSocketUrl())?>" name="path_to_websocket" <?=(!CPullOptions::GetQueueServerStatus() || !CPullOptions::GetWebSocketStatus() ? 'disabled="true"': '')?></td>
</tr>
<tr>
<td ><?=GetMessage("PULL_OPTIONS_PATH_TO_WEBSOCKET_SECURE")?>:</td>
<td><input id="config_path_to_websocket_secure" type="text" size="40" value="<?=htmlspecialcharsbx(CPullOptions::GetWebSocketSecureUrl())?>" name="path_to_websocket_secure" <?=(!CPullOptions::GetQueueServerStatus() || !CPullOptions::GetWebSocketStatus() ? 'disabled="true"': '')?></td>
</tr>
<tr>
<td width="40%"></td>
<td width="60%">
<?=GetMessage("PULL_OPTIONS_WEBSOCKET_DESC")?>
</td>
</tr>
<tr>
<td width="40%"></td>
<td width="60%"></td>
</tr>
<tr>
<td width="40%"></td>
<td width="60%"></td>
</tr>
示例6: GetMessage
?>
" name="path_to_websocket" <?php
echo !CPullOptions::GetQueueServerStatus() || !CPullOptions::GetWebSocketStatus() ? 'disabled="true"' : '';
?>
</td>
</tr>
<tr>
<td ><?php
echo GetMessage("PULL_OPTIONS_PATH_TO_LISTENER_SECURE");
?>
:</td>
<td><input id="config_path_to_websocket_secure" type="text" size="40" value="<?php
echo htmlspecialcharsbx(CPullOptions::GetWebSocketSecureUrl());
?>
" name="path_to_websocket_secure" <?php
echo !CPullOptions::GetQueueServerStatus() || !CPullOptions::GetWebSocketStatus() ? 'disabled="true"' : '';
?>
</td>
</tr>
<tr>
<td width="40%"></td>
<td width="60%">
<?php
echo GetMessage("PULL_OPTIONS_WEBSOCKET_DESC");
?>
</td>
</tr>
<?php
if (count($arSites) > 1 || count($arExcludeSites) > 0) {
?>
<tr class="heading">
示例7: GetUserConfig
public static function GetUserConfig($userId)
{
$pullConfig = array();
if (defined('BX_PULL_SKIP_LS')) {
$pullConfig['LOCAL_STORAGE'] = 'N';
}
if (IsModuleInstalled('bitrix24')) {
$pullConfig['BITRIX24'] = 'Y';
}
$pullChannel = CPullChannel::Get($userId);
if (is_array($pullChannel)) {
$pullWebSocketStatus = false;
$pullNginxStatus = CPullOptions::GetQueueServerStatus();
$pullChannels = array($pullChannel['CHANNEL_ID']);
if ($pullNginxStatus) {
if (defined('BX_PULL_SKIP_WEBSOCKET')) {
$pullWebSocketStatus = false;
$pullConfig['WEBSOCKET'] = 'N';
} else {
$pullWebSocketStatus = CPullOptions::GetWebSocketStatus();
}
$pullChannelShared = CPullChannel::GetShared();
if (is_array($pullChannelShared)) {
$pullChannels[] = $pullChannelShared['CHANNEL_ID'];
if ($pullChannel['CHANNEL_DT'] > $pullChannelShared['CHANNEL_DT']) {
$pullChannel['CHANNEL_DT'] = $pullChannelShared['CHANNEL_DT'];
}
}
}
if (defined('BX_MOBILE') || defined('BX_PULL_MOBILE')) {
$pullConfig['MOBILE'] = 'Y';
$pullPath = $pullNginxStatus ? CMain::IsHTTPS() ? CPullOptions::GetListenSecureUrl($pullChannels, true) : CPullOptions::GetListenUrl($pullChannels, true) : '/bitrix/components/bitrix/pull.request/ajax.php?UPDATE_STATE';
} else {
$pullPath = $pullNginxStatus ? CMain::IsHTTPS() ? CPullOptions::GetListenSecureUrl($pullChannels) : CPullOptions::GetListenUrl($pullChannels) : '/bitrix/components/bitrix/pull.request/ajax.php?UPDATE_STATE';
}
$pullConfig = $pullConfig + array('CHANNEL_ID' => implode('/', $pullChannels), 'LAST_ID' => $pullChannel['LAST_ID'], 'CHANNEL_DT' => $pullChannel['CHANNEL_DT'], 'PATH' => $pullPath, 'PATH_WS' => $pullNginxStatus && $pullWebSocketStatus ? CMain::IsHTTPS() ? CPullOptions::GetWebSocketSecureUrl($pullChannels) : CPullOptions::GetWebSocketUrl($pullChannels) : '', 'PATH_COMMAND' => defined('BX_PULL_COMMAND_PATH') ? BX_PULL_COMMAND_PATH : '', 'METHOD' => $pullNginxStatus ? 'LONG' : 'PULL');
}
return $pullConfig;
}