示例#1
0
文件: echo-bot.php 项目: vincebe/xmpp
<?php

/**
 * Copyright (C) 2015, Some right reserved.
 * @author Kacper "Kadet" Donat <*****@*****.**>
 * @license http://creativecommons.org/licenses/by-sa/4.0/legalcode CC BY-SA
 *
 * Contact with author:
 * Xmpp: kadet@jid.pl
 * E-mail: kadet1090@gmail.com
 *
 * From Kadet with love.
 */
include '../vendor/autoload.php';
// Prepare client
$connection = new Kadet\Xmpp\XmppClient(new \Kadet\Xmpp\Jid('your@jid.com/resource'), 'password');
// Try to connect to server
$connection->connect() or die("Cannot connect to server.");
// When connection to server is established
$connection->onReady->add(function (\Kadet\Xmpp\XmppClient $connector) {
    $connector->presence("available", "I'll resend your message :)");
    // set presence to available with status "I'll resend your message :)"
});
// Handle message
$connection->onMessage->add(function (\Kadet\Xmpp\XmppClient $connection, \Kadet\Xmpp\Stanza\Message $message) {
    echo "Message from " . $message->from . ": " . $message->body . PHP_EOL;
    $message->reply($message->body);
});
// Launch processing loop
while ($connection->connected) {
    $connection->process();
示例#2
0
 * Copyright (C) 2015, Some right reserved.
 * @author Kacper "Kadet" Donat <*****@*****.**>
 * @license http://creativecommons.org/licenses/by-sa/4.0/legalcode CC BY-SA
 *
 * Contact with author:
 * Xmpp: kadet@jid.pl
 * E-mail: kadet1090@gmail.com
 *
 * From Kadet with love.
 */
include '../vendor/autoload.php';
// Jids
$jids = ['*****@*****.**', '*****@*****.**', '*****@*****.**'];
$message = 'Not spam, trust me.';
// Prepare client
$connector = new Kadet\Xmpp\XmppClient(new \Kadet\Xmpp\Jid('your@jid.com/resource'), 'password');
// Try to connect to server
$connector->connect() or die("Cannot connect to server.");
$connector->onReady->add(function (\Kadet\Xmpp\XmppClient $connector) use($jids, $message) {
    foreach ($jids as $jid) {
        $connector->message(new \Kadet\Xmpp\Jid($jid), $message);
        usleep(50000);
        // Wait some time, after sending message
    }
    $connector->disconnect();
    // close connection
});
// Launch processing loop
while ($connection->connected) {
    $connection->process();
    usleep(1000);
示例#3
0
文件: muc.php 项目: vincebe/xmpp
<?php

/**
 * Copyright (C) 2015, Some right reserved.
 * @author Kacper "Kadet" Donat <*****@*****.**>
 * @license http://creativecommons.org/licenses/by-sa/4.0/legalcode CC BY-SA
 *
 * Contact with author:
 * Xmpp: kadet@jid.pl
 * E-mail: kadet1090@gmail.com
 *
 * From Kadet with love.
 */
include '../vendor/autoload.php';
// Prepare client
$connection = new Kadet\Xmpp\XmppClient(new \Kadet\Xmpp\Jid('kadet@jid.pl/bosh'), 'fuckyou1');
// Try to connect to server
$connection->connect() or die("Cannot connect to server.");
$connection->onReady->add(function (\Kadet\Xmpp\XmppClient $connection) {
    $jid = new \Kadet\Xmpp\Jid('*****@*****.**');
    $room = $connection->join($jid, 'bot');
    $room->message('Hello.');
    // or
    $connection->message($jid, 'Hello.', 'groupchat');
});
// Handle message
$connection->onMessage->add(function (\Kadet\Xmpp\XmppClient $connection, \Kadet\Xmpp\Stanza\Message $message) {
    if ($message->from->isChannel()) {
        echo "Message from room " . $message->from->name . ' by ' . $message->from->resource . ': ' . $message->body;
    } else {
        echo "Message from " . $message->from . ": " . $message->body . PHP_EOL;