BuddyListManager is not active!

Post here your questions about the Unity / .Net / Mono / Windows 8 / Windows Phone 8 API for SFS2X

Moderators: Lapo, Bax

silsin
Posts: 5
Joined: 02 Sep 2016, 06:36

BuddyListManager is not active!

Postby silsin » 13 Sep 2016, 21:07

SmartFoxServer 2X v2.9
client Api Version: 1.6.6
platform : unity3d
To add friends in smartfox, I do the following
1-in admin panel ---> ZoneConfigurator --->[myzone] ---> BuddyList tab --- > activate = on
2-restart smartfox
3-in c# :

Code: Select all

 SmartFox sfs;
    private string currentState = "Available";
    private static string BUDDYVAR_AGE = SFSBuddyVariable.OFFLINE_PREFIX + "age";
    private static string BUDDYVAR_MOOD = "mood";
 
    void Awake()
    {
        sfs = WareConnection.PaperWare.SmartFoxConnection.Connection;
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_LIST_INIT, OnBuddyListInit);
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_ERROR, OnBuddyError);
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_ONLINE_STATE_UPDATE, OnBuddyListUpdate);
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_VARIABLES_UPDATE, OnBuddyListUpdate);
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_ADD, OnBuddyListUpdate);
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_REMOVE, OnBuddyListUpdate);
        sfs.AddEventListener(SFSBuddyEvent.BUDDY_BLOCK, OnBuddyListUpdate);
 
    }

    void Start()
    {
       
        OnAddBuddyClick("hamed");
        sfs.Send(new Sfs2X.Requests.Buddylist.InitBuddyListRequest());

    }
    public void OnOnlineToggleChange(bool isChecked)
    {
        sfs.Send(new Sfs2X.Requests.Buddylist.GoOnlineRequest(isChecked));

    }

    public void OnAddBuddyClick(string buddyInput)
    {
         
            sfs.Send(new Sfs2X.Requests.Buddylist.AddBuddyRequest(buddyInput));
         
    }


    public void OnRemoveBuddyClick(string buddyName)
    {
        sfs.Send(new Sfs2X.Requests.Buddylist.RemoveBuddyRequest(buddyName));
    }


    private void OnBuddyError(BaseEvent evt)
    {
        Debug.LogError("The following error occurred in the buddy list system: " + (string)evt.Params["errorMessage"]);
    }


    private void OnBuddyListInit(BaseEvent evt)
    {
        // Populate list of buddies
        OnBuddyListUpdate(evt);

        // Set current user details as buddy

        // Nick
        string NickName = (sfs.BuddyManager.MyNickName != null ? sfs.BuddyManager.MyNickName : "");

        // States
        foreach (string state in sfs.BuddyManager.BuddyStates)
        {
            string stateValue = state;
            string StateGo = stateValue;

 
        }

        // Online
         bool OnlineState = sfs.BuddyManager.MyOnlineState;

     }


    private void OnBuddyListUpdate(BaseEvent evt)
    {
         

        // Recreate list content
        foreach (Buddy buddy in sfs.BuddyManager.BuddyList)
        {
           
 
 
                if (!buddy.IsOnline)
                {
               //online / offline
                }
                else
                {
                    string state = buddy.State;

                    if (state == "Available")
                {

                }
                     else if (state == "Away")
                {

                }
                     else if (state == "Occupied")
                {

                }
                       
                }
           

         

         
        }
    }

    void Update()
    {
        if (sfs != null)
        {
            sfs.ProcessEvents();
        }
    }






but every time admin tool log show this error :

Code: Select all

java.lang.IllegalStateException: BuddyList operation failure. BuddyListManager is not active. Zone: { Zone: PaperArmy }, Sender: ( User Name: Hamed, Id: 1, Priv: 0, Sess: 127.0.0.1:20253 )
   com.smartfoxserver.v2.api.SFSBuddyApi.checkBuddyManagerIsActive(SFSBuddyApi.java:474)
   com.smartfoxserver.v2.api.SFSBuddyApi.initBuddyList(SFSBuddyApi.java:74)
   com.smartfoxserver.v2.controllers.system.buddylist.InitBuddyList.execute(InitBuddyList.java:32)
   com.smartfoxserver.v2.controllers.v290.SystemReqController.processRequest(SystemReqController.java:157)
   com.smartfoxserver.v2.controllers.v290.SystemReqController.enqueueRequest(SystemReqController.java:114)
   com.smartfoxserver.bitswarm.io.protocols.AbstractProtocolCodec.dispatchRequestToController(AbstractProtocolCodec.java:39)
   com.smartfoxserver.v2.protocol.SFSProtocolCodec.dispatchRequest(SFSProtocolCodec.java:125)
   com.smartfoxserver.v2.protocol.SFSProtocolCodec.onPacketRead(SFSProtocolCodec.java:90)
   com.smartfoxserver.v2.protocol.binary.BinaryIoHandler$1.run(BinaryIoHandler.java:525)
   java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
   java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   java.lang.Thread.run(Unknown Source)



tnx
User avatar
Lapo
Site Admin
Posts: 23008
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: BuddyListManager is not active!

Postby Lapo » 14 Sep 2016, 08:00

Hi,
the error is related to a Zone called "PaperArmy", however I am not able to see which Zone does your client code logs to.

Are you sure it is the same?

thanks
Lapo
--
gotoAndPlay()
...addicted to flash games

Return to “SFS2X C# API”

Who is online

Users browsing this forum: No registered users and 21 guests