Как я могу добавить детали VCard существующего пользователя в базе данных ejabberd, используя php

Я пытаюсь написать php скрипт для добавления данных VCard существующего пользователя, зарегистрированного в нашем ejabberd server, в vcard tableесть поле vcard, Я понимаю, что это населено XML-data, Не могли бы вы рассказать мне, как мне следует реализовать эту функцию, adding VCard using php, Я попробовал несколько примеров, доступных в интернете, но ни один из них не работает. это можно сделать без использования ejabberd-xmlrpc модуль? Есть ли php библиотека, где функция уже реализована?

2 ответа

Решение
$ ejabberdctl set_vcard user1 localhost NICKNAME "User 1"
$ ejabberdctl get_vcard user1 localhost NICKNAME
User 1
$ ejabberdctl help set_vcard

  Command Name: set_vcard

  Arguments: user::binary
             host::binary
             name::binary
             content::binary

  Returns: res::rescode

  Tags:  vcard

  Description:  Set content in a vCard field

 Some vcard field names in get/set_vcard are:
 FN             - Full Name
 NICKNAME       - Nickname
 BDAY           - Birthday
 TITLE          - Work: Position
 ROLE           - Work: Role
Some vcard field names and subnames in get/set_vcard2 are:
 N FAMILY       - Family name
 N GIVEN        - Given name
 N MIDDLE       - Middle name
 ADR CTRY       - Address: Country
 ADR LOCALITY   - Address: City
 TEL HOME - Telephone: Home
 TEL CELL - Telephone: Cellphone
 TEL WORK - Telephone: Work
 TEL VOICE - Telephone: Voice
 EMAIL USERID   - E-Mail Address
 ORG ORGNAME    - Work: Company
 ORG ORGUNIT    - Work: Department

For a full list of vCard fields check XEP-0054: vcard-temp at
http://www.xmpp.org/extensions/xep-0054.html
      ejabberdctl help set_vcard2
  Command Name: set_vcard2

  Arguments: user::binary
             host::binary
             name::binary
             subname::binary
             content::binary

  Returns: res::rescode

  Tags: vcard

  Module: mod_admin_extra

  Description: Set content in a vCard subfield

Some vcard field names and subnames in get/set_vcard2 are:

* N FAMILY     - Family name
* N GIVEN      - Given name
* N MIDDLE     - Middle name
* ADR CTRY     - Address: Country
* ADR LOCALITY - Address: City
* TEL HOME     - Telephone: Home
* TEL CELL     - Telephone: Cellphone
* TEL WORK     - Telephone: Work
* TEL VOICE    - Telephone: Voice
* EMAIL USERID - E-Mail Address
* ORG ORGNAME  - Work: Company
* ORG ORGUNIT  - Work: Department

For a full list of vCard fields check XEP-0054: vcard-temp at https://xmpp.org/extensions/xep-0054.html   

Установить номер телефона:


Установить название компании:

      # ejabberdctl set_vcard2 some_username some.host TEL HOME "+1(234) 567-89-01"              
Другие вопросы по тегам