Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
55 changes: 55 additions & 0 deletions examples/pubsub.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
<?php

require_once(__DIR__ . '/../vendor/autoload.php');

use PubNub\Callbacks\SubscribeCallback;
use PubNub\Enums\PNStatusCategory;
use PubNub\PNConfiguration;
use PubNub\PubNub;

$config = new PNConfiguration();
$config->setPublishKey(getenv('PN_KEY_PUBLISH'))
->setSubscribeKey(getenv('PN_KEY_SUBSCRIBE'))
->setUserId('tests');

$pubnub = new PubNub($config);

$pubnub->publish()->channel('test')->spaceId('testSpace')->message('message')->sync();

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am not sure if spaceId in example is right thing. In Java SDK spaceId is not used and in Kotlin SDK its usage will be removed soon. I recall that Pandu informed about issue in C# SDK cause by spaceId in Permission functionality.


$subscribeCallback = new class extends SubscribeCallback {
public function status($pubnub, $status)
{
var_dump($status);
$this->callback($pubnub, $status);
}

public function message($pubnub, $message)
{
var_dump($message);
$this->callback($pubnub, $message);
}

public function presence($pubnub, $presence)
{
var_dump($presence);
$this->callback($pubnub, $presence);
}

// Not marked as abstract for backward compatibility reasons.
public function signal($pubnub, $signal)
{
var_dump($signal);
$this->callback($pubnub, $signal);
}

private function callback(PubNub $pubnub, $payload)
{
// var_dump($payload);
// $pubnub->removeListener($this);
}
};

$pubnub->addListener($subscribeCallback);
$subscribe = $pubnub->subscribe()->channels('test')->execute();

echo("done.\n");