48class ClientAccountList;                 
 
   93    inline void set(u_int32_t mask)
 
   94        { m_flags = m_flags | mask; }
 
 
  101        { m_flags = m_flags & ~mask; }
 
 
  108    inline u_int32_t 
flag(u_int32_t mask)
 const 
  109        { 
return (m_flags & mask); }
 
 
  130            if ((0 != flag(mask)) == ok)
 
 
  146    inline operator u_int32_t()
 const 
 
  153        { m_flags = value; 
return *
this; }
 
 
 
  173        : 
String(name), m_value(val)
 
 
  181        : 
String(other), m_value(other.value())
 
 
  221            return o ? (
static_cast<NamedInt*
>(o->
get()))->value() : defVal;
 
 
  235                if (ni->
value() == val)
 
 
 
  280    virtual void title(
const String& text);
 
  340        bool richText = 
false) = 0;
 
  410        bool atStart = 
false);
 
  421        const NamedList* data = 0, 
bool atStart = 
false);
 
  469        const NamedList* data = 0, 
bool atStart = 
false);
 
  483        bool atStart = 
false);
 
  604            m_initialized = 
true;
 
 
  622    virtual void size(
int width, 
int height) = 0;
 
  629    virtual void move(
int x, 
int y) = 0;
 
  645    virtual void menu(
int x, 
int y) = 0;
 
  665    inline const String& title()
 const 
  673        { 
return m_context; }
 
 
  680        { 
return m_visible; }
 
 
  687        { 
if (yes) show(); 
else hide(); }
 
 
  737    virtual void doPopulate() = 0;
 
  738    virtual void doInit() = 0;
 
 
  778        { 
return toString(); }
 
 
  804        bool atStart = 
false)
 
 
 
  959        { 
return 0 != m_types.find(type); }
 
 
  980        const char* factory = 0);
 
 
 1035        OptActivateLastOutCall,          
 
 1036        OptActivateLastInCall,           
 
 1037        OptActivateCallOnSelect,         
 
 1041        OptAddAccountOnStartup,          
 
 
 1055        TrayIconInfo = 1000,
 
 1056        TrayIconIncomingChat = 3000,
 
 1057        TrayIconNotification = 5000,
 
 1058        TrayIconIncomingCall = 10000,
 
 
 1107        { 
if (!m_oneThread) lock(); }
 
 
 1113        { 
if (!m_oneThread) unlock(); }
 
 
 1120        { m_clientThread = th; }
 
 
 1132    void loadUI(
const char* file = 0, 
bool init = 
true);
 
 1296        { 
return m_oneThread; }
 
 
 1313    bool setFocus(
const String& name, 
bool select = 
false, 
Window* wnd = 0, 
Window* skip = 0);
 
 1315    bool setText(
const String& name, 
const String& text, 
bool richText = 
false,
 
 1333    bool addOption(
const String& name, 
const String& item, 
bool atStart,
 
 1348        bool atStart = 
false, 
Window* wnd = 0, 
Window* skip = 0);
 
 1351        bool atStart = 
false, 
Window* wnd = 0, 
Window* skip = 0);
 
 1396        bool atStart = 
false, 
Window* wnd = 0, 
Window* skip = 0);
 
 1532    void moveRelated(
const Window* wnd, 
int dx, 
int dy);
 
 1533    inline bool initialized()
 const 
 1534        { 
return m_initialized; }
 
 1535    inline static Client* self()
 
 1536        { 
return s_client; }
 
 1537    inline static void setSelf(Client* client)
 
 1538        { s_client = client; }
 
 1545        { 
return self() && (self()->isUIThread() || !(exiting() || Engine::exiting())); }
 
 
 1554    inline static bool changing()
 
 1555        { 
return (s_changing > 0); }
 
 1557    static bool setVisible(
const String& name, 
bool show = 
true, 
bool activate = 
false);
 
 1558    static bool getVisible(
const String& name);
 
 1560    static bool openMessage(
const char* text, 
const Window* parent = 0, 
const char* context = 0);
 
 1561    static bool openConfirm(
const char* text, 
const Window* parent = 0, 
const char* context = 0);
 
 1562    static ObjList* listWindows();
 
 1596        bool save, 
bool update);
 
 1702    virtual bool createSound(
const char* name, 
const char* file, 
const char* device = 0)
 
 
 1720            char s[2] = {digit,0};
 
 1721            return emitDigits(s,
id);
 
 
 1730        { 
return toggle < OptCount ? m_toggles[toggle] : 
false; }
 
 
 1758        { 
return s_exiting; }
 
 
 1776        const char* oper = 0);
 
 1799        const String& contact, 
const char* proto = 0);
 
 1810        const String& contact, 
const char* proto = 0);
 
 1841        const char* name = 0, 
NamedList* params = 0);
 
 1863        { s_idleLogicsTick = 
true; }
 
 
 2040    static Regexp s_notSelected;
 
 2043    static Regexp s_guidRegexp;
 
 2045    static String s_skinPath;
 
 2046    static String s_soundPath;
 
 2048    static String s_ringInName;
 
 2050    static String s_ringOutName;
 
 2052    static String s_statusWidget;
 
 2054    static String s_debugWidget;
 
 2056    static String s_toggles[OptCount];
 
 2058    static int s_maxConfPeers;
 
 2060    static bool s_engineStarted;
 
 2069    virtual bool createWindow(
const String& name,
 
 2071    virtual void loadWindows(
const char* file = 0) = 0;
 
 2072    virtual void initWindows();
 
 2073    virtual void initClient();
 
 2074    virtual void exitClient()
 
 2076    virtual bool isUIThread()
 
 2078    inline bool needProxy()
 const 
 2079        { 
return m_oneThread && !(Client::self() && Client::self()->isUIThread()); }
 
 2080    bool driverLockLoop();
 
 2081    static bool driverLock(
long maxwait = 0);
 
 2082    static void driverUnlock();
 
 2084    static bool s_exiting;               
 
 2090    bool m_toggles[OptCount];
 
 2092    ClientLogic* m_defaultLogic;         
 
 2093    static Client* s_client;
 
 2094    static int s_changing;
 
 2096    static bool s_idleLogicsTick;        
 
 
 2202        { 
return m_slaves; }
 
 
 2210            return m_slaves.count();
 
 
 2219            if (!m_slaves.find(sid))
 
 2220                m_slaves.append(
new String(sid));
 
 
 2229            m_slaves.remove(sid);
 
 
 2237        { 
return m_master; }
 
 
 2244        { 
return m_clientParams; }
 
 
 2258        { 
return m_partyName ? m_partyName : m_party; }
 
 
 2265        { 
return m_conference; }
 
 
 2272        { 
return m_transferId; }
 
 
 2279        { 
return m_clientData; }
 
 
 2287            TelEngine::destruct(m_clientData);
 
 2288            if (obj && obj->ref())
 
 
 2298    bool setMedia(
bool open = 
false, 
bool replace = 
false);
 
 2335        { 
return m_peerOutFormat; }
 
 
 2342        { 
return m_peerInFormat; }
 
 
 2349        { 
return m_active; }
 
 
 2363        { 
return m_noticed; }
 
 
 2394        bool updatePeer = 
true, 
const char* engineMsg = 0,
 
 2395        bool minimal = 
false, 
bool data = 
false);
 
 2410        { 
return 0 != getReconnPeer(
false); }
 
 
 2430    static int lookup(
const char* notif, 
int def = Unknown)
 
 2431        { 
return TelEngine::lookup(notif,s_notification,def); }
 
 
 2439    static const char* 
lookup(
int notif, 
const char* def = 0)
 
 2440        { 
return TelEngine::lookup(notif,s_notification,def); }
 
 
 2449        { 
return TelEngine::lookup(notif,s_slaveTypes,def); }
 
 
 2466    inline bool peerHasSource(
Message& msg) {
 
 2474    void checkSilence();
 
 
 2521        { 
return m_activeId; }
 
 
 2545        { 
return s_driver; }
 
 
 2552        { 
return s_device; }
 
 
 2578        bool buildFromChan = 
false);
 
 2599        { 
return self() ? findChan(self()->activeId()) : 0; }
 
 
 
 2722        bool save, 
bool update)
 
 
 3152        { 
return outgoing ? params[YSTRING(
"called")] : params[YSTRING(
"caller")]; }
 
 
 3160            const String& dir = params[YSTRING(
"direction")];
 
 3161            if (dir == YSTRING(
"incoming"))
 
 3162                return cdrRemoteParty(params,
true);
 
 3163            if (dir == YSTRING(
"outgoing"))
 
 3164                return cdrRemoteParty(params,
false);
 
 
 3195    static const char* s_provParams[];
 
 3199    static Mutex s_protocolsMutex;
 
 3218    Mutex m_durationMutex;               
 
 
 3297        bool save, 
bool update);
 
 3634            accId = proto + 
":" + user + 
"@" + host;
 
 
 3779        const char* title = 
"Error");
 
 3788    virtual void notifyNoAudio(
bool show, 
bool micOk = 
false, 
bool speakerOk = 
false,
 
 3807    String m_selectedChannel;            
 
 3808    String m_transferInitiated;          
 
 3813    bool updateAccount(
const NamedList& account, 
bool save,
 
 3818    bool handleDialogAction(
const String& name, 
bool& retVal, 
Window* wnd);
 
 3820    bool handleChatContactAction(
const String& name, 
Window* wnd);
 
 3822    bool handleChatContactEditOk(
const String& name, 
Window* wnd);
 
 3824    bool handleChatRoomEditOk(
const String& name, 
Window* wnd);
 
 3828    bool handleMucInviteOk(
Window* wnd);
 
 3839        const char* notif = 
"notification");
 
 3843        bool newContact = 
true);
 
 3845    bool handleNotificationAreaAction(
const String& action, 
Window* wnd);
 
 3849    bool handleAccCredInput(
Window* wnd, 
const String& name, 
bool inputPwd);
 
 3851    bool handleChanShowExtra(
Window* wnd, 
bool show, 
const String& chan, 
bool conf);
 
 3853    bool handleChanItemConfTransfer(
bool conf, 
const String& name, 
Window* wnd);
 
 3863    bool handleFileShareDrop(
bool askOnly, 
Window* wnd, 
const String& name,
 
 3869    bool handleDrop(
bool askOnly, 
Window* wnd, 
const String& name,
 
 3876    FtManager* m_ftManager;              
 
 
 3915        { 
return m_params; }
 
 
 3922        { 
return m_contacts; }
 
 
 3936        { 
return m_contact; }
 
 
 3949        { 
return m_params[YSTRING(
"protocol")]; }
 
 
 3956        { 
return protocol() == YSTRING(
"jabber"); }
 
 
 3963        { 
return protocol() == YSTRING(
"jabber"); }
 
 
 3970        { 
return m_params.getBoolValue(YSTRING(
"enabled"),
true); }
 
 
 3984        { 
return m_params; }
 
 
 3997        { 
return *m_resource; }
 
 
 4012    bool save(
bool ok = 
true, 
bool savePwd = 
true);
 
 4031        const String* skipId = 0, 
bool ref = 
false);
 
 4083        const char* uri = 0);
 
 4124        const char* msg = 
"user.data");
 
 4137        { 
return m_params[YSTRING(
"datadirectory")]; }
 
 
 4156        const char* file = 
"account.conf");
 
 4179    virtual void appendContact(
ClientContact* contact, 
bool muc = 
false);
 
 
 4205          m_localContacts(localContacts)
 
 
 4218        { 
return m_accounts; }
 
 
 4225        { 
return m_localContacts; }
 
 
 4240        { 
return m_localContacts && m_localContacts->findContact(
id); }
 
 
 
 4368        const char* uri = 0);
 
 4379        const char* uri = 0);
 
 4414        { 
return m_subscription; }
 
 
 4421        { 
return 0 != m_sub.flag(SubFrom); }
 
 
 4428        { 
return 0 != m_sub.flag(SubTo); }
 
 
 4442        { 
return m_resources; }
 
 
 4449        { 
return m_online || 0 != m_resources.skipNull(); }
 
 
 4463        { 
return m_groups; }
 
 
 4470    inline bool local(
bool defVal = 
false)
 const 
 4471        { 
return m_params.getBoolValue(YSTRING(
"local"),defVal); }
 
 
 4485    inline bool remote(
bool defVal = 
false)
 const 
 4486        { 
return m_params.getBoolValue(YSTRING(
"remote"),defVal); }
 
 
 4536        { 
return buildContactInstanceId(dest,m_id,inst); }
 
 
 4554        { 
return wnd && wnd->
toString() == m_chatWndName; }
 
 
 4592        const String& name = 
"message");
 
 4601        const String& name = 
"history");
 
 4610        const String& name = 
"history");
 
 4619        const String& name = 
"history");
 
 4642        { 
return Client::self() && Client::self()->getVisible(m_chatWndName); }
 
 
 4650    virtual bool showChat(
bool visible, 
bool active = 
false);
 
 4672        const char* icon = 0);
 
 4777        { 
return 0 != m_share.getParam(0); }
 
 
 4817        { 
return m_shared; }
 
 
 4860            int pos = src.
find(
'|');
 
 
 4886            dest << cId << 
"|" << inst.
uriEscape(
'|');
 
 
 4891    static String s_chatPrefix;
 
 4893    static String s_dockedChatWnd;
 
 4895    static String s_dockedChatWidget;
 
 4899    static String s_chatInput;
 
 
 4964        CapAudio = 0x00000001,           
 
 4965        CapFileTransfer = 0x00000002,    
 
 4966        CapFileInfo = 0x00000004,        
 
 4967        CapRsm = 0x00000008,             
 
 
 4976    inline explicit ClientResource(
const char* 
id, 
const char* name = 0, 
bool audio = 
true)
 
 4977        : m_id(id), m_name(name ? name : id), m_caps(audio ? CapAudio : 0),
 
 4978        m_priority(0), m_status(Offline)
 
 
 4993        { 
return m_status > Connecting; }
 
 
 5000        { 
return m_status == Offline; }
 
 
 5007        { 
return lookup(m_status,s_statusName); }
 
 
 5014        { 
return m_text ? m_text.c_str() : statusDisplayText(m_status); }
 
 
 5029        { 
return m_caps.changeFlagCheck(CapAudio,ok); }
 
 
 5037        { 
return m_caps.changeFlagCheck(CapFileTransfer,ok); }
 
 
 5045            if (m_priority == prio)
 
 
 5057            if (m_status == stat)
 
 
 5082        { 
return lookup(status,s_statusName,defVal); }
 
 
 
 5141    inline explicit MucRoomMember(
const char* 
id, 
const char* nick, 
const char* uri = 0)
 
 5143        m_uri(uri), m_affiliation(AffNone), m_role(RoleNone)
 
 
 
 5185        const char* nick = 0);
 
 5192        { 
return *m_resource; }
 
 
 5200        { 
return m_resource == item; }
 
 
 5208        { 
return m_resource->toString() == item; }
 
 
 5215            return m_resource->online() &&
 
 5216                m_resource->m_role > MucRoomMember::RoleNone;
 
 
 5224        { 
return available() && m_resource->m_role >= MucRoomMember::Visitor; }
 
 
 5231        { 
return available(); }
 
 
 5238        { 
return available() && m_resource->m_role == MucRoomMember::Moderator; }
 
 
 5245        { 
return available(); }
 
 
 5267            Message* m = Client::buildMessage(
"muc.room",accountName(),oper);
 
 
 5294        { 
return (!ref || m_resource->ref()) ? m_resource : 0; }
 
 
 5347        const String& name = 
"message");
 
 5357        const String& name = 
"history");
 
 5367        const String& name = 
"history");
 
 5377        const String& name = 
"history");
 
 5467    unsigned int m_index;                
 
 
 5491        : m_id(id), m_logic(0), m_name(name),   m_startTime(start)
 
 5492        { setLogic(logic,owner); }
 
 
 5522        Window* wnd = 0, 
Window* skip = 0, 
bool force = 
false);
 
 5532        bool force = 
false);
 
 5542        bool force = 
false);
 
 5554        unsigned int secNow, 
bool force = 
false);
 
 5565        bool force = 
false);
 
 5576    unsigned int m_startTime;            
 
 
 5594    inline ClientSound(
const char* name, 
const char* file, 
const char* device = 0)
 
 5595        : 
String(name), m_native(false), m_file(file), m_device(device), m_repeat(0),
 
 5596        m_started(false), m_stereo(false)
 
 
 5619        { 
return m_native; }
 
 
 5626        { 
return m_started; }
 
 
 5633        { 
return m_device; }
 
 
 5640        { 
Lock lock(s_soundsMutex); m_device = dev; }
 
 
 5655    inline void file(
const char* filename, 
bool stereo)
 
 5656        { 
Lock lock(s_soundsMutex); m_file = filename; m_stereo = stereo; }
 
 
 5664        { m_repeat = count; }
 
 
 5671        { 
return m_stereo; }
 
 
 5710    static bool build(
const String& 
id, 
const char* file, 
const char* device = 0,
 
 5711        unsigned int repeat = 0, 
bool resetExisting = 
true, 
bool stereo = 
false);
 
 5759    virtual bool doStart();
 
 5760    virtual void doStop();
 
 5765    unsigned int m_repeat;
 
 
 5843        { copyChildren(other.m_children); }
 
 
 5850        { 
return m_children; }
 
 
 5857        { 
return m_updated; }
 
 
 
 5953                m_params.copyParams(*params);
 
 
 5969        { 
return m_params; }
 
 
 5976        { 
return m_params; }
 
 
 
Definition yateclass.h:1627
const String & hexDigest()
Definition yateclass.h:7203
Ephemeral mutex, semaphore or rw-lock locking object.
Definition yateclass.h:10000
A standard MD5 digest calculator.
Definition yateclass.h:7350
Mutex support.
Definition yateclass.h:9403
A named string container class.
Definition yateclass.h:7690
NamedString * getParam(const String &name) const
NamedList & setParam(NamedString *param)
bool getBoolValue(const String &name, bool defvalue=false) const
NamedList & addParam(NamedString *param)
NamedList & copyParams(bool replace, const NamedList &original, bool copyUserData=false)
A named string class.
Definition yateclass.h:5304
An object list class.
Definition yateclass.h:2032
ObjList * find(const GenObject *obj) const
ObjList * append(const GenObject *obj, bool compact=true)
ObjList * skipNull() const
GenObject * get() const
Definition yateclass.h:2068
unsigned int count() const
GenObject * remove(bool delobj=true)
Definition yateclass.h:1752
A regexp matching class.
Definition yateclass.h:5094
A C-style string handling class.
Definition yateclass.h:3055
const char * c_str() const
Definition yateclass.h:3160
bool startSkip(const char *what, bool wordBreak=true, bool caseInsensitive=false)
int find(char what, unsigned int offs=0) const
static String uriEscape(const char *str, char extraEsc=0, const char *noEsc=0)
Definition yateclass.h:4170
static String uriUnescape(const char *str, int *errptr=0, bool setPartial=true)
Definition yateclass.h:4234
virtual const String & toString() const
static const char * boolText(bool value)
Definition yateclass.h:3153
static const String & empty()
String substr(int offs, int len=-1) const
An abstract call endpoint.
Definition yatephone.h:1128
DataSource * getSource(const String &type=CallEndpoint::audioType()) const
CallEndpoint * getPeer() const
Definition yatephone.h:1172
An abstract communication channel.
Definition yatephone.h:1705
A client account list.
Definition yatecbase.h:4194
ObjList & accounts()
Definition yatecbase.h:4217
virtual ClientContact * findAnyContact(const String &id, bool ref=false)
virtual ClientContact * findContactByUri(const String &account, const String &uri, bool ref=false)
virtual ClientContact * findContact(const String &account, const String &id, bool ref=false)
virtual MucRoom * findRoomByMember(const String &id, bool ref=false)
virtual bool appendAccount(ClientAccount *account)
virtual ClientAccount * findAccount(const String &id, bool ref=false)
virtual MucRoom * findRoom(const String &id, bool ref=false)
virtual ClientContact * findContactByInstance(const String &id, String *instance=0, bool ref=false)
bool isLocalContact(const String &id) const
Definition yatecbase.h:4239
virtual void removeAccount(const String &id)
ClientAccount * localContacts() const
Definition yatecbase.h:4224
ClientAccountList(const char *name, ClientAccount *localContacts=0)
Definition yatecbase.h:4203
bool isLocalContact(ClientContact *c) const
virtual ClientAccount * findSingleRegAccount(const String *skipProto=0, bool ref=false)
virtual ClientContact * findContact(const String &builtId, bool ref=false)
An account.
Definition yatecbase.h:3885
virtual bool loadDataDirCfg(Configuration *cfg=0, const char *file="account.conf")
ClientAccount(const char *proto, const char *user, const char *host, bool startup, ClientContact *contact=0)
virtual ClientContact * removeContact(const String &id, bool delObj=true)
virtual void clearRooms(bool saved, bool temp)
bool hasChat() const
Definition yatecbase.h:3955
virtual void fillItemParams(NamedList &list)
const String & dataDir() const
Definition yatecbase.h:4136
virtual void loadContacts(Configuration *cfg=0)
virtual bool setupDataDir(String *errStr=0, bool saveAcc=true)
virtual ClientContact * findAnyContact(const String &id, bool ref=false)
virtual ClientContact * findContact(const String &id, const String &resid, bool ref=false)
virtual bool clearDataDir(String *errStr=0)
bool startup() const
Definition yatecbase.h:3969
ClientContact * contact() const
Definition yatecbase.h:3935
virtual Message * userlogin(bool login, const char *msg="user.login")
virtual ClientContact * appendContact(const String &id, const char *name, const char *uri=0)
virtual MucRoom * findRoom(const String &id, bool ref=false)
ClientResource & resource() const
Definition yatecbase.h:3996
virtual ClientContact * findContactByUri(const String &uri, bool ref=false)
ClientAccount(const NamedList ¶ms, ClientContact *contact=0)
virtual ClientContact * findContact(const String *name=0, const String *uri=0, const String *skipId=0, bool ref=false)
const String & protocol() const
Definition yatecbase.h:3948
virtual const String & toString() const
Definition yatecbase.h:3983
bool save(bool ok=true, bool savePwd=true)
void setResource(ClientResource *res)
bool hasPresence() const
Definition yatecbase.h:3962
void startup(bool ok)
Definition yatecbase.h:3976
virtual ClientContact * findContact(const String &id, bool ref=false)
void setContact(ClientContact *contact)
ObjList & contacts()
Definition yatecbase.h:3921
ObjList & mucs()
Definition yatecbase.h:3928
const NamedList & params() const
Definition yatecbase.h:3914
virtual Message * userData(bool update, const String &data, const char *msg="user.data")
virtual ClientContact * appendContact(const NamedList ¶ms)
ClientResource * resource(bool ref)
virtual MucRoom * findRoomByUri(const String &uri, bool ref=false)
Channel used by client programs.
Definition yatecbase.h:2105
const String & partyName() const
Definition yatecbase.h:2257
virtual bool msgRinging(Message &msg)
const String & peerInFormat() const
Definition yatecbase.h:2341
static int lookupSlaveType(const char *notif, int def=SlaveNone)
Definition yatecbase.h:2448
virtual bool callRouted(Message &msg)
virtual bool msgProgress(Message &msg)
bool conference() const
Definition yatecbase.h:2264
static int lookup(const char *notif, int def=Unknown)
Definition yatecbase.h:2430
static const TokenDict s_notification[]
Definition yatecbase.h:2454
static const TokenDict s_slaveTypes[]
Definition yatecbase.h:2459
ClientChannel(const Message &msg, const String &peerid)
SlaveType
Definition yatecbase.h:2136
virtual bool msgDrop(Message &msg, const char *reason)
virtual void connected(const char *reason)
bool muted() const
Definition yatecbase.h:2355
void callAnswer(bool setActive=true)
virtual bool msgAnswered(Message &msg)
RefObject * clientData() const
Definition yatecbase.h:2278
void setTransfer(const String &target=String::empty())
void addSlave(const String &sid)
Definition yatecbase.h:2217
static const char * lookup(int notif, const char *def=0)
Definition yatecbase.h:2439
void getReconnPeer(String &buf)
Definition yatecbase.h:2401
virtual void callRejected(const char *error, const char *reason, const Message *msg)
ObjList & slaves()
Definition yatecbase.h:2201
bool setActive(bool active, bool update=true)
ClientChannel(const String &target, const NamedList ¶ms, int st=SlaveNone, const String &masterChan=String::empty())
bool setMedia(bool open=false, bool replace=false)
int line() const
Definition yatecbase.h:2374
Notification
Definition yatecbase.h:2113
void setClientData(RefObject *obj=0)
Definition yatecbase.h:2286
int slave() const
Definition yatecbase.h:2193
const String & party() const
Definition yatecbase.h:2250
bool hasReconnPeer()
Definition yatecbase.h:2409
const String & peerOutFormat() const
Definition yatecbase.h:2334
virtual void callAccept(Message &msg)
void update(int notif, bool chan=true, bool updatePeer=true, const char *engineMsg=0, bool minimal=false, bool data=false)
const String & master() const
Definition yatecbase.h:2236
void removeSlave(const String &sid)
Definition yatecbase.h:2227
const NamedList & clientParams() const
Definition yatecbase.h:2243
CallEndpoint * getReconnPeer(bool ref=true)
bool start(const String &target, const NamedList ¶ms)
unsigned int slavesCount() const
Definition yatecbase.h:2208
bool isNoticed() const
Definition yatecbase.h:2362
ClientChannel(const String &soundId)
bool setMuted(bool on, bool update=true)
void setConference(const String &target=String::empty())
bool active() const
Definition yatecbase.h:2348
const String & transferId() const
Definition yatecbase.h:2271
void dropReconnPeer(const char *reason=0)
virtual void disconnected(bool final, const char *reason)
A directory.
Definition yatecbase.h:5826
ClientDir(const ClientDir &other)
Definition yatecbase.h:5841
void updated(bool on)
Definition yatecbase.h:5863
ClientDir * addDir(const String &name)
ClientDir(const char *name)
Definition yatecbase.h:5833
ClientFileItem * findChildName(const String &name)
Definition yatecbase.h:5920
virtual ClientDir * directory()
Definition yatecbase.h:5929
ClientFileItem * findChild(const String &path, const char *sep="/")
bool updated() const
Definition yatecbase.h:5856
ObjList & children()
Definition yatecbase.h:5849
void copyChildren(const ObjList &list)
void addChildren(ObjList &list)
bool addChild(ClientFileItem *item)
ClientDir * addDirPath(const String &path, const char *sep="/")
Base Driver with client specific functions.
Definition yatecbase.h:2503
static bool setAudioTransfer(const String &id, const String &target=String::empty())
virtual void msgTimer(Message &msg)
static const String & device()
Definition yatecbase.h:2551
static void dropCalls(const char *reason=0)
static ClientChannel * findChanByPeer(const String &peer)
static ClientChannel * findActiveChan()
Definition yatecbase.h:2598
bool setActive(const String &id=String::empty())
static String s_confName
Definition yatecbase.h:2612
static bool setConference(const String &id, bool in, const String *confName=0, bool buildFromChan=false)
static bool s_dropConfPeer
Definition yatecbase.h:2618
virtual bool received(Message &msg, int id)
virtual bool msgExecute(Message &msg, String &dest)
virtual void initialize()=0
virtual bool msgRoute(Message &msg)
static ClientChannel * findChan(const String &id)
static void dropChan(const String &chan, const char *reason=0, bool peer=false)
static ClientDriver * self()
Definition yatecbase.h:2544
const String & activeId() const
Definition yatecbase.h:2520
ClientChannel * findLine(int line)
A file/directory item.
Definition yatecbase.h:5776
ClientFileItem(const char *name)
Definition yatecbase.h:5784
virtual const String & toString() const
Definition yatecbase.h:5813
const String & name() const
Definition yatecbase.h:5792
virtual ClientDir * directory()
Definition yatecbase.h:5799
virtual ClientFile * file()
Definition yatecbase.h:5806
A file.
Definition yatecbase.h:5942
ClientFile(const char *name, const NamedList *params=0)
Definition yatecbase.h:5950
const NamedList & params() const
Definition yatecbase.h:5975
NamedList & params()
Definition yatecbase.h:5968
virtual ClientFile * file()
Definition yatecbase.h:5982
ClientFile(const ClientFile &other)
Definition yatecbase.h:5960
Base class for all client logics.
Definition yatecbase.h:2634
virtual bool delContact(const String &contact, Window *wnd=0)
Definition yatecbase.h:2891
virtual bool setClientParam(const String ¶m, const String &value, bool save, bool update)
Definition yatecbase.h:2721
virtual bool handleUserLogin(Message &msg, bool &stopLogic)
Definition yatecbase.h:3027
virtual bool callLogDelete(const String &billid)
Definition yatecbase.h:2928
virtual bool acceptContact(NamedList *params, Window *wnd=0)
Definition yatecbase.h:2872
ClientLogic(const char *name, int priority)
virtual bool line(const String &name, Window *wnd=0)
virtual bool action(Window *wnd, const String &name, NamedList *params=0)
Definition yatecbase.h:2678
virtual bool imIncoming(Message &msg)
Definition yatecbase.h:2729
virtual void initializedWindows()
Definition yatecbase.h:2984
virtual bool callIncoming(Message &msg, const String &dest)
Definition yatecbase.h:2739
virtual void clearDurationUpdate()
virtual bool updateAccount(const NamedList &account, bool login, bool save)
Definition yatecbase.h:2843
virtual bool handleUserRoster(Message &msg, bool &stopLogic)
Definition yatecbase.h:3045
virtual bool removeDurationUpdate(const String &name, bool delObj=false)
virtual bool handleResourceSubscribe(Message &msg, bool &stopLogic)
Definition yatecbase.h:3063
virtual bool callLogCreateContact(const String &billid)
Definition yatecbase.h:2956
bool setParams(const NamedList ¶ms)
virtual void idleTimerTick(Time &time)
Definition yatecbase.h:3214
static const String & cdrRemoteParty(const NamedList ¶ms)
Definition yatecbase.h:3159
static bool saveContact(Configuration &cfg, ClientContact *c, bool save=true)
virtual void loadedWindows()
Definition yatecbase.h:2978
virtual bool select(Window *wnd, const String &name, const NamedList &items)
Definition yatecbase.h:2710
int priority() const
Definition yatecbase.h:2655
virtual bool editAccount(bool newAcc, NamedList *params, Window *wnd=0)
Definition yatecbase.h:2815
virtual bool handleCallCdr(Message &msg, bool &stopLogic)
Definition yatecbase.h:3018
virtual bool callLogClear(const String &table, const String &direction)
Definition yatecbase.h:2939
virtual bool handleClientChanUpdate(Message &msg, bool &stopLogic)
Definition yatecbase.h:3072
virtual bool loginAccount(const NamedList &account, bool login)
Definition yatecbase.h:2852
virtual bool addDurationUpdate(DurationUpdate *duration, bool autoDelete=false)
virtual bool callContact(NamedList *params=0, Window *wnd=0)
Definition yatecbase.h:2900
virtual bool command(const String &name, Window *wnd=0)
virtual bool delAccount(const String &account, Window *wnd=0)
Definition yatecbase.h:2833
virtual bool callLogCall(const String &billid, Window *wnd=0)
Definition yatecbase.h:2948
virtual bool removeDurationUpdate(DurationUpdate *duration, bool delObj=false)
virtual bool handleUiAction(Message &msg, bool &stopLogic)
Definition yatecbase.h:3009
virtual const String & toString() const
virtual bool updateProviders(const NamedList &provider, bool save, bool update)
Definition yatecbase.h:2910
virtual bool backspace(const String &name, Window *wnd=0)
virtual bool handleResourceNotify(Message &msg, bool &stopLogic)
Definition yatecbase.h:3054
virtual bool callLogUpdate(const NamedList ¶ms, bool save, bool update)
Definition yatecbase.h:2920
virtual bool acceptAccount(NamedList *params, Window *wnd=0)
Definition yatecbase.h:2824
static void initStaticData()
static const String & cdrRemoteParty(const NamedList ¶ms, bool outgoing)
Definition yatecbase.h:3151
virtual bool calltoLoaded()
Definition yatecbase.h:2972
virtual void exitingClient()
Definition yatecbase.h:3000
virtual bool validateCall(NamedList ¶ms, Window *wnd=0)
Definition yatecbase.h:2748
virtual bool defaultMsgHandler(Message &msg, int id, bool &stopLogic)
Definition yatecbase.h:3093
virtual bool updateContact(const NamedList &contact, bool save, bool update)
Definition yatecbase.h:2863
const String & name() const
Definition yatecbase.h:2648
virtual bool debug(const String &name, bool active, Window *wnd=0)
virtual bool handleUserNotify(Message &msg, bool &stopLogic)
Definition yatecbase.h:3036
virtual bool help(const String &action, Window *wnd)
Definition yatecbase.h:2965
virtual bool editContact(bool newCont, NamedList *params=0, Window *wnd=0)
Definition yatecbase.h:2882
static bool clearContact(Configuration &cfg, ClientContact *c, bool save=true)
virtual DurationUpdate * findDurationUpdate(const String &name, bool ref=true)
virtual bool toggle(Window *wnd, const String &name, bool active)
Definition yatecbase.h:2688
virtual bool display(NamedList ¶ms, bool widget, Window *wnd=0)
virtual bool handleContactInfo(Message &msg, bool &stopLogic)
Definition yatecbase.h:3081
virtual bool select(Window *wnd, const String &name, const String &item, const String &text=String::empty())
Definition yatecbase.h:2699
virtual void engineStart(Message &msg)
Definition yatecbase.h:3100
virtual bool callStart(NamedList ¶ms, Window *wnd=0, const String &cmd=String::empty())
Definition yatecbase.h:2759
virtual bool initializedClient()
Definition yatecbase.h:2993
A client contact's resource.
Definition yatecbase.h:4942
bool setFileTransfer(bool ok)
Definition yatecbase.h:5036
ClientResource(const char *id, const char *name=0, bool audio=true)
Definition yatecbase.h:4976
Capability
Definition yatecbase.h:4963
bool setStatusText(const String &text=String::empty())
Definition yatecbase.h:5068
Status
Definition yatecbase.h:4949
const char * text() const
Definition yatecbase.h:5013
bool setStatus(int stat)
Definition yatecbase.h:5056
virtual const String & toString() const
Definition yatecbase.h:4985
bool online() const
Definition yatecbase.h:4992
const char * statusName() const
Definition yatecbase.h:5006
static const TokenDict s_resNotifyCaps[]
Definition yatecbase.h:5092
bool setAudio(bool ok)
Definition yatecbase.h:5028
Flags32 & caps()
Definition yatecbase.h:5020
static const char * statusDisplayText(int status, const char *defVal=0)
Definition yatecbase.h:5081
static const TokenDict s_statusName[]
Definition yatecbase.h:5087
bool setPriority(int prio)
Definition yatecbase.h:5044
bool offline() const
Definition yatecbase.h:4999
A sound file.
Definition yatecbase.h:5584
static Mutex s_soundsMutex
Definition yatecbase.h:5750
const String & device() const
Definition yatecbase.h:5632
ClientSound(const char *name, const char *file, const char *device=0)
Definition yatecbase.h:5594
bool stereo() const
Definition yatecbase.h:5670
void setChannel(const String &chan, bool ok)
const String & file() const
Definition yatecbase.h:5646
bool start(bool force=true)
bool native() const
Definition yatecbase.h:5618
static ObjList s_sounds
Definition yatecbase.h:5745
virtual void destruct()
Definition yatecbase.h:5608
void file(const char *filename, bool stereo)
Definition yatecbase.h:5655
void setRepeat(unsigned int count)
Definition yatecbase.h:5663
static bool start(const String &name, bool force=true)
static String s_calltoPrefix
Definition yatecbase.h:5756
void device(const char *dev)
Definition yatecbase.h:5639
static void stop(const String &name)
bool attachSource(ClientChannel *chan)
static bool build(const String &id, const char *file, const char *device=0, unsigned int repeat=0, bool resetExisting=true, bool stereo=false)
bool started() const
Definition yatecbase.h:5625
static bool started(const String &name)
virtual ~ClientSound()
Definition yatecbase.h:5602
static ClientSound * find(const String &token, bool byName=true)
Class that runs the User Interface.
Definition yatecbase.h:994
virtual bool setClientParam(const String ¶m, const String &value, bool save, bool update)
virtual bool closeWindow(const String &name, bool hide=true)
void setThread(Thread *th)
Definition yatecbase.h:1119
static bool isClientMsg(Message &msg)
static bool addTrayIcon(const String &wndName, int prio, NamedList *params)
static void fixPathSep(String &path)
virtual bool action(Window *wnd, const String &name, NamedList *params=0)
bool updateTableRows(const String &name, const NamedList *data, bool atStart=false, Window *wnd=0, Window *skip=0)
virtual bool formatDateTime(String &dest, unsigned int secs, const char *format, bool utc=false)
Definition yatecbase.h:1749
bool oneThread() const
Definition yatecbase.h:1295
bool getSelect(const String &name, NamedList &items, Window *wnd=0, Window *skip=0)
static bool updateTrayIcon(const String &wndName)
virtual bool closeDialog(const String &name, Window *wnd, Window *skip=0)
void callAnswer(const String &id, bool setActive=true)
static void plain2html(String &buf, bool spaceEol=false)
virtual bool createObject(void **dest, const String &type, const char *name, NamedList *params=0)
bool removeMenu(const NamedList ¶ms, Window *wnd=0, Window *skip=0)
static bool valid()
Definition yatecbase.h:1544
virtual bool chooseFile(Window *parent, NamedList ¶ms)
Definition yatecbase.h:1582
bool callIncoming(Message &msg, const String &dest)
bool addLines(const String &name, const NamedList *lines, unsigned int max, bool atStart=false, Window *wnd=0, Window *skip=0)
static void appendEscape(String &buf, ObjList &list, char sep=',', bool force=false)
virtual bool openUrl(const String &url)=0
static bool removeTrayIcon(const String &wndName, const String &name)
ClientToggle
Definition yatecbase.h:1030
virtual bool imRouting(Message &msg)
Definition yatecbase.h:1626
static Message * buildUserRoster(bool update, const String &account, const String &contact, const char *proto=0)
static bool getLastNameInPath(String &dest, const String &path, char sep=0)
bool setParams(const NamedList *params, Window *wnd=0, Window *skip=0)
virtual bool select(Window *wnd, const String &name, const NamedList &items)
static int decodeFlags(const TokenDict *dict, const String &flags, int defVal=0)
static Message * buildSubscribe(bool request, bool ok, const String &account, const String &contact, const char *proto=0)
void callTerminate(const String &id, const char *reason=0, const char *error=0)
ClientChannel * getActiveChannel()
bool getText(const String &name, String &text, bool richText=false, Window *wnd=0, Window *skip=0)
void lockOther()
Definition yatecbase.h:1106
static Message * buildNotify(bool online, const String &account, const ClientResource *from=0)
MsgID
Definition yatecbase.h:1004
void installRelay(const char *name, int id, int prio)
bool postpone(const Message &msg, int id, bool copyUserData=false)
static int decodeFlags(const TokenDict *dict, const NamedList ¶ms, const String &prefix=String::empty())
Client(const char *name=0)
virtual ClientLogic * createDefaultLogic()
static bool getActive(const String &name)
bool getBoolOpt(ClientToggle toggle)
Definition yatecbase.h:1729
static void generateGuid(String &buf, const String &extra=String::empty())
virtual bool received(Message &msg, int id)
virtual bool createWindowSafe(const String &name, const String &alias=String::empty())
static void fixPhoneNumber(String &number, const char *chars=0)
virtual bool buildIncomingChannel(Message &msg, const String &dest)
static ObjList * splitUnescape(const String &buf, char sep=',', bool emptyOk=false)
bool emitDigit(char digit, const String &id=String::empty())
Definition yatecbase.h:1719
virtual bool getProperty(const String &name, const String &item, String &value, Window *wnd=0, Window *skip=0)
static bool addLogic(ClientLogic *logic)
int line() const
Definition yatecbase.h:1302
virtual bool backspace(const String &name, Window *wnd=0)
virtual bool callRouting(Message &msg)
Definition yatecbase.h:1619
virtual bool setImageFit(const String &name, const String &image, Window *wnd=0, Window *skip=0)
static bool removeLastNameInPath(String &dest, const String &path, char sep=0, const String &equalOnly=String::empty())
bool insertTableRow(const String &name, const String &item, const String &before, const NamedList *data=0, Window *wnd=0, Window *skip=0)
bool updateTableRow(const String &name, const String &item, const NamedList *data=0, bool atStart=false, Window *wnd=0, Window *skip=0)
virtual bool addToLog(const String &text)
virtual bool ringer(bool in, bool on)
virtual bool debugHook(bool active)
static void removeChars(String &buf, const char *chars)
virtual bool setStatus(const String &text, Window *wnd=0)
static void removeLogic(ClientLogic *logic)
static bool addToLogFormatted(const char *format,...)
virtual bool imExecute(Message &msg)
virtual bool createSound(const char *name, const char *file, const char *device=0)
Definition yatecbase.h:1702
static void addPathSep(String &dest, const String &path, char sep=0)
bool setMultipleRows(const String &name, const NamedList &data, const String &prefix=String::empty(), Window *wnd=0, Window *skip=0)
static Message * eventMessage(const String &event, Window *wnd=0, const char *name=0, NamedList *params=0)
virtual bool setProperty(const String &name, const String &item, const String &value, Window *wnd=0, Window *skip=0)
virtual bool buildOutgoingChannel(NamedList ¶ms)
static ClientToggle getBoolOpt(const String &name)
bool setStatusLocked(const String &text, Window *wnd=0)
void loadUI(const char *file=0, bool init=true)
virtual bool setImage(const String &name, const String &image, Window *wnd=0, Window *skip=0)
static bool save(Configuration &cfg, Window *parent=0, bool showErr=true)
TrayIconType
Definition yatecbase.h:1053
static ClientLogic * findLogic(const String &name)
virtual bool toggle(Window *wnd, const String &name, bool active)
static void setLogicsTick()
Definition yatecbase.h:1862
virtual bool createDialog(const String &name, Window *parent, const String &title, const String &alias=String::empty(), const NamedList *params=0)
virtual bool getOptions(const String &name, NamedList *items, Window *wnd=0, Window *skip=0)
bool buildMenu(const NamedList ¶ms, Window *wnd=0, Window *skip=0)
virtual void allHidden()=0
static NamedString * findParamByValue(NamedList &list, const String &value, NamedString *skip=0)
bool setBusy(const String &name, bool on, Window *wnd=0, Window *skip=0)
void unlockOther()
Definition yatecbase.h:1112
bool setBoolOpt(ClientToggle toggle, bool value, bool updateUi=false)
virtual bool select(Window *wnd, const String &name, const String &item, const String &text=String::empty())
static Message * buildMessage(const char *msg, const String &account, const char *oper=0)
static bool exiting()
Definition yatecbase.h:1757
bool openUrlSafe(const String &url)
static bool removeEndsWithPathSep(String &dest, const String &path, char sep=0)
bool emitDigits(const char *digits, const String &id=String::empty())
Configuration file handling.
Definition yatengine.h:41
The client's default logic.
Definition yatecbase.h:3234
virtual bool delContact(const String &contact, Window *wnd=0)
virtual bool setClientParam(const String ¶m, const String &value, bool save, bool update)
virtual bool handleUserLogin(Message &msg, bool &stopLogic)
virtual void updateSelectedChannel(const String *item=0)
DefaultLogic(const char *name="default", int prio=-100)
virtual bool callLogDelete(const String &billid)
virtual void notifyNoAudio(bool show, bool micOk=false, bool speakerOk=false, ClientChannel *chan=0)
virtual bool acceptContact(NamedList *params, Window *wnd=0)
virtual void closeInCallNotification(const String &id)
virtual bool action(Window *wnd, const String &name, NamedList *params=0)
virtual bool imIncoming(Message &msg)
virtual void initializedWindows()
virtual bool callIncoming(Message &msg, const String &dest)
virtual bool handleFileTransferNotify(Message &msg, bool &stopLogic)
virtual bool updateAccount(const NamedList &account, bool login, bool save)
virtual bool handleUserRoster(Message &msg, bool &stopLogic)
virtual bool handleResourceSubscribe(Message &msg, bool &stopLogic)
virtual bool callLogCreateContact(const String &billid)
virtual void idleTimerTick(Time &time)
virtual void fillLogContactActive(NamedList &list, bool active, const String *item=0)
virtual bool handleTextChanged(NamedList *params, Window *wnd)
virtual void channelSelectionChanged(const String &old)
virtual void loadedWindows()
Definition yatecbase.h:3494
virtual bool deleteSelectedItem(const String &action, Window *wnd, bool checked=false)
virtual bool select(Window *wnd, const String &name, const NamedList &items)
virtual bool editAccount(bool newAcc, NamedList *params, Window *wnd=0)
virtual void joinRoom(MucRoom *room, bool force=false)
virtual bool handleCallCdr(Message &msg, bool &stopLogic)
virtual bool callLogClear(const String &table, const String &direction)
virtual bool handleClientChanUpdate(Message &msg, bool &stopLogic)
virtual bool loginAccount(const NamedList &account, bool login)
virtual bool deleteCheckedItems(const String &list, Window *wnd, bool confirm)
virtual bool clearList(const String &action, Window *wnd)
virtual bool callContact(NamedList *params=0, Window *wnd=0)
virtual bool delAccount(const String &account, Window *wnd=0)
virtual bool callLogCall(const String &billid, Window *wnd=0)
virtual bool handleUiAction(Message &msg, bool &stopLogic)
virtual bool updateProviders(const NamedList &provider, bool save, bool update)
virtual bool handleFileInfo(Message &msg, bool &stopLogic)
virtual bool fillCallStart(NamedList &p, Window *wnd=0)
virtual bool handleResourceNotify(Message &msg, bool &stopLogic)
virtual bool callLogUpdate(const NamedList ¶ms, bool save, bool update)
virtual bool acceptAccount(NamedList *params, Window *wnd=0)
virtual bool calltoLoaded()
virtual void exitingClient()
static String & buildAccountId(String &accId, const String &proto, const String &user, const String &host)
Definition yatecbase.h:3632
virtual bool validateCall(NamedList ¶ms, Window *wnd=0)
virtual void fillContactEditActive(NamedList &list, bool active, const String *item=0, bool del=true)
virtual bool defaultMsgHandler(Message &msg, int id, bool &stopLogic)
virtual bool updateContact(const NamedList &contact, bool save, bool update)
virtual bool deleteItem(const String &list, const String &item, Window *wnd, bool confirm)
virtual bool handleUserNotify(Message &msg, bool &stopLogic)
virtual bool help(const String &action, Window *wnd)
virtual bool handleFileTransferAction(const String &name, Window *wnd, NamedList *params=0)
virtual bool editContact(bool newCont, NamedList *params=0, Window *wnd=0)
virtual bool digitPressed(NamedList ¶ms, Window *wnd=0)
virtual bool toggle(Window *wnd, const String &name, bool active)
virtual bool handleUserData(Message &msg, bool &stopLogic)
virtual void notifyGenericError(const String &text, const String &account=String::empty(), const String &contact=String::empty(), const char *title="Error")
virtual bool handleContactInfo(Message &msg, bool &stopLogic)
virtual bool enableCallActions(const String &id)
virtual bool select(Window *wnd, const String &name, const String &item, const String &text=String::empty())
virtual void showInCallNotification(ClientChannel *chan)
virtual void engineStart(Message &msg)
virtual bool callStart(NamedList ¶ms, Window *wnd=0, const String &cmd=String::empty())
virtual bool initializedClient()
virtual void updateChatRoomsContactList(bool load, ClientAccount *acc, MucRoom *room=0)
A Channel driver module.
Definition yatephone.h:2285
An UI time updater.
Definition yatecbase.h:5477
static unsigned int buildTimeString(String &dest, unsigned int secStart, unsigned int secNow, bool force=false)
static unsigned int buildTimeParam(NamedList &dest, const char *param, unsigned int secStart, unsigned int secNow, bool force=false)
virtual unsigned int buildTimeString(String &dest, unsigned int secNow, bool force=false)
virtual unsigned int update(unsigned int secNow, const String *table=0, Window *wnd=0, Window *skip=0, bool force=false)
DurationUpdate(ClientLogic *logic, bool owner, const char *id, const char *name, unsigned int start=Time::secNow())
Definition yatecbase.h:5489
void setLogic(ClientLogic *logic=0, bool owner=true)
virtual ~DurationUpdate()
virtual const String & toString() const
virtual unsigned int buildTimeParam(NamedList &dest, unsigned int secNow, bool force=false)
static bool exiting()
Definition yatengine.h:1684
A 32 bit length list of flags.
Definition yatecbase.h:65
bool changeFlagCheck(u_int32_t mask, bool ok)
Definition yatecbase.h:129
const Flags32 & operator=(int value)
Definition yatecbase.h:152
void change(u_int32_t value)
Definition yatecbase.h:140
void reset(u_int32_t mask)
Definition yatecbase.h:100
void changeFlag(u_int32_t mask, bool on)
Definition yatecbase.h:116
void set(u_int32_t mask)
Definition yatecbase.h:93
u_int32_t flags() const
Definition yatecbase.h:86
Flags32()
Definition yatecbase.h:70
u_int32_t flag(u_int32_t mask) const
Definition yatecbase.h:108
Flags32(u_int32_t value)
Definition yatecbase.h:78
A multiple message receiver.
Definition yatengine.h:806
A message container class.
Definition yatengine.h:380
void * userObject(const String &name) const
Definition yatengine.h:453
A MUC room member.
Definition yatecbase.h:5108
static const TokenDict s_affName[]
Definition yatecbase.h:5149
Affiliation
Definition yatecbase.h:5115
MucRoomMember(const char *id, const char *nick, const char *uri=0)
Definition yatecbase.h:5141
static const TokenDict s_roleName[]
Definition yatecbase.h:5154
Role
Definition yatecbase.h:5127
An account's MUC room contact.
Definition yatecbase.h:5172
virtual bool showChat(const String &id, bool visible, bool active=false)
void destroyChatWindow(const String &id=String::empty())
bool canBan(MucRoomMember *member) const
MucRoomMember * findMemberById(const String &id)
virtual void getChatHistory(const String &id, String &text, bool richText=false, const String &name="history")
MucRoom(ClientAccount *owner, const char *id, const char *name, const char *uri, const char *nick=0)
bool canChangeSubject() const
Definition yatecbase.h:5237
virtual void addChatHistory(const String &id, const String &what, NamedList *¶ms, const String &name="history")
MucRoomMember * findMember(const String &contact, const String &instance)
Message * buildJoin(bool join, bool history=true, unsigned int sNewer=0)
bool canChatPrivate() const
Definition yatecbase.h:5230
bool canKick(MucRoomMember *member) const
MucRoomMember * findMember(const String &nick)
virtual void updateChatWindow(const String &id, const NamedList ¶ms)
virtual void createChatWindow(const String &id, bool force=false, const char *name=0)
virtual bool removeResource(const String &nick, bool delChat=false)
virtual void getChatInput(const String &id, String &text, const String &name="message")
MucRoomMember & resource()
Definition yatecbase.h:5191
bool hasChat(const String &id)
bool available() const
Definition yatecbase.h:5214
bool canInvite() const
Definition yatecbase.h:5244
virtual void setChatHistory(const String &id, const String &text, bool richText=false, const String &name="history")
virtual ClientResource * findResource(const String &id, bool ref=false)
bool canChat() const
Definition yatecbase.h:5223
virtual bool insertResource(ClientResource *res)
Definition yatecbase.h:5446
bool ownMember(const String &item) const
Definition yatecbase.h:5207
Message * buildMucRoom(const char *oper)
Definition yatecbase.h:5266
virtual void flashChat(const String &id, bool on=true)
virtual ClientResource * status(bool ref=false)
Definition yatecbase.h:5293
virtual bool isChatActive(const String &id)
virtual void setChatProperty(const String &id, const String &name, const String &prop, const String &value)
virtual MucRoom * mucRoom()
Definition yatecbase.h:5285
String m_password
Definition yatecbase.h:5460
virtual void setChatInput(const String &id, const String &text=String::empty(), const String &name="message")
bool ownMember(MucRoomMember *item) const
Definition yatecbase.h:5199
virtual ClientResource * appendResource(const String &nick)
A named integer value.
Definition yatecbase.h:164
static void clearValue(ObjList &list, int val)
static int lookup(const ObjList &list, const String &name, int defVal=0)
Definition yatecbase.h:219
static const String & lookupName(const ObjList &list, int val, const String &defVal=String::empty())
Definition yatecbase.h:231
int value() const
Definition yatecbase.h:188
static void addToListUniqueName(ObjList &list, NamedInt *obj)
NamedInt(const char *name, int val=0)
Definition yatecbase.h:172
void setValue(int val)
Definition yatecbase.h:195
NamedInt(const NamedInt &other)
Definition yatecbase.h:180
A static user interface creator.
Definition yatecbase.h:939
bool canBuild(const String &type)
Definition yatecbase.h:958
static void * build(const String &type, const char *name, NamedList *params=0, const char *factory=0)
UIFactory(const char *name)
virtual void * create(const String &type, const char *name, NamedList *params=0)=0
An abstract user interface window.
Definition yatecbase.h:254
void init()
Definition yatecbase.h:600
virtual bool setProperty(const String &name, const String &item, const String &value)
Definition yatecbase.h:574
virtual void moveRel(int dx, int dy)=0
bool master() const
Definition yatecbase.h:700
virtual bool addOption(const String &name, const String &item, bool atStart=false, const String &text=String::empty())=0
virtual bool setUrgent(const String &name, bool urgent)=0
virtual bool addTableRow(const String &name, const String &item, const NamedList *data=0, bool atStart=false)
const String & context() const
Definition yatecbase.h:672
virtual void setOver(const Window *parent)=0
virtual bool buildMenu(const NamedList ¶ms)=0
bool visible() const
Definition yatecbase.h:679
virtual bool setImage(const String &name, const String &image, bool fit=false)=0
virtual bool setTableRow(const String &name, const String &item, const NamedList *data)
bool popup() const
Definition yatecbase.h:707
virtual bool setShow(const String &name, bool visible)=0
virtual void move(int x, int y)=0
virtual bool getSelect(const String &name, NamedList &items)=0
virtual bool delTableRow(const String &name, const String &item)
virtual bool getOptions(const String &name, NamedList *items)=0
virtual bool addLines(const String &name, const NamedList *lines, unsigned int max, bool atStart=false)
virtual bool updateTableRows(const String &name, const NamedList *data, bool atStart=false)
virtual bool updateTableRow(const String &name, const String &item, const NamedList *data=0, bool atStart=false)
virtual bool setText(const String &name, const String &text, bool richText=false)=0
const String & id() const
Definition yatecbase.h:658
virtual bool setBusy(const String &name, bool on)=0
virtual bool setFocus(const String &name, bool select=false)=0
static bool isValidParamPrefix(const String &prefix)
virtual bool setSelect(const String &name, const String &item)=0
virtual void size(int width, int height)=0
virtual bool setMultipleRows(const String &name, const NamedList &data, const String &prefix=String::empty())
virtual bool getProperty(const String &name, const String &item, String &value)
Definition yatecbase.h:584
virtual bool getCheck(const String &name, bool &checked)=0
virtual bool createDialog(const String &name, const String &title, const String &alias=String::empty(), const NamedList *params=0)=0
virtual bool delOption(const String &name, const String &item)=0
virtual bool canClose()
Definition yatecbase.h:651
virtual bool insertTableRow(const String &name, const String &item, const String &before, const NamedList *data=0)
virtual bool getSelect(const String &name, String &item)=0
virtual const String & toString() const
virtual bool hasOption(const String &name, const String &item)=0
virtual bool removeMenu(const NamedList ¶ms)=0
virtual bool related(const Window *wnd) const
virtual bool clearTable(const String &name)
virtual bool hasElement(const String &name)=0
virtual bool getText(const String &name, String &text, bool richText=false)=0
virtual bool setParams(const NamedList ¶ms)
void populate()
Definition yatecbase.h:590
virtual void context(const String &text)
void visible(bool yes)
Definition yatecbase.h:686
bool active() const
Definition yatecbase.h:693
virtual bool getTableRow(const String &name, const String &item, NamedList *data=0)
virtual bool setCheck(const String &name, bool checked)=0
virtual bool closeDialog(const String &name)=0
virtual bool setActive(const String &name, bool active)=0
Thread support class.
Definition yateclass.h:10192
static Thread * current()
A time holding class.
Definition yateclass.h:5764
static u_int32_t secNow()
Encapsulation for an URI.
Definition yateclass.h:8326
Definition yateclass.h:891