78 |
78 |
79 @param fx remote function name to execute (str) |
79 @param fx remote function name to execute (str) |
80 @param fn filename for identification (str) |
80 @param fn filename for identification (str) |
81 @param data return value(s) (any basic datatype) |
81 @param data return value(s) (any basic datatype) |
82 """ |
82 """ |
|
83 if not isinstance(data, ( |
|
84 dict, list, tuple, str, int, float, bool, type(None), |
|
85 )): |
|
86 # handle sending of objects of unsupported types |
|
87 data = str(data) |
|
88 |
83 packedData = json.dumps([fx, fn, data]) |
89 packedData = json.dumps([fx, fn, data]) |
84 if sys.version_info[0] >= 3: |
90 if sys.version_info[0] >= 3: |
85 packedData = bytes(packedData, 'utf-8') |
91 packedData = bytes(packedData, 'utf-8') |
86 header = struct.pack( |
92 header = struct.pack( |
87 b'!II', len(packedData), adler32(packedData) & 0xffffffff) |
93 b'!II', len(packedData), adler32(packedData) & 0xffffffff) |