Class: SkypeR::Object::Chat

Inherits:
Base
  • Object
show all
Defined in:
lib/skyper/object.rb

Overview

CHAT object

Version

* Protocol 3 (updated in protocol 7)

Properties

* NAME - chat ID, for example CHAT #test_l/$6a072ce5537c4044 NAME #test_l/$6a072ce5537c4044
* TIMESTAMP - time when chat was created, for example CHAT #test_l/$6a072ce5537c4044 TIMESTAMP 1078958218
* ADDER - user who added the current user to chat, for example CHAT 1078958218 ADDER k6rberebane
* STATUS - chat status, for example CHAT #test_l/$6a072ce5537c4044 STATUS MULTI_SUBSCRIBED . Possible values:
      o LEGACY_DIALOG - old style IM
      o DIALOG - 1:1 chat.
      o MULTI_SUBSCRIBED - participant in chat
      o UNSUBSCRIBED - left chat 
* POSTERS - members who have posted messages, for example CHAT #test_l/$6a072ce5537c4044 POSTERS k6rberebane test_3
* MEMBERS - all users who have been there, for example CHAT #test_l/$6a072ce5537c4044 MEMBERS k6rberebane test test_2 test_3
* TOPIC - chat topic. Example: CHAT #test_l/$6a072ce5537c4044 TOPIC API testimine
* TOPICXML - set when a chat topic contains XML formatting elements (topic was changed with ALTER CHAT SETTOPICXML command) This property works in parallel with TOPIC property - when TOPICXML is set, the value is stripped of XML tags and updated in TOPIC.
* CHATMESSAGES - all messages IDs in this chat, for example CHAT #test_l/$6a072ce5537c4044 CHATMESSAGES 34, 35, 36, 38, 39
* ACTIVEMEMBERS - members who have stayed in chat, for example CHAT #test_l/$6a072ce5537c4044 ACTIVEMEMBERS k6rberebane test_2 test_3
* FRIENDLYNAME - name shown in chat window title, for example CHAT #test_l/$6a072ce5537c4044 FRIENDLYNAME Test Test XX | tere ise ka
* CHATMESSAGES - list of chatmessage identifiers
* RECENTCHATMESSAGES - list of missed/recent chatmessage identifiers
* BOOKMARKED - TRUE|FALSE (added in protocol version 6 / Skype API version 2.5)

Following properties were added to CHAT object in protocol 7 (API version 3.0):

* MEMBEROBJECTS - contains the list of CHATMEMBER object IDs. Refer to
      o CHATMEMBER object for list of properties
      o GET CHATMEMBER command on how to access those properties.
      o GET CHAT MEMBEROBJECTS command on how to get a list of chatmember object IDs for a given chat. 
* PASSWORDHINT - contains password hint text for the chat object. Refer to ALTER CHAT SETPASSWORD command on how to set chat passwords.
* GUIDELINES - contains chat guidelines text. Refer to ALTER CHAT SETGUIDELINES command on how to set chat guidelines.
* OPTIONS - bitmap of chat options. Refer to ALTER CHAT SETOPTIONS command for more information.
* DESCRIPTION - currently used only for hidden synchronization channels for managing shared groups.
* DIALOG_PARTNER - the handle of the dialog partner for dialog type chats (chats with two participants).
* ACTIVITY_TIMESTAMP - the UNIX timestamp of last activity.
* TYPE - chat type with following possible values:
      o LEGACY_DIALOG - no longer supported.
      o DIALOG - a chat with only two participants.
      o MULTICHAT - a chat with more than two participants.
      o SHAREDGROUP - a chat used for synchronization of shared contact groups.
      o LEGACY_UNSUBSCRIBED - no longer supported. 
* MYSTATUS - user's current status in chat. Possible values are:
      o CONNECTING - status set when the system is trying to connect to the chat.
      o WAITING_REMOTE_ACCEPT - set when a new user joins a public chat. When the chat has "participants need authorization to read messages" option, the MYSTATUS property of a new applicant will remain in this status until he gets accepted or rejected by a chat administrator. Otherwise user's MYSTATUS will automatically change to either LISTENER or USER, depending on public chat options.
      o ACCEPT_REQUIRED - this status is used for shared contact groups functionality.
      o PASSWORD_REQUIRED - status set when the system is waiting for user to supply the chat password.
      o SUBSCRIBED - set when user joins the chat.
      o UNSUBSCRIBED - set when user leaves the chat or chat ends.
      o CHAT_DISBANDED - status set when the chat is disbanded.
      o QUEUED_BECAUSE_CHAT_IS_FULL - currently the maximum number of people in the same chat is 100.
      o APPLICATION_DENIED - set when public chat administrator has rejected user from joining.
      o KICKED - status set when the user has been kicked from the chat. Note that it is possible for the user to re-join the chat after being kicked.
      o BANNED - status set when the user has been banned from the chat.
      o RETRY_CONNECTING - status set when connect to chat failed and system retries to establish connection. 
* MYROLE - user's privilege level in chat Refer to CHAT ROLES section for more information.
* BLOB - for public chats, this property contains encoded list of chat join-points. Contents of this field is used in public chat URLs.
* APPLICANTS - this property contains list of skypenames of people who have applied to join the chat but have not yet been accepted by a public chat administrator. Users only become applicants when the chat has JOINERS_BECOME_APPLICANTS option. Refer to ALTER CHAT SETOPTIONS command for more information.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Base

#update_attributes

Constructor Details

#initialize(args = {}) ⇒ Chat

Returns a new instance of Chat.



336
337
338
339
340
341
# File 'lib/skyper/object.rb', line 336

def initialize(args={})
  @name = args[:name] if args[:name]
  @members = args[:members] if args[:members]
  @timestamp = args[:timestamp] if args[:timestamp]
  @status = args[:status] if args[:status]
end

Instance Attribute Details

#membersObject

Returns the value of attribute members.



334
335
336
# File 'lib/skyper/object.rb', line 334

def members
  @members
end

#nameObject

Returns the value of attribute name.



334
335
336
# File 'lib/skyper/object.rb', line 334

def name
  @name
end

#statusObject

Returns the value of attribute status.



334
335
336
# File 'lib/skyper/object.rb', line 334

def status
  @status
end

#timestampObject

Returns the value of attribute timestamp.



334
335
336
# File 'lib/skyper/object.rb', line 334

def timestamp
  @timestamp
end