ConsoleUser

Copyright (c) 2010-2023 Skaion Corporarion, www.skaion.com

This project was developed in part by numerous sponsorships from the U.S. Government. The U.S. Government is authorized to reproduce and distribute reprints of Governmental purposes notwithstanding any copyright notation thereon.

All content reflects those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the U.S. Government or Skaion Corporation.

class ChatClientImpl.ChatClientImpl(system, config)

This class is the public interface by which a <no title> can access chat programs. This class abstracts away the actual software that is being used to access the email, so that can be changed without needing to change the <no title> as long as there are no changes to this interface.

Parameters:

  • system: a <no title> object to communicate with the target system

  • config: a <no title> object holding all our configuration

  • ctype: optionally the (string) name of the type of client to

    create, overriding anything in the config object

login()

Login with the configured user credentials

logout()

Log out the current user.

post(message)

Submit the given message to the current chat channel

reply_to_random(message)

Select a random message that is visible and reply to it

select_channel(name)

Select the channel with the given name (or at least containing it)

ChatClientImpl.get_chat_client(system, config, chat_type=None)

Create a suitable concrete instance to provide the desired type of chat functionality.

Parameters:

  • system: a <no title> instance to interact with the target system

  • config: a <no title> object defining this user

  • chat_type: optionally, the type of chat to create instead of what

    config would have us create