2016-04-20 1 views
4

я столкнулся вопрос, когда я добавить пользователя с помощью RestApiOpenfire: Добавить пользователя со статусом подписки как «и»

include "vendor/autoload.php"; 
$api = new Gidkom\OpenFireRestApi\OpenFireRestApi; 
$api->secret = "mySecretKey"; 
$api->host = "HostName"; 
$api->port = "9090"; 
$api->useSSL = false; 
$api->plugin = "/plugins/restapi/v1"; // plugin 

Для добавления пользователя в реестр, я использую следующий код

$jid="[email protected]"; 
//Add to roster 
$data=$api->addToRoster("abc", $jid); 

Какие точки к OpenFireRestApi.php у которых есть функция с именем addToRoster

/** 
    * Adds to this OpenFire user's roster 
    * 
    * @param string   $username  Username 
    * @param string   $jid   JID 
    * @param string|false $name   Name   (Optional) 
    * @param int|false  $subscription Subscription (Optional) 
    * @return json|false      Json with data or error, or False when something went fully wrong 
    */ 
    public function addToRoster($username, $jid, $name=false, $subscription=false) 
    { 
     $endpoint = '/users/'.$username.'/roster'; 
     return $this->doRequest('post', $endpoint, compact('jid','name','subscription')); 
    } 

Таким образом, я использовал

$data=$api->addToRoster("abc", $jid,"DummyName",3); 

Где 3 является тип подписки и как = 3, который mentioned.

Но когда я добавить пользователь показывает тип подписки только ни.

UPDATE

Я пришел, чтобы узнать о subscription plugin

Так я установил плагин настроить его enter image description here

плагин сам говорит, он будет автоматически подписываться как путь.

После этого я уже попробовал еще раз с

$data=$api->addToRoster("abc", $jid); 

Какие аспекты должны работать, но опять подписок не ни только.

Любая помощь будет оценена по достоинству.

ответ

1

Существует проблема с php-openfire-restapi классов

Нужно изменить название параметров Так сделайте следующие изменения:

//Add to roster 
$username = "username in which you want to add roster"; 
$jid = "another users JID"; 
$nickname= "nick name of another user"; 
$subscription ="3"; 
$result = $api->addToRoster($username, $jid,$nickname,$subscription); 

и изменить следующие строки в /src/Gidkom/OpenFireRestApi/OpenFireRestApi.php файле

public function addToRoster($username, $jid, $name=false, $subscription=false) 
    { 
     $nickname=$name; 
     $subscriptionType=$subscription; 
     $endpoint = '/users/'.$username.'/roster'; 
     return $this->doRequest('post', $endpoint, compact('jid','nickname','subscriptionType')); 
    } 

Здесь я изменить имена параметров.

Удачи.

+0

Bravo! за работой! (Y), –

 Смежные вопросы

  • Нет связанных вопросов^_^