Self Hosted Server - Buckets are not working

I went through the install, all seems to be working, SSL, configuration load etc., successfully get the realtime data from device. But what is not working are Buckets. When I set the bucket parameters everything looks good, I can save it and then see it in buckets list, but at the end nothing is recorded in the bucket. Looking into server log file I found this at the timestamp of saving bucket config:

2017-01-30T13:35:49.805874 info [Thing Connection] [Erebus1@provocado] Received Keep Alive!
2017-01-30T13:36:39.445288 error [Server Manager] Thread running error: code FailedToParse: FailedToParse: Expecting '{': offset:0 of:25.4271
2017-01-30T13:36:44.956814 error [Server Manager] Thread running error: code FailedToParse: FailedToParse: Expecting '{': offset:0 of:25.417
2017-01-30T13:36:49.921890 info [Thing Connection] [Erebus1@provocado] Received Keep Alive!

Is there anything I can try in order to make it work? I also checked mongdb and everything is ok, there is a database, there is even table bucket_data, apparently table is empty…

Thank you!

What kind of information is being stored in the bucket? Can you provide me the resource example? it seems that Mongodb is complaining about the data format… Will try to test that in the meanwhile…

Yeah, after some digging it seems to me too. WS works fine, just this runs into problems.

char state[32] = "None";
double temperature = 0;


void setup() {
  Wire.begin(D9,D10); // jede OK

  thing.add_wifi(SSID, SSID_PASSWORD);
  thing.handle();

  thing["temperature"] >> [](pson& out){
      out = temperature;
  };

  thing["reset"] << [](pson& reset){
      if (reset) {
          ESP.restart();
      }
  };

  thing["D1"] << [](pson& value){
      analogWrite(D1, value);
  };
  thing["D2"] << [](pson& value){
      analogWrite(D2, value);
  };
  
  thing.handle();

  
  bmp.setOversampling(4);
  }

Interestingly it worked fine on your cloud server…

Thank you.

Hi @Tomas, I have fixed the problem and a new server version (1.1.10) will be distributed from snap system. It was working on the cloud server since it relies on DynamoDB instead of MongoDB… so the storing process differs from one solution to the other. It should work in your current version if you set the value inside a key, like the following code (but it would not be necessary in the 1.1.10 version):

  thing["temperature"] >> [](pson& out){
      out["temp"] = temperature;
  };

Bests.

The new server version must be available right now for download. Let me know if it works now! :wink:

Hi @alvarolb , I finally downloaded, installed and restarted everything and it works. Don’t know if I still need DynamoDB on my server or it relies on MongoDB?? But buckets are working perfectly. Thanks for your update!

Hi @Tomas, DynamoDB is not used on the local deploy, it is just for the cloud :wink: You are using MongoDB for storing your data. Nice it works now!

Bests.