def publish(self, channel, resource, data, ts = None, source = None ):
    body = { 'data': data }
    if source:
      body['source'] = source
    
    if ts != None:
      body['ts'] = ts
    else:
      body['ts'] = round(time.time() * 1000)
    
    endpoint = ( __publishEndpoint__, channel, resource ) % "%s/%s/%s"
    response = self.__postData__( endpoint, json.dumps(body, separators=(',', ':')), True )
    return response;
dataset/ETHPy150Open beebotte/bbt_python/beebotte/__init__.py/BBT.publish/swapped operands of `%`