Tengo un Python OSCclient que envía un json.dumps (diccionario) a un servidor OSCP5 en procesamiento (modo Java).

Lado de pitón:

'input_dict = {'text': 'Dies ist der erste Kommentar', 'cat': 'insinuation',   'category_counter': {'praise': 0, 'insinuation': 1, 'dissence': 0, 'lecture': 0, 'concession': 0}, 'is_locked': False}
data = json.dumps(input_dict)
client.send_message('/display_input', data)        

El mensaje se está enviando y recibiendo, pero parece haber un problema con la decodificación de los datos json en la función oscEvent. Lado de procesamiento:

void oscEvent(OscMessage m) {
  print("### received an osc message.");
  print(" addrpattern: "+m.addrPattern());
  println(" typetag: "+m.typetag());
  if (m.checkAddrPattern("/display_input") == true) {
      println("INCOMING :", m.arguments()[0]);
      JSONObject new_utt = loadJSONObject((String) m.arguments()[0]);

Procesamiento de impresiones:

recibió un mensaje OSC. addrpattern: / display_input typetag: s

ENTRANTE: {"text": "Dies ist der erste Kommentar", "cat": "disence", "category_counter": {"alabanza": 0, "insinuación": 0, "disidencia": 1, "conferencia": 0, "concesión": 0}, "is_locked": false}

El archivo "{" text ":" Dies ist der erste Kommentar "," cat ":" disence "," category_counter ": {" alabanza ": 0," insinuación ": 0," disidencia ": 1," conferencia " : 0, "concesión": 0}, "is_locked": false} "falta o es inaccesible, asegúrese de que la URL sea válida o que el archivo se haya agregado a su boceto y sea legible.

Mi pregunta: ¿hay alguna manera de enviar json.dumps a través de OSC a Processing donde puedo abrirlos como objetos JSON?

0
Mister Ieuns 20 ene. 2021 a las 15:00

1 respuesta

La mejor respuesta

Según la documentación, loadJSONObject interpreta su argumento como un nombre de archivo que apunta a un archivo JSON.

Para analizar JSON de una cadena, use la función parseJSONObject en su lugar.

2
user202729 20 ene. 2021 a las 13:22