WebsocketClient::sendData PHP Method

sendData() public method

public sendData ( $data, $type = 'text', $masked = true )
    public function sendData($data, $type = 'text', $masked = true)
    {
        if ($this->_connected === false) {
            trigger_error("Not connected", E_USER_WARNING);
            return false;
        }
        if (!is_string($data)) {
            trigger_error("Not a string data was given.", E_USER_WARNING);
            return false;
        }
        if (strlen($data) == 0) {
            return false;
        }
        $res = @fwrite($this->_Socket, $this->_hybi10Encode($data, $type, $masked));
        if ($res === 0 || $res === false) {
            return false;
        }
        $buffer = ' ';
        while ($buffer !== '') {
            $buffer = fread($this->_Socket, 512);
            // drop?
        }
        return true;
    }

Usage Example

Example #1
0
function postToWebSocket($property, $value, $post_action = 'PostProperty')
{
    if (defined('DISABLE_WEBSOCKETS') && DISABLE_WEBSOCKETS == 1) {
        return;
    }
    require_once ROOT . 'lib/websockets/client/lib/class.websocket_client.php';
    global $wsClient;
    if (!Is_Object($wsClient)) {
        $wsClient = new WebsocketClient();
        if (!@$wsClient->connect('127.0.0.1', WEBSOCKETS_PORT, '/majordomo')) {
            $wsClient = false;
        }
    }
    if (!Is_Object($wsClient) && isset($_SERVER['REQUEST_METHOD'])) {
        return false;
    }
    $payload = json_encode(array('action' => $post_action, 'data' => array('NAME' => $property, 'VALUE' => $value)));
    $data_sent = false;
    if (Is_Object($wsClient)) {
        $data_sent = @$wsClient->sendData($payload);
    }
    if (!$data_sent && !isset($_SERVER['REQUEST_METHOD'])) {
        //reconnect
        $wsClient = new WebsocketClient();
        if (@$wsClient->connect('127.0.0.1', WEBSOCKETS_PORT, '/majordomo')) {
            $wsClient->sendData($payload);
        }
    }
}
All Usage Examples Of WebsocketClient::sendData