I am using PyCamera module of Raspberry Pi to capture an image and store as .jpg.
first encoding the image using base64.encodestring(). but while sending encoded string to PubNub server, I get error on my_publish_callback as
('ERROR: ', 'Expecting value: line 1 column 1 (char 0)')
 ('ERROR: ', JSONDecodeError('Expecting value: line 1 column 1 (char 0)',))
I have tried using base64.b64encode() but still get the same errors. I have tried the script in python 2 and 3;
def my_publish_callback(envelope, status):
    if not status.is_error():
       pass  # Message successfully published to specified channel.
    else:
       #print("recv: ", envelope)
       print("ERROR: ", status.error_data.information)
       print("ERROR: ", status.error_data.exception)
def publish(channel, msg):
    pubnub.publish().channel(channel).message(msg).async(my_publish_callback)
def captureAndSendImage():  
  camera.start_preview()
  time.sleep(2)
  camera.capture("/home/pi/Desktop/image.jpg")
  camera.stop_preview()
  with open("/home/pi/Desktop/image.jpg", "rb") as f:
        encoded = base64.encodestring(f.read())
        publish(myChannel, str(encoded))
I am not able to find or print full error traceback so that I can get some more clues about where the error is occurring. But it looks like PubNub is trying to parse the data in JSON, and its failing.
